Testing OpenSolaris made easy in a heterogeneous world using Virtual Box
By damienf on May 05, 2009
Testing OpenSolaris in a heterogeneous world using Virtual Box
Solaris and OpenSolaris have very good reputations for being stable, well tested platforms while also being full of innovation like dtrace, power aware dispatcher, ZFS, Cross Bow etc.. In this environment test coverage is a moving target, new features, new uses, new platforms all make it necessary for teams involved in testing to adapt and innovate to cope with the ever increasing workload. Running to stand still.
The PerfQE team provides Performance QE coverage for most of Sun's software and hardware assets, producing 40,000+ performance metric a month, automated regression isolation to the putback ( or to put it another way when we log a bug in a Solaris biweekly build which could have hundreds of separate changes/putbacks we have automation that will automatically the engineer that caused the regression and reassign it to him/her )
We have 1400+ system across the globe all run at 100% 24\*7 and no dedicated lab staff in Dublin where most of our systems are located you can get the idea that we don't have the luxury of putting up with mis behaving tests that require us to kick start. One pain point for us has been a 60 Desktop Windows PC configuration placing stress on a Solaris server via in kernel CIFS and Samba. Between test run we reboot the entire configuration but 1 in 8 to 10 reboots one of those Wintel PCs would hang requiring, requiring a manual reboot. In the past we've added IP power switches to reboot offending systems hard after timeouts. But frankly they cost and I have enough cables.
So we just finished replacing the 60 Windows 2000 with a v40z ( Quad Core Opteron ) running OpenSolaris and 60 Virtual Box Windows instances. We've gone through a detailed review to ensure we are producing the same ( actually it is a higher load ) on the Solaris CIFS server and we're seeing the same load pattern on the system under test but no hangs so far.
So what have we gained from this ? What are the advantages ?
Space savings of over 95% ( they were desktop PC connected to a KVM )
Power savings of 80%
Capital saving on hardware 60 desktops vs one server are pretty large. ( I will not put a % on it as it varies too widely )
Test hangs reduced by 100% ( making the team happier ), and getting more from our capital.
We'll now be testing more versions of Windows as the overhead in managing the virtual images is so low.
We can use dtrace to profile the load Windows sends to our server more easily.
The v40z is easier to manage remotely and hardware problems are handled by FMA making life easier
There nothing here to stop anyone test/QA/QE group implement something similar and with saving as significant as we are seeing it really is worth the time.