In his article, Mak King presents the benefits of using VMware as a virtualization solution in order to create a better development environment that proves to be ecologically greener if the process is taken beyond server consolidation.
Read: Beyond Consolidation: Building a Better Development Environment with VMware
Mak describes how he transformed their lab’s systems configuration by introducing VMware and resulting in:
- The lab is much easier to manage. Going from 13 disparate devices to 3 identical devices has made it much simpler and easier. Getting rid of KVMs, LCDs, small UPSs and all the cables that go along with them has allowed me to shrink the space used in the lab by 85%.
- Flexibility is greatly enhanced. For example, we were able to determine the optimum amount of resources (both RAM and number of processors) for particular database queries by adjusting the number of resources allocated to a VM, and repeating test jobs until we hit a point of diminishing return. Doing that with physical hardware would have been a nightmare not only with hardware cost but also with time.
- Network throughput has increased. Previously, the network throughput of each device was limited to the number of nic ports it contained - in most cases just a single one. Now that each ESX host contains multiple nics, each with several ports, these are teamed for doubling the available bandwidth, as well as providing network redundancy in case of nic failure. Due to this configuration, I have also seen a reduction in the time it takes for backups.
- The use of HA, DRS and VMotion has greatly improved our redundancy and uptime.
Community comments
Just a huge problem with all this
by Evgeny Zislis,
Re: Just a huge problem with all this
by nx 2x,
Performance Testing
by Eric Jain,
Re: Performance Testing
by Mak King,
Just a huge problem with all this
by Evgeny Zislis,
Your message is awaiting moderation. Thank you for participating in the discussion.
Since most developers need some kind of GUI to use their development tools, it's highly important to have session mobility and persistance. Using vmware for "desktops" is nice, but it's just slow using these "desktops" via existing remote-gui tools, like terminal services or vnc. It's even worse in the UNIX world, where remote-X terminals exist for many years now - but session persistance is really a dream for the moment. Only alternative is to run a full-blown "server" on the vmware desktop, be it windows with terminal services or unix with an X server. There are no slim solutions to have the developer's laptop resources used as much as possible, with the actual development tools running on the remote servers inside a persistent session that does not take gigabytes of memory (other than the development tool itself).
Performance Testing
by Eric Jain,
Your message is awaiting moderation. Thank you for participating in the discussion.
One thing that's not uncommon in development setups is the need to do performance tests (e.g. to ensure that recent changes in the code have improved -- or at least not decreased -- performance). If the performance tests are run on a VM, how certain can we be that a sudden decrease in performance isn't simply due to activity in another VM on the same physical machine?
Re: Just a huge problem with all this
by nx 2x,
Your message is awaiting moderation. Thank you for participating in the discussion.
Well besides the fact that the VMware VIC client supports Unity-like features, there's at least ten other ways to solve your session persistence issues. Check out VMware Fusion (if you are a Mac guy -- I'm not) or Workstation's use of "Unity" aka View. VMware's new VDI (Virtual Desktop Infrastructure) is called View, actually.
Before VMware, I would use FreeNX (mostly because it's free and supports Linux), but I've also used 2X (a commercial Windows-compatible alternative). I have never used the full version of NX, but I like FreeNX so much that I would pay for it if I had the funding and reason.
If you have Windows Server 2K/2K3/2K8 you can also use the mmc with the Remote Desktops snap-in. This will allow for session persistence in a similar way that RDP via Terminal Services Manager "attach session" option (ghetto IMO) would allow. You can save mmc panels (e.g. to the Desktop) once you configure your infrastructure to it.
For a laptop solution, check out Safebook LVO, which is a Lenovo Thinkpad thin client.
Also, none of this is slow when you have six Gigabit Ethernet interfaces per server and the ability to balance resources across multiple cores and memory banks.
So, yes, VNC and the X-Window environment are bad for session persistence. Fortunately, they were replaced by NX/FreeNX/2X and/or a simple Remote Desktops mmc snap-in.
Re: Performance Testing
by Mak King,
Your message is awaiting moderation. Thank you for participating in the discussion.
Thanks for the question Eric. I have been experimenting with some various monitoring tools to compare the performance of the host with the actual VMs running on the host. You can do some of this within the VIC by selecting different counters. SolarWinds also has a free tool called VM Monitor that displays proc, mem and network activity not only for the host, but all VMs running on it.