What ETICS is

Download Report

Transcript What ETICS is

INFSO-RI-223782
Virtual Node bootstrapper (VNB)
An On-Demand Dynamic Virtualization Manager
Øyvind Valen-Sendstad
CERN – IT/GD, ETICS
[email protected]
Contents
•
•
•
•
•
•
•
INFSO-RI-223782
Brief introduction to ETICS
ETICS build infrastructure
Improving the build/test process
The Virtual Node Bootstrapper
Achievements
Status, Lessons learned and Further work
Summary
2
What ETICS is
INFSO-RI-223782
• It’s a software engineering management system
• It’s a build and test infrastructure
• It provides tools and resources to configure, manage
and analyse build and test runs
• It provides a common interface to diverse projects to
facilitate
knowledge
sharing
and
operations
management
• It has an open repository of configuration metadata,
packages, reports. The goal is to share information, but
also to reliably store and preserve information
• It has a plugin-based architecture and APIs to allow
integrating ETICS into existing processes and
extending it with custom actions
• It’s multi-platform and independent from any specific
build or test tool
3
Architecture
INFSO-RI-223782
ETICS is not ‘just’ a build system
4
INFSO-RI-223782
ETICS build infrastructure - static platforms
Problem 1:
The composition of the pool is fixed.
If we have 20 SL5 nodes all busy
and a new request for SL5 arrives, it
is queued even if many nodes are
available with other platforms
Virtual static nodes
X5
SLC4
X5
Debian
X5
SL5
X5
Ubuntu 7
New SL5 Job
X5
X5
SL5 / 64 Mac OSX
Physical node
X5
X5
SL5 / 32 SL5 / 64
INFSO-RI-223782
ETICS build infrastructure - static platforms
Problem 2:
If a platform is very rarely used, but
we want to make it available, one or
more nodes will do nothing most of
the time
Virtual static nodes
X5
SLC4
X5
Debian
X5
SL5
X5
Ubuntu 7
New RH7 Job
X5
X5
SL5 / 64 Mac OSX
Physical node
X5
SL5 / 32
X5
RH7
The proposed solution: dynamic virtual platforms
INFSO-RI-223782
X5
X5
Available Available
VM
repository
New job
X5
X5
Available Available
Virtual machine
X5
X5
Available Available
X
Physical machine
X5
X5
Available Available
The bootstrap process
1.
2.
3.
4.
5.
6.
7.
8.
INFSO-RI-223782
User submits a build/test for a specific platform
Request arrives to VNB
VNB determines platform and hypervisor support
Downloads a suitable VM from repository (or local cache)
Deploys the VM
Executes job
Returns results
Cleans up
8
Deploying the bootstrapper
INFSO-RI-223782
Deploying the bootstrapper
INFSO-RI-223782
INFSO-RI-223782
INFSO-RI-223782
Deploying the bootstrapper
INFSO-RI-223782
Deploying the virtual machine
INFSO-RI-223782
Deploying the virtual machine
INFSO-RI-223782
INFSO-RI-223782
Deploying multiple virtual machines on the same
node
INFSO-RI-223782
Deploying multiple virtual machines on the same
node
INFSO-RI-223782
Deploying multiple virtual machines on the same
node
Achievements
INFSO-RI-223782
•
•
•
•
•
Perform platform deployment on demand
Increase availability
Increase capability
Provide reproducible environments
Reduce maintenance
• New releases
• Upgrades
• Security patches
• Accommodate for specific software dependencies
• Offer privileged access (root access to the VM, not the host)
• Enable post build analysis (VM snapshot can be saved with
results)
• Virtual machine image customization (users can provide
their own)
19
Status
INFSO-RI-223782
Working
• Bootstrap process, tested on VMware and KVM
Remaining
• Testing on Xen
• Support for NT-based operating systems
• Caching VM images locally
20
Lessons learned
INFSO-RI-223782
Privileges
• The bootstrapper runs in the user-space and need privileges
to use Xen and Vmware
Compatibility
• The kernel in a virtual machine created in VMware is not
necessarily able to run in a Xen or KVM environment
21
Further work
INFSO-RI-223782
• Deploy virtual machine image into a folder and chroot in
order to run natively on a worker node
• Update VNB on VM during startup
• Support for NT-based operating systems
Open issues
INFSO-RI-223782
Reproducibility
• Different implementations of the virtual machine hardware
can cause different behaviour of a virtual machine
Firewall
• Ephemeral port range can be blocked by strict firewalls
23
Summary
• The VNB gives
• Better service availability
• Better resource utilization
• The VNB has
• Generic design
• Emulates when no hypervisors are present
• The VNB allows
• Running multiple bootstrappers on a single host
INFSO-RI-223782