Imagine that I have multiple datacenters and multiple types of network and
multiple hypervisors. If I want to allow non-IT people to deploy virtual machines
and services, I need to abstract all that underlying fabric infrastructure from
them. The user needs to be able to say (or request through a self-service
interface), “I want an instance of this service in Datacenter A and B, and it should
connect to the development and backup networks on a silver tier of storage.”
Behind the scenes, the private cloud infrastructure works out that for the
development network in Datacenter A, the network adapter needs an IP address
in a certain subnet connected to a specific VLAN and some other subnet and
VLAN in Datacenter B. The infrastructure works out that silver-tier storage in
Datacenter A means using the NetApp SAN and only certain LUNs, while in
Datacenter B the EMC SAN is used with other specific LUNs. The user gets the
service and connectivity needed with zero knowledge of the infrastructure, which
is exactly as it should be.
Self-service by the user for the provisioning of these services is a great way to think of
the difference between virtualization and the private cloud. Let me walk you through
the most basic case: creating a new virtual machine for a user. Provisioning virtual
machines in a virtual world goes like this (see Figure 9. 1 ):
1. The user makes a request to the IT department. This could be a phone call, an
email, or a help-desk request.
2. The IT department gets the request and may perform some validation, such as
checking with a manager to ensure that the request is approved.
3. IT launches their virtualization management tool and creates a virtual machine
from a template.
4. IT contacts the user and provides the IP address of the VM.