A talk at BarCamp Cameroon 2010 by Jeremy Brown (Limbe Labs Solutions) and Patrick Azogni (Ringo) about the use of virtualisation and it's benefits to Ringo.
How to Troubleshoot Apps for the Modern Connected Worker
Virtualisation at Ringo
1. Virtualisation at Ringo
Jeremy Brown - Limbe Labs, jeremy@limbelabs.com &
Patrick Azogni - Ringo, p.azogni@ringo-group.com
2. A loose definition
“Virtualisation is a framework or methodology of
dividing the resources of a computer into
multiple execution environments, by applying one
or more concepts or technologies such as
hardware and software partitioning, time-
sharing, partial or complete machine simulation,
emulation, quality of service, and many others.”
3. The old model
• A server for every
application
• Software and hardware
are tightly coupled
• Under utilised resources
introduce real cost into
the infrastructure
4. The new model
• Physical hardware is
abstracted by a virtualisation
layer, or hypervisor
• Manage OS and application
as a single unit by
encapsulating them into
virtual machines
• Separate OS and hardware
and break hardware
dependancies
• Optimise utilisation levels
5. Increased hardware
utilisation
• Before virtualisation • After virtualisation
6. Under utilisation of
resources
• Most organisations over-
provision
• Multiple processors in
each server
• Memory requirements
over-estimated
• Aim to drive up CPU Sample customer data – 120
utilisation servers monitored
7. Virtual Infrastructure
• Virtual infrastructure brings
uniformity to the data centre
• Dynamically map computing
resources to the business
• Lower IT costs through increased
efficiency, flexibility and
responsiveness
• Provision new services and change
the amount of resources dedicated
to a software service
• Treat your data centre as a single
pool of processing, storage and
networking power
9. Production Server
Consolidation
• Consolidate workloads
• Infrastructure applications
• Low-utilization workloads
• Branch office and datacenter workloads
• Efficient use of available hardware resources
• Re-host legacy OS and applications
• NT4 guest applications on virtual platform
• Run on current hardware and current OS
• No application updates required
• Partition resources
• Limit CPU resource per VM
10. Business continuity
management
• Disaster Recovery
• Maintain DR systems as virtual machines
• Eliminate traditional problems associated with bare metal
restores
• OS and application patching
• Deploy and test patches off-production, and swap
• Eliminate scheduled downtime
• Isolation / sandboxing
• Isolate OS environments for untrusted applications
• Prevent malicious code from affecting others
11. Dynamic datacenter
• Workload mobility
• Package up entire OS environment and
move to other location
• Flexible deployment of workloads
12. Development and test
• Rapid provisioning of virtual machines
• Create arbitrary test scenarios
• Wider test range for niche scenarios
13. Virtualisation use in
Ringo
• Currently using virtualisation for:
• Server consolidation
• Seeing a typical 60% decrease in resources used - we
can go further but need to install more RAM
• Easier management of servers - both physical and virtual
• Dynamic Datacenter
• Can live migrate servers between physical hosts
• Can provision servers much faster through the use of
templates
14. Before Virtualisation
• Before the Virtualisation Project:
• Ringo was using various versions of VMWare on single
servers, but mainly all servers were running unvirtualised. This
met needs but there was no pooling of servers, it wasn’t
possible to do live migration, templating and snapshotting of
VMs.
• VMs were stacked on physical servers but it wasn’t possible to
do maintenance on the physical servers without stopping the
VMs.
• This meant only a small part of the benefits of virtualisation
was realised - there was still a very high management
overhead.
15. After Full Virtualisation
• After the project:
• Changed to Citrix XenServer (free). Feature advantages
over VMWare (free) make it a compelling choice for
those on a budget. Performance advantages and a better
licensing model (per server rather than per CPU)
• Able to manage VMs in pools (production, hosting and
development)
• Live Migration - physical servers can be maintained
without shutting down VMs.
• Templates/Snapshotting - reduced management overhead.
16. Lessons learned
• It’s not easy to migrate physical to virtual (P2V) or virtual to virtual (V2V), there
are some gotchas you need to look out for.
• Network cards and network settings.
• Drivers
• Need to test and plan carefully
• Shared Storage - SAN critical to smooth operation of VMs.
• Test small pools of non-critical servers before migrating your critical servers -
performance test network, disk and application performance of old server vs VM,
when it all works then do the critical services.
• Snapshots are not backups - still need to have a good deployment framework and
methodology for testing before deployment.
• You are only limited by the memory of your physical machines - CPU usage is
always low, so the more physical memory you have the more VMs you can run -
unfortunately memory ballooning is a paid feature with XenServer.
17. Still a long way to go...
• Improvement is never ending
• Build out VMs in development pool -
automatic migration to production.
• Better management of VMs - improve
templates
•