Characteristics of a Cloud Platform
There are three categories of cloud namely:
- Private Cloud
- Public Cloud
- Hybrid Cloud
Let us take a look at each of these in detail.
1. Private Cloud: (On Premise Cloud)
This type of cloud platform will be hosted behind the corporate firewall and will be managed by the organization.
Reference Implementations:
Cloud platforms like Cloud Foundry, Open Stack offer On Premise installations of Cloud. If the customers chose to use these kinds of cloud solutions, then they will have to install and maintain these environments on their own.
2. Public Cloud:
This type of cloud platform will be hosted on the internet and will be managed by one company. Each customer will be provisioned on the same infrastructure, providing multi tenancy.
Reference Implementations:
Cloud platforms like Amazon Web Services (AWS), Google Cloud Engine, and Digital Ocean offer public cloud services. These environments are maintained by the respective companies and the customers only pay for the cloud services/resources which they consume.
Public Cloud Vs Private Cloud:
With public cloud solutions, customers need not worry about the headache of maintaining cloud environments and they can simply use the services offered on a pay per use model. Also, in a private cloud, the scalability depends on the initial sizing of the cloud environment. For instance, while setting up a cloud environment on premise, let us say the organization estimated that it would cater to 5000 CPU workloads each with 1GB RAM. It is possible that within one year, the company expanded and grew to an extent that, these workloads are no longer sufficient. In such a case, the company has to invest in resizing and expanding its cloud environment. Depending on the private cloud solution which they have chosen, this may or may not be an easy task. So, the initial capacity sizing of the cloud infrastructure is very important and has to factor in the vision and growth predictions of the organization.
3. Hybrid Cloud:
Hybrid cloud is a mixture of Public and Private Clouds, with some resources residing behind company firewall (private) and some on the internet.
Reference Use cases:
Some companies would want to use private cloud for storing data on premise (to ensure data security and probably for legal compliance). However, they would also want to use public cloud resources to host applications, which operate on this data. They would want public cloud resources as they often might want high scalability for their operations, which might be difficult to achieve with private cloud. In such a scenario, they can go for a mixture of both private and public cloud environments.
Characteristics of a Cloud Platform:
Following are some of the essential characteristics of a cloud platform.
- Self-Healing
- Multi-Tenant
- Elasticity
- Ability to Meter services
1. Self-Healing:
A cloud platform should have the ability to recover from outages, servers going down etc. without manual intervention. A cloud platform should ensure that the virtual machines which are spawned or provisioned are up and running all the times. It is the cloud platform’s responsibility to maintain those SLAs.
2. Multi-Tenant:
A cloud Platform should support multi tenancy. Multi tenancy is a feature, which allows multiple organizations (tenants) to share the same infrastructure in a cloud platform. Generally, there is a misconception that only public clouds are multi-tenant. That is a misconception, since, even in a private cloud maintained by an organization, it is possible that multiple divisions of that organization share the same cloud platform. In such a scenario, the multi-tenancy applies to different divisions.
3. Elasticity:
A cloud platform has to be elastic. i.e., the cloud platform should have the ability to scale up or down on demand and provision resources on demand.
4. Ability to Meter services:
The cloud platform should have the ability to measure and monetize each and every service it provides to its consumers.
Factors to be considered while choosing a Cloud Platform:
Following are some of the salient factors which needs to considered while selecting a Cloud Platform:
1. Legal compliance:
Some countries have laws which mandate the data to reside in the same country, where its users reside. In such circumstances, if we chose public cloud, we have to ensure the data center of the public cloud lies in that country.
2. Security:
Public clouds are more prone to attacks and also risks issues with multi tenancy. i.e an inadvertent bug in the cloud platform or a rogue application hosted on that, might expose data of one tenant to another.
3. Cost:
There are two parts to the cost factor:
- Maintenance cost in private Cloud
- Metered cost of services in public cloud
4. Datacenter Maintenance
If the Cloud platform is maintained in-house, then the following factors need to be considered from maintenance and sustainability perspective:
- High availability
- Real estate issues -
- Uninterrupted power supply
- Disaster recovery