200 likes | 339 Views
Virtualisation for Developers. What, Why, Where?. Liam Westley. liam.westley@tigernews.co.uk http://geekswithblogs.net/twickers. Who ?. Liam Westley; owner of Tiger Computer Services Ltd Broadcast Television and Healthcare solutions
E N D
Virtualisation for Developers What, Why, Where? Liam Westley liam.westley@tigernews.co.uk http://geekswithblogs.net/twickers
Who ? • Liam Westley; owner of Tiger Computer Services Ltd • Broadcast Television and Healthcare solutions • A user of virtual machines ever since Connectix was bought by Microsoft and Virtual PC 2004 was included in the MSDN subscription • Doesn’t believe virtualisation contains the letter ‘z’
What? • In general terms, a virtual machine is software that emulates another computer, including all the basic hardware components • Some even emulate the actual CPU • Can either run as a standalone program (Virtual PC, VMWare Player, Virtual Box) or a set of services (Virtual Server) or as the base host o/s (VMWare ESX, Hyper-V)
What? – some jargon • ‘Host’ operating system • ‘Guest’ operating system • Virtual Machine (‘VM’) • ‘Additions’ software
What? – ‘Free’ tools • Virtual PC 2007 (XP, Vista) • Virtual Server 2005 R2 (Server 2003) • Hyper-V (Server 2008, x64 CPU with hardware virtualisation support) • VMWare Player 2.5 (lots, see notes) • Virtual Box 2.0.2 (XP, Vista, Server 2003) • 64-bit guest support; Hyper-V, VMWare Player, Virtual Box
Why? – for developers • Reduce hardware dependencies • Creation of flexible development environments • Support legacy environments • The ultimate undo tool
Where? – ‘Clean’ images • Clean operating systems with minimal service packs and selected Windows Updates • Test your setup programs and/or installation scripts • Great for system and user guides, including screen captures
Where? – Legacy applications • Legacy operating systems; Win 9x, NT4, Windows 2000 • Legacy service packs; XP SP1 • Legacy languages; VB6, VS2003! • Browser compatibility; testing against IE6, IE7, IE8 beta 2 • Windows Media player; older versions, older codecs
Where? – Hardware consolidation • Multiple build servers on the same physical hardware • Development servers to both test and provide demo software for agile development • Reduced hardware requirement for IIS Network Load Balancing and SQL Server mirroring
Where? – ... and much more. • Internationalisation – ability to test on multiple locales • Breaking the 3Gb memory barrier by using a 64-bit host • Scale and test distributed processing (i.e. Selenium Grid) • Safer testing of beta/RC software • Replicate client configurations
Tips and tricks 1 • Keep your host and guest on different discs • Install additions • BIOS – make sure you enable hardware virtualisation • Specify large partition sizes, they auto grow anyway • Disable hibernation - it’s a big file
Tips and tricks 2 • Use NewSID (sysinternals) or SysPrep (Microsoft) when duplicating o/s images • Disable screen savers, no really! • Multi monitors, use remote connection with /span setting • VMWare - http://easyvmx.com/ to create VM files for VM player
Final thoughts and gotchas • Don’t abuse VMs, i.e. don’t create entire development PC images to avoid configuration scripts • You can’t run competing virtual systems simultaneously ... • ... that includes the Smart Device (PocketPC) emulator • Hyper-V server just released
Resources • www.microsoft.com/virtualpc www.microsoft.com/virtualserver www.microsoft.com/hyperv • www.vmware.com/player • www.easyvmx.com • www.virtualbox.org • blogs.msdn.com/Virtual_PC_Guy/ • www.mvug.co.uk
Virtualisation for Developers What, Why, Where? Liam Westley liam.westley@tigernews.co.uk http://geekswithblogs.net/twickers