One of the changes that we’ve implemented during the summer of 2012 was to install a VMWare virtual server framework, which allows the district to provide network services much more efficiently and cost-effectively. While virtual server configurations can be enormous, ours is a relatively small configuration that includes a Storage Area Network (SAN, the top device in the photo at right) and two HP servers (the two devices in the bottom of the photo). If the district needs ten different servers to provide ten different services (i.e., web filtering, email, file storage, directory server, Moodle), rather than buying and maintaining ten separate machines, all of the machines are created virtually on these two powerful servers. The machines use storage space from the SAN, to which both physical servers are connected, so that the system will operate even if one of the physical servers fails.
The technology behind this system is complex and fascinating, but the base premise is that most servers are only busy some of the time. Here’s a simple example: if we purchase a server with a 3GHz processor and 8GB of RAM to provide software updates to district computers, it would spend most of the time using only 5-10% of its processor and memory capacity, since computers only need updates intermittently. Let’s say, though, that a major OSX update is released and everybody tries to get it on the same day. In that instance, the server would likely be overutilized. Each of the physical servers in our VMWare configuration is far more powerful, with multiple fast processors and 96GB of RAM each. While our hypothetical update server is taking it easy and not using much of the physical server’s resources, those resources would be made available for other machines – an email or web filter, directory server, DNS or DHCP servers, file server, web server, application server, for instance – that do require more resources. When the server load increases dramatically during the operating system update, more of the physical server’s resources would be allocated to the virtual server, allowing it to perform more effectively. Further, since the virtual servers reside on a storage device that is separate from the two physical servers, one of the physical servers could fail catastrophically and all of our servers would continue to operate, albeit at a somewhat lower performance level, until we could fix the failed server.
With these performance and reliability benefits, it’s exciting to know that the costs of operating virtual servers, compared to equivalent physical servers, are often far lower. Currently the district utilizes 17 virtual servers, well below our system capacity, running on a system that cost around $30,000 in total. The cost of the physical servers to provide the same services would easily exceed $60,000, nearing $100,000.