Day by day enterprises and businesses are moving to the cloud. The migration is not only of the data but also of the compute and processing. While the cloud offers the ability to use the exact amount of resources you need anytime and pay only for the resources used, the challenge still exists. Over-provisioning and paying for the unused capacity of the cloud servers is a common issue that is affecting the businesses nowadays. Right Size Cloud Capacity is very necessary to decrease the cloud cost and optimizing the usage level of the cloud.
Right Size Cloud Capacity needs to be maintained properly. It depends on the application which is being hosted on the server. The application load and the load distribution can be varied with time. The cloud instance must be able to handle the application traffic without causing any downtime. To handle the spike or increase in traffic, the cloud architects are left with two options: vertical and horizontal scaling. The vertical scaling causes the instance to be rebooted and could mean an interruption in service causing dissatisfied users. While on the other hand, the horizontal scaling ensures high availability with zero downtime. But at the same time, scaling doesn’t guarantee the right size of the cloud. For instance, your application needs 4 GB of ram and you have an instance that gives 2 core with 4 GB ram and other that gives 4 core with 8 GB of ram. To give 5 GB availability of ram to your application, you would have to host it on the latter instance even if the application is not utilizing the single core. This creates the wastage of resource and cost. Choice of cloud provider with desired capacity instance also plays an adequate role in maintaining the right size of the cloud instance.
Right Size Cloud Capacity can be obtained by following the below steps:
1. Using a Cloud Billing Tool -
A good cloud billing tool helps in deciding the type of the cloud instance. The instance type is chosen, keeping the type of applications to be hosted on it. An optimized type of EC2 instance should be chosen which not only saves the cost but also provisions the resource such that it does not create the wastage. The instance must neither be over-provisioned nor be under-provisioned. A good Cloud billing tool helps in choosing the right type of instance both in terms of size and cost. For example, AWS Cost calculator gives you the instance yearly, cost depending upon the instance type being chosen.
2. Using short-term instances for short-term needs –
The resources required for a short-term project can be fulfilled by using bidding instances or spare instances checking with the cloud provider. There is no need for provisioning a resource for a longer duration when there is only a short-term need for the instance. Provisioning a resource for a longer duration satisfies the compute requirement but at the same time creates wastage of resource, keeping the instance idle. For short-term needs, the instances must not be provisioned well in advance.
The cloud provider must be checked for the spare set of instances. For example, Amazon Web Services gives you an option of spot instances. The spot instances can be launched at less than half of the instance cost and are well-suited for short-term needs. This allows users to access resources for a shorter time-frame at a discounted price.
3. Cloud spending doesn’t need to be a guessing game – Cloud spending must be done properly. It doesn’t need to be a guessing game. Each workload must be evaluated prior to its consolidation to ensure that it meets CPU, storage, network, bandwidth, I/O, memory requirements. These requirements must then be combined to choose the desired virtualised server. The instances of adequate size, capacity, storage, network etc. must be chosen with proper testing and optimization. The workload must be tested. The threshold capacity of the application to be hosted must be calculated properly.
4. Ensuring cloud resiliency while migrating applications – Before migrating the applications to the cloud make sure your data center can support the cloud’s resiliency and high availability. It must be done to avoid additional application redesign costs and maintaining right size cloud capacity.
5. Performing cost assessment and understanding TCO – It is done to maintain right size and trim further cloud expenses.
Right Size Workload ensures Right Size Cloud Capacity:
The performance monitoring and capacity planning strategies must be followed to ensure right size workload. Before setting up the cloud environment, the sufficient data must be collected. Not only the CPU and memory metrics but also, the I/O and storage needs must be collected. The server configurations must also be documented.
Capacity planning requires estimating server workloads, application performance objectives and selecting the correct instance type. The selection must be done such that there is no wastage of resource and cloud cost.
For ensuring the right size workload, the application must be pass through load testing and different other tests. The application must be run in desired server environment and thus the right size of the cloud instance should be chosen which doesn’t interfere even in scalability.
Choosing the right size cloud instance
It is nowadays a common problem that the cloud servers are running with major percentage capacity sitting idle. For example, an application is running in autoscaling environment with 5 desired servers which are at 30% capacity and 70% capacity of the server is sitting idle. As a result, even with the new instances coming up, the server will be in the idle condition which results in wastage of resources. The solution is to test the application beforehand and use servers with almost 10% idle capacity. Most of the organizations nowadays use basic peak demand forecasting to determine requirements cloud compute capacity. The right size cloud instance must be chosen else the same problem is encountered which is encountered by the under-utilized servers in the datacenter.
Right Size Cloud Capacity to avoid extra spending must be ensured in today’s era. Most of the organizations are switching to the cloud enjoying its low-cost advantages but at the same time, they are unaware of the fact that the cost can further be optimized. The under-utilization of servers must be taken care of to avoid extra spending. In our organization, we also make use of the concept of reserved instances (reserving instances beforehand decreasing further cost) and spot instances ( using spare cloud instances at low cost for applications that can afford minimal downtime).