System Center Virtual Machine Manager (VMM) 2012 as Private Cloud Enabler (2/5): Fabric, Oh, Fabric
Happy Thursday Microsoft Private Cloud fans! Today we are again honored to feature a great blog post by Yung Chou, a Senior IT Pro Evangelist who is allowing us to cross-post his five part series on using System Center Virtual Machine Manager to create and support a Private Cloud, which is originally published on his virtualization blog.
In this, part 2 of his five part series, Yung talks about a foundational component of all Private Cloud solutions – the cloud fabric. If you don’t know about cloud fabrics, or have heard about them but want to know more, then this article will give you the information you need to have real insight into Private Cloud..
Enjoy! – Tom Shinder
Aside from public cloud, private cloud, and something in between, the essence of cloud computing is the cloud fabric. This is the second article of my 5-part series on the concepts and methodology for forming a private cloud with VMM 2012. Notice that throughout this article, I use the following terms interchangeably:
-Application and service
-User and consumer
Just as a reminder, this series includes the following articles:
- Part 1. Private Cloud Concepts
- Part 2. Fabric, Oh, Fabric (This article)
- Part 3. Service Template
- Part 4. Private Cloud Lifecycle
- Part 5. Application Controller
Fabric in Windows Azure Platform: A Simple, Yet Remarkable View of Cloud
Fabric is a frequently used term in cloud computing. It is not a product, nor is it a packaged solution that we can simply unwrap and deploy. Fabric is an abstraction, an architectural concept, and a state of manageability to conceptually denote the ability to discover, identify, and manage the lifecycle of virtual machine instances and resources of a service.
To use an oversimplified analogy, fabric can be considered a collection of hardware, software, wiring, configurations, profiles, instances, diagnostics, connectivity, and everything else that all together form the datacenter(s) where a cloud is running. The Fabric Controller (FC, a terminology coined by Windows Azure Platform) is also an abstraction used to signify the ability and the authority to manage the fabric in a datacenter and all instances and associated resources supported by the fabric.
As far as a service is concerned, the FC is the quintessential owner of the fabric, datacenters, and the world! This removes our need to understand the underlying physical and logical complexities in a datacenter, such as understanding how hardware is identified and allocated, how a virtual machine (VM) is deployed to and remotely booted form bare-metal, how application code is loaded and initialized, how a service is started and reports its status, how required storage is acquired and allocated, and so on.
We can now summarize the 3,500-step process, for example, to bring up a service instance in Windows Azure Platform by virtually saying that the FC deploys a service instance by using the fabric. Fundamentally a PaaS user expects the subscribed runtime (or “platform” as preferred) environment is in place so cloud applications can be developed and run. And for an IaaS user, it is the ability to provision and deploy VMs on demand. How a service provider, in a private cloud setting (which normally means corporate IT), makes PaaS and IaaS available is not a concern for either user.
As a consumer of PaaS or IaaS, this provides great advantages in ease of use and allows the user to focus on what he really cares about, which is a predictable runtime to develop applications and the ability to provision infrastructure as needed. In other words, what happens “under the hood” of cloud computing is collectively abstracted and gracefully presented to users as “fabric.” This simplicity exemplifies clarity and elegance by shielding extraordinary, if not chaotic, technical complexities from users. The stunning beauty unveiled by this abstraction is breathtaking.
Fabric Concept and VMM 2012
Similar to what is in the Windows Azure Platform, the fabric in VMM 2012 is an abstraction that hides the underlying complexities from users and signifies the ability to define and resources pools as a whole. This concept is explicitly presented in the user interface of VMM 2012 admin console as shown here on the right.
There should be no mystery at all regarding what is the fabric of a private cloud in VMM 2012. And a major task in the process of building a private cloud is to define and configure this fabric using the VMM 2012 admin console.
To define the Private Cloud fabric in VMM 2012, you need to define 3 resource pools:
- Servers (i.e. Compute and memory)
You should understand that the magnitude and complexities are not on the same scale comparing the fabric in Windows Azure Platform in public cloud and that in VMM 2012 in private cloud. Further there are also other implementation details like replicating FC throughout geo-disbursed fabric, etc. not covered here to complicate the FC in Windows Azure Platform even more.
However, the idea of abstracting the details which are not relevant to what a user is trying to accomplish is nevertheless very much the same in both technologies. In a sense, VMM 2012 is a FC (in a simplistic form) of the defined fabric consisting of servers, networking, and storage pools. And in these pools, there are functional components and logical constructs to collectively constitute the fabric of a private cloud.
This pool includes containers that host the runtime execution resources of a service. Host groups contain virtualization hosts, which are the destinations of virtual machines that can be deployed based on authorization and service configurations. Library servers are repositories of building blocks like images, iso files, templates, etc. for creating VMs. To automatically deploy images and boot a VM from bare-metal remotely over the network, pre-boot execution environment (PXE) servers are used to initiate the operating system installation on a physical computer. Update servers like WSUS are for servicing VMs automatically and based on compliance policies.
For interoperability, the VMM 2012 admin console can add VMware vCenter Servers to enable the management of VMware ESX hosts. And of course, the consoles will provide visibility to all authorized VMM servers, which forms the backbone of Microsoft virtualization management solution.
In VMM 2012, the Networking pool is where you define logical networks, assign pools of static IPs and MAC addresses, integrate load balancers, and define other network components to mash up the fabric. Logical networks are user-defined groupings of IP subnets and VLANs that are used to organize and simplify network assignments.
For example, HIGH, MEDIUM, and LOW can be the definitions of three logical networks such that real-time applications are connected to HIGH and batch processes to LOW, based on specified class of service. Logical networks provide an abstraction of the underlying physical infrastructure and enables an administrator to provision and isolate network traffic based on selected criteria like connectivity properties and service-level agreements (SLAs).
By default, when adding a Hyper-V host to a VMM 2012 server, VMM 2012 automatically creates logical networks that match the first DNS suffix label of the connection-specific DNS suffix on each host network adapter.
In VMM 2012, you can configure static IP address pools and static MAC address pools. This functionality enables you to easily allocate the addresses for Windows-based virtual machines that are running on any managed Hyper-V, VMware ESX or Citrix XenServer host. This gives you a lot of flexibility in managing network addresses. VMM 2012 also supports adding hardware load balancers to the VMM console, and creating associated virtual IP (VIP) templates which contain load balancer-related configuration settings for a specific type of network traffic. Readers with networking or load-balancing interests are encouraged to experiment and assess the new networking features of VMM 2012.
With the VMM 2012 admin console, an administrator can discover, classify, and provision remote storage on supported storage arrays. VMM 2012 uses the new Microsoft Storage Management Service (installed by default during the installation of VMM 2012) to communicate with external arrays.
An administrator must install a supported Storage Management Initiative – Specification (SMI-S) provider on an available server, followed by adding the provider to VMM 2012. SMI-S is a storage standard for operating among heterogeneous storage systems. VMM 2012 automates the assignment of storage to a Hyper-V host or Hyper-V host cluster, and tracks the storage that is managed by VMM. Note that storage automation through VMM 2012 is only supported for Hyper-V hosts.
Where There Is A Private Cloud, There Are IT Pros
Aside from public cloud, private cloud, and something in between, the essence of cloud computing is fabric. And when it comes to a private cloud, it is largely about constructing and configuring the private cloud fabric. VMM 2012 provides you a solid foundation on which to create your private cloud fabric and includes prescriptive guidance of how to build it by populating the servers, networking, and storage resource pools.
I hope it is clear that, particularly for a private cloud, architecting, designing and creating the private cloud fabric is not a programming assignment, but one relying much on the experience and expertise of IT pros to build, operate, and maintain an enterprise infrastructure. It’s about integrating the IT tasks of building images, deploying VMs, automating processes, managing certificates, enhancing security, configuring networks, deploying IPsec, segmenting and isolating traffic, walking through traces, tuning performance, subscribing to events, shipping logs, restoring tables, and much more with the three resource pools. And yes, it’s about what IT professionals do everyday to keep the entire system running. And that brings us to one conclusion:
[To Part 1, 2, 3, 4, 5]