Exploring VMware’s New OnDemand Private Cloud (Part 1)
UPDATE: vCloud Air OnDemand is out of beta and has now entered an Early Access Program for which you can sign up here.
Recently I’ve had the opportunity to explore a beta of VMware’s upcoming cloud offering – vCloud Air OnDemand through their Ambassador program. I wanted to share my observations and experiences, but there’s so much to talk about, I found it better to start with an introductory post and drill deeper with a walk through some of the details in a future post.
The quick version is that vCloud Air’s Virtual Private Cloud OnDemand is pretty much what it sounds like. Hosted IaaS (Infrastructure as a Service) running on VMware, enhanced with SDN, with on-demand availability and pricing — meaning that you are billed only for what resources (CPU, memory, disk, etc.) are actually consumed. It’s like the electricity meter on our homes, but this is measuring the resource utilization of your virtual datacenter in the “cloud”.
Amazon (AWS), Azure and Google are on most everyone’s short list for IaaS service providers but there may be some good reasons to put VMware on your short list as well.
The vCloud Air service is compelling for several reasons. To start, it runs VMware vSphere which provides easy and familiar methods for integrating with existing on-prem infrastructure. Perhaps you have a new project but don’t have time to wait to add more hardware and capacity, but still need to maintain operational methods and security. For many use cases vCloud Air Private Cloud will be seen as compelling — especially where vSphere is already used. And with over 99% of the Fortune 1000 using VMware, that’s…well…most of us.
Before we explore Virtual Private Cloud OnDemand in more detail, I’d first like to step back and review different cloud types, use cases.
Private, Public, Hybrid
The original key distinctions between private and public cloud were mostly control and multi-tenancy. With a private cloud the hosted infrastructure was exclusively yours and therefore afforded more control, whereas in a public cloud your workloads might be shared with those of others on the same hardware (multi-tenancy) which could lead to the “noisy neighbor” problem.
Advances in hypervisors, I/O virtualization, SDN and orchestration have made this a bit less of distinction now days as more control is available to the consumer and the “noisy neighbor” is not the threat that it once was.
A Hybrid cloud then is essentially a combination of an “in-house” private cloud and infrastructure from an external service provider. A perfect example is a business that runs VMware vSphere internally in their datacenter. Let’s say a new project comes along, and rather than buy new infrastructure (and incur the associated delays) they could just logically extend and scale their existing vSphere infrastructure to a hosted offering, and be billed only for what is consumed.
Is vCloud Air Hybrid or Private?
In 2013, VMware launched the vCloud Hybrid Service (vCHS) which was positioned as the the hosted cloud infrastructure needed to evolve an on-premises environment into a hybrid cloud. The vCloud Connector facilitated building a unified view of the hybrid cloud, allowing the ability to view, manage and migrate workloads from either the on-premises side or the hosted side.
Just this past September the service was re-branded as vCloud Air with the service offering now called Virtual Private Cloud (a dedicated option is available). What changed that it’s now called a private and not a hybrid cloud? Yes, there’s a bit of marketing here but also a pretty important point. Private cloud is all about control. Do you control the security, the operations, the processes?
When you start with the vCloud Air service you create a virtual datacenter. There is no external access until you establish firewall rules, public IPs, SNAT/DNAT rules, routing and more. There’s also VPN and load balancing services built in.
If that sounds like a lot, it’s not and it’s quite straight forward as you’ll see in the next post, but the point is that you have such a strong level of control that really can be considered a private cloud. It’s like the difference between ordering a sandwich someone else designed versus building your own. As an engineer who has encountered the friction and delays that silos bring, I found it liberating to be able to quickly design the virtual datacenter — network, storage, compute — to my requirements. And of course if you integrate the Virtual Private Cloud with an on-premises environment, you still have a hybrid cloud spanning those two environments.
Introducing vCloud Air Virtual Private Cloud OnDemand
The “original” vCloud Air Service that went live last year is Virtual Private Cloud. It is powered by vCloud Director, providing VMware users with a familiar construct and interface with their on-premises environment. With this service, capacity is purchased in “blocks”. For example a starting block might consist of 20GB of memory, 10Ghz of CPU and 2TB of storage (pricing as of November 16, 2014 shown below).
The new OnDemand service has many similarities with the original service. They both run vSphere and vCloud Director. They both employ SDN using VMware’s own offerings. They both integrate into vCenter Server using the vCloud Air plug-in. They both allow stretched Layer 2 and Layer 3 so that you can “bring your own IPs” and also feature Direct Connect options (private circuit).
My understanding is that the OnDemand service is a new “pod” within the vCloud Air service meaning that it is a new and separate rack design and configuration. The new OnDemand service — as it’s name would suggest — uses an OnDemand pricing model. Rather than purchasing “blocks” of capacity you will be billed for what you consume as you consume it. I haven’t done much for the past 24 hours but below you can see a screen shot of my billing for that period, broken down by CPU, memory, storage (SSD and standard tiers), and public IPs.
Each account has a single billing point but as we’ll see in a future post, it is possible to create multiple virtual data centers (VDCs) within your account to both track internal costs and well as to control access.
Use Cases for Virtual Private Cloud OnDemand
There’s many different use cases that are a very good fit for the OnDemand service. If you’re a new company without much capital you might want to just use the virtual datacenter as your primary datacenter.
If you’re a medium or large business with an established on-prem vSphere infrastructure, you might elect to keep your most critical applications and data on premises, but still leverage the OnDemand service for seasonal capacity, test/dev and new projects.
I was working at a Fortune 500 once when a new project came up which required a large amount of web servers, databases and middleware. How nice it would have been — and how much more quickly we would have been able to execute — if we could have simply defined our vApps in Virtual Private Cloud OnDemand and then clone and distribute them as needed in the vCloud Air service. You might even choose to keep the databases on-premises but put the web tier out in the cloud. You have the flexibility to align your workloads between on-premises and vCloud Air with whatever balance and topology works best for your organization, your security and operational requirements — you have the flexibility to allocate as you see fit.
As you could imagine, disaster recovery for on-premises vSphere deployments is a very popular use case and quite straight forward to setup. Today, the Disaster Recovery option is offered as a discounted tier on the original Virtual Private Cloud Service but it is my understanding that this will move to the OnDemand service in the future. This would be a very effective pricing model as when using the capacity for hot-site replication, most of your resources in a passive state will be storage. CPU and memory would be at relatively low levels until a fail-over occurred at which point they would increase with all the instances coming on-line. OnDemand capacity when you need it.
Sign Up and Getting Started
I’ll go through a detailed walk through later, but the effort required to start creating VMs and consuming resources is relatively low. I simply registered for the service, supplied a credit card, and once I was confirmed I was off creating my virtual data center and spinning up virtual machines and vApps. This was my first time using vCloud Air but it was not my first time using VMware and as a result it didn’t take me much time to quickly find my way around and be productive within the vCloud Director interface within the vCloud Air service. Within a few hours of signup, most should be able to define their networks and start provisioning VMs.
VMs, vApps and Catalogs
Within vCloud Air there is a public catalog from which you can instantly provision new VMs. At this time, the public catalog includes multiple editions of CentOS, Ubuntu and Windows Server. The Windows Server VMs will incur a licensing surcharge for their use which is prorated to an hourly rate. In other words you are effectively renting the Windows Server license cost by the hour.
There’s two other important ways to populate your own private catalog within vCloud Air. First you can import any OVA into your private catalog as either a URL link or a local file — which includes the over 1700 virtual appliances available on the VMware Marketplace. The second way is to simply upload your own ISO to your catalog. Just to prove a point that it could be easily done, I uploaded a Windows ISO to my private catalog in vCloud Air and I was able to build a VM from scratch right form ISO. Also using the vCloud Connector you can even keep your catalogs in sync between our on-premises vSphere environment and vCloud Air.
vApps are a vCloud Director construct which solves several problems. You can add multiple VMs and define rules for how they should work together. A vApp can be an n-tier application or just a set of servers that need to be managed by a common team. You can define leases on vApps as a cost control measure (i.e. power off after x hours, delete storage when off for x days) and even fencing, which ensures VM clones which exist in multiple vApps have unique MACs and IP addresses. More on this later but there’s a lot of rich capability here for designing and managing your virtual datacenter.
The vCloud Air plugin that is built into current versions of the vSphere client provides support for administering vCloud Air right from within the vSphere Web client. The video below provides a walkthrough of the functionality available in the vCloud Air plugin.
Having run administered many vSphere environments I’ve been somewhat spoiled by the ability to quickly extract rich metrics on VMs and hosts using vCenter and even more with vCOPS. In the vCloud Air environment you can see your CPU, memory and storage utilization for your virtual datacenters and vApps but that’s about it. The hosts really don’t need to be in the picture (that’s sort of the point of a cloud service) but it would be nice to know some key VM metrics (what’s my storage latency or memory allocation over time?
Two things here. One is that there’s nothing stopping you from using the monitoring solution of our choice. Want to use Microsoft System Center, CA UIM, Nagios, etc? Use whatever processes you use today in house. The second thing is that VMware has a robust monitoring solution in vCOPS. I would not at all be surprised if VMware were to release a version of this that would work within vCloud Air in the future.
UPDATE: The vCloud Air adapter for vCOPS was released in July, 2014. Below are some screenshots of vCOPS monitoring vCloud Air with more at the link:
There’s much more here in terms of features and even connection options that I haven’t drilled into here and which I’ll try to explore in future posts. But just to back this up a bit, many IT consultancies have suggested that hybrid cloud is the new normal — the business having the ability to consume on-prem and hosted capacity as needs arise, with use-case flexibility and functional integration (i.e. the vCloud Air plug-in in vSphere). Some cloud providers will require you to make adjustments to operational procedures and security, but vCloud Air does a good job of making this feel seamless for VMware shops. Also keep in mind the appeal of multi-cloud (using more than one cloud service provider) which can be used to mitigate risk, provide flexibility and expand DR options. And if you don’t already have a DR solution you may want to take a look at vCloud Air’s Disaster Recovery Service.
Most companies will want to explore options for both hybrid cloud and multi-cloud scenarios for many compelling reasons. As a long time VMware vSphere engineer, I found the vCloud Air service very accessible and easy to quickly get started with. If you have a significant VMware vSphere deployment in our organization or even if you are just starting out, you owe it to yourself to include vCloud Air in your short list of options. With the new OnDemand service with its utility pricing model being prepared for launch and more datacenters being added globally, the vCloud Air solution is worth taking a close look.