SDN Journal Authors: Liz McMillan, Yeshim Deniz, Elizabeth White, Pat Romanski, TJ Randall

Related Topics: Containers Expo Blog, Microservices Expo, Microsoft Cloud, Open Source Cloud, @CloudExpo, SDN Journal

Containers Expo Blog: Article

Virtualization – The Easy Way

Virtualization is all about making the most efficient usage of your infrastructure while allowing for maximum flexibility

We all know that our computer systems are underutilized. Most new desktops come with far more storage than is going to be used (or, to be more exact - should be used given file servers). Processors desktops and servers are busy only 20% of the time, and we always buy more memory than we need just in case. We are left with spending large amounts of capital for hardware that will sit idle most of the time.

The solution is Virtualization - one of the latest buzzword floating around Information Technology. It seems that we have been talking about virtualization for a while now, but what does it actually mean and how do I get there? The key thing to know is that virtualization is all about making the most efficient usage of your infrastructure while allowing for maximum flexibility.

As in all things, we need to be clear on our terms - what is virtualization? In practice, "virtualization" covers many different but related concepts:

  • Server Virtualization. Taking several single purpose servers and having them all run as separate "virtual" servers on the same or set of physical servers
  • Network Virtualization. Virtualizing your network infrastructures so that single pipes (single pieces of copper or fiber) carry many different virtual Local Area Networks (VLANs) and/or different types of traffic (where data networks and storage networks are combined on the same physical pipe)
  • Storage Virtualization. Virtualizing your storage by the use of storage servers. Storage is then divided up and given to the physical servers - where each server then thinks it has its own set of disk drives
  • Desktop Virtualization. Moving desktop processing to central servers (which may or may not themselves be virtualized) and each user is given a virtual desktop

For the purposes of this article, we will focus on Server Virtualization. The other types of virtualization are sufficiently complex as to require their own articles.

At a high level, server virtualization can be accomplished using some very basic steps:

  • Inventory your existing servers - how many are there? For the sake of our examples, let's assume 20 servers today.
  • Compare the peak processor usage of all 20 servers. If you have good management software, it should be able stack all 20 servers' processing times together so that you see where your peak usage is. For our example, let's say we determine that we need 8 CPUs at peak processing time and that the existing servers were all dual core systems - for a total of 40 CPUs.
  • Compare the peak memory usage of all 20 servers. If you have good management software, it should be able stack all 20 servers' memory usage together so that you see where your peak usage is. For our example, let's say we determine that we need 32 GBytes at peak processing time and that current systems had over 80 GBytes in them today.
  • Compare the peak network usage of all 20 servers. If you have good management software, it should be able stack all 20 servers' network usage together so that you see where your peak usage is. For our example, let's say we determine that we need 1 ½ Gigabits/sec at peak network transfer (two network connections). Today we are using 20 network connections for the main traffic, plus another 20 for the management interface.
  • Determine how much actual disk space is being used. For our example, let's say we determine that 7 Terabytes are needed and that the systems have a total of 15 Terabytes worth of storage.

So we know that we using at peak 7 Terabytes of disk space, 32 GBytes of memory, and eight processors - how does that help us? Well, since most sites are achieving between 10 to 20 virtual servers to a physical server - we know that we should be able to reduce our datacenter from 20 servers to two servers. If each server had six CPU cores, 32 Gbytes of memory, and connected to a shared 10 Terabyte storage system, we would meet all of our current needs plus allow for reasonable growth.

I said before that "virtualization is all about making the most efficient usage of your infrastructure while allowing for maximum flexibility." Let's see how well we did.

  • We reduced our server count from 20 servers to two servers. This means that we are no longer trying to power 20 servers, trying to cool 20 servers, trying to cable 20 servers, etc.
  • We reduced the number of CPU cores from 40 to 12. CPUs are expensive - and we just saved a lot of money.
  • We reduced the amount of memory purchased from 80 Gbytes to 64 Gbytes.
  • We reduced the amount of disk space purchased from 15 Terabytes to 7 Terabytes.
  • We reduced the number of network connections from 40 connections (almost its own switch!) to four connections. I should comment that most servers use two network connections to allow for redundancy in case of a network failure - so we went from 60 connections to six.
  • We set up an environment that can accommodate a 50% increase in CPU requirements above today's usage without requiring new servers and migrating applications to new servers.
  • We set up an environment that can accommodate additional memory.
  • We set up an environment that can accommodate 40% increase in storage requirements - without requiring disks to be swapped out when more space is needed.

We were able to utilize server virtualization to reduce our operating costs, maintenance costs, and cooling costs. We were able to utilize server virtualization to create a more nimble architecture that can respond to changes in the business. We successfully created an infrastructure that was effectively utilized and gave us maximum flexibility.

Before we finish, let me give a final message about Desktop Virtualization. Desktop Virtualization can result in significant cost savings in both operating and capital budgets. Imagine the case where a company has 1,000 users. Best practice involves replacing desktops every three years - or 333 desktops a year. At a $1,000 per desktop (adjust up or down based on your company's standard desktop) - that is $333,000 in new PCs every year. At one desktop engineer per each 150 desktops - that is seven desktop engineers. Plus one engineer to just handle the upgrades. Desktop Virtualization would reduce the number of engineers to about two (representing an operating savings of close to $600,000/year) and reduce the capital expenditures to about $50,000. Do you know of any companies that would like to save close to a $1,000,000/year?

More Stories By Dean Nedelman

Dean Nedelman is Director of Professional Services at ASi Networks, a network and voice services firm in City of Industry, Calif. In this role, he supports our major accounts, and oversees the implementation of advanced Cisco solutions and services. He has over 25 years of experience in technical and executive level technology roles, primarily in secure high performance computer environments across multiple industries and sectors. Dean's background includes security, high availability, telephony, advanced network, wide area application services, and storage area networks.

Comments (0)

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.

CloudEXPO Stories
Provide an overview of the capabilities of Azure Stack allowing you or your customers to adopt truly consistent Hybrid Cloud capabilities to deliver greater productivity in your cloud world. Ultan Kinahan is on a member of the Global Black Belt team at Microsoft with a focus on Azure Stack Hybrid Cloud. Ultan has been in the Azure team since the beginning, Has held roles in Engineering, Sales and now consults with both small to medium size business and the worlds largest organizations on how to incorporate Hybrid into their own digital transformations.
Early Bird Registration Discount Expires on August 31, 2018 Conference Registration Link ▸ HERE. Pick from all 200 sessions in all 10 tracks, plus 22 Keynotes & General Sessions! Lunch is served two days. EXPIRES AUGUST 31, 2018. Ticket prices: ($1,295-Aug 31) ($1,495-Oct 31) ($1,995-Nov 12) ($2,500-Walk-in)
According to Forrester Research, every business will become either a digital predator or digital prey by 2020. To avoid demise, organizations must rapidly create new sources of value in their end-to-end customer experiences. True digital predators also must break down information and process silos and extend digital transformation initiatives to empower employees with the digital resources needed to win, serve, and retain customers.
Modern software design has fundamentally changed how we manage applications, causing many to turn to containers as the new virtual machine for resource management. As container adoption grows beyond stateless applications to stateful workloads, the need for persistent storage is foundational - something customers routinely cite as a top pain point. In his session at @DevOpsSummit at 21st Cloud Expo, Bill Borsari, Head of Systems Engineering at Datera, explored how organizations can reap the benefits of the cloud without losing performance as containers become the new paradigm.
Blockchain is a new buzzword that promises to revolutionize the way we manage data. If the data is stored in a blockchain there is no need for a middleman - the distributed database is stored on multiple and there is no need to have a centralized server that will ensure that the transactions can be trusted. The best way to understand how a blockchain works is to build one. During this presentation, we'll start with covering the basics (hash, nounce, block, smart contracts) and then we'll create a simple blockchain and a web client for it.