In part 4 of this series I described how to assess applications and decide whether they should be hosted in a private or a public cloud. Does that mean there fundamentally are two types of cloud and we should choose one of the two? My answer is no and no. And let me explain what I mean by that.
Actually I typically bring the variations back to four cloud types that can be used. I call them private cloud, hosted private cloud, virtual private cloud and public cloud. The first two are mainly asset based (we call that “build” in the HP nomenclature) and single tenant, while the latter two are consumption based (called “consume” by HP) and most often multi-tenant. Let me try explaining each of them in more detail so you understand the differences and nuances. In its official documentation, HP typically combines the hosted and virtual private cloud under one umbrella, called the managed cloud. For the purpose of this discussion I prefer keeping them separate as they have quite different characteristics.
Private cloud is really all about transforming the datacenter through virtualization, automation, standardization and self-provisioning.
- By removing the hardware dependency through virtualization, infrastructure can be used more efficiently as it can serve as a resource for multiple workloads (applications).
- By automating the IT processes, consistency is built into the system and the users no longer depend on the availability of operators to get the services they need.
- Standardization facilitates the efficient use of the available resources.
- Self-provisioning allows the business user to initiate the provisioning system without having to depend on IT.
Such environment reduces the cost of operating IT, reduces the capital expense and improves flexibility and responsiveness. It leaves the company in complete control of the environment. IT is responsible of managing, securing and operating this environment, and obviously no other company has access to the resources used.
From that point of view it’s a single tenant environment, although some level of multi-tenancy may be implemented to shield departments, business units and/or subsidiaries from each other. The only piece you may not have fully under control is the broadband network between your sites as you probably source that from an external party.
Hosted Private Cloud
Now think about the environment I just described, the private cloud, but outsource it to a service provider. The physical infrastructure may be in your datacenter or located in the datacenter of your supplier. You’re in known territory; your supplier manages and operates your infrastructure while you focus on the application environment.
Or you even have your supplier managing part of your applications. The benefits are pretty similar to the ones described for the private cloud. The main difference is in the level of control you hand over to your service provider. You will at least share responsibility for server, storage and networking. There is still some capital expenditure associated with the environment, but whether you actually pay this up front or in your monthly fees depend on the contract you have. Server and storage are single tenant as for the private cloud (with the same note regarding separation of departments etc.), but if the environment is located within the service provider datacenter, the datacenter networking may be multi-tenant (for more discussion on multi-tenancy, read part 5) as a common network hooks up the environments of the multiple customers co-located on the same site.
Public Cloud is a completely different offering. No initial investment is needed; you just go to a Web site, enter your credit card number and/or create an account. You then request what you want to use. This can be:
- virtual servers, storage (IaaS)
- a development platform (PaaS)
- a specific application (called service in the jargon) (SaaS)
And within a matter of minutes you are up and running. Depending on the service type, you are paying per use (typically infrastructure) or per subscription (more often when using applications), or any combination here-off.
Depending on the type of service you may have limited management capabilities. In the case of IaaS, you manage the applications you run on top of the infrastructure and potentially some of the characteristics of the virtual machine. If you consume PaaS services you typically have some level management capabilities for the development platform, in case of SaaS, very little. The lack of managing capabilities often comes with a lack of transparency. You most often do not really know in which geography your information is held, what security policies are enforced, or who is all involved in delivering this service to you. Typically standard service level agreements and T&C’s are proposed. In other words it’s a take it or leave approach, but at a very competitive price.
Virtual Private Cloud
Some customers want a public cloud approach but without some of the issues I discussed in the previous point. They want transparency, understanding of the security precautions taken, of the geographical location of all data copies, etc. They want a proper contract with clearly defined and agreed upon SLA’s, they want invoices rather than credit cards. Some companies deliver such type of services today. We call that virtual private cloud. Payment schemes include pay-per-use, subscription and other more creative approaches such as pay per item processed for example. The management options are similar to the ones of the public cloud, but audits can typically be run to ensure compliance with contractual agreement.
An enterprise has the option to choose any of those models for the implementation of a particular service. Core services, as defined in part 4, will probably be hosted in private or hosted private clouds, while context applications are typical candidates for virtual private or public clouds. In the next part I’ll take an example and walk you through the thinking process of an organization on which cloud to use for what application.