Klarity supports the cloud cost optimization process by reducing your overall cloud spend that is wasted. Based on built-in savings policies, Klarity can help you eliminate your orphan and idle cloud resources.
To start working on your cloud savings with Klarity, all your accounts need to be fully onboarded - marked in green on the list of your accounts. Only with the access to both - Cloud APIs and billing data, Klarity can scan your cloud environments in search of savings.
Cloud Providers offers you unlimited scalability and lower IT costs only by charging for the resources you use. But the truth is, that you probably pay for some of the resources that you order, whether you use them or not. Klarity will help you reduce costs of that resources in few simple steps:
1) Find and eliminate your
The easy way to optimize your cloud costs is to look for unused and unattached resources that are often spin-up by developers for testing purposes and after that forgotten. Your administrator may also forget to remove storage attached to instances he terminates. In both cases, the result is that your organization is paying for these resources. Klarity will help you in finding Virtual Machines that have not been turned on for the specified period of time, outdated Snapshots, Volumes that are not attached to any resource and the IP addresses that are not assigned to any resource.
2) Identify your
The next step where Klarity can help is to address idle databases. There’s no doubt that databases are frequently left running when they are not needed by many organizations. Make sure you review your database infrastructure regularly and terminate anything unnecessary – or change to a smaller size if possible. Klarity can help you with finding the databases with no connections for the specified period of time for AWS and Azure.
3) Rightsize your
Rightsizing is the process of matching instance types and sizes to your workload performance and capacity requirements at the lowest possible cost. The key point here is to determine if your VMs are running efficiently, and what actions you should take to improve that. Based on the Klarity Savings Suggestions, you can see which of your VMs are underutilized together with the savings amount. Now it’s all about following the recommendations to generate the savings for your company.
The overprovisioned virtual machines option is now available for Azure and AWS:
for Azure, Klarity is using the Azure Advisor API to find your overprovisioned resources. You can check the latest criteria here: https://docs.microsoft.com/en-us/azure/advisor/advisor-cost-recommendations#optimize-virtual-machine-spend-by-resizing-or-shutting-down-underutilized-instances
for AWS, Klarity is using Cost Explorer API to find your overprovisioned resources which needs to be enabled from cloud console. You can follow the documents to enable Cost Explorer API here: https://docs.aws.amazon.com/cost-management/latest/userguide/ce-enable.html and we look at the maximum CPU utilization of the instance for the last 14 days to make one of the following assessments:
Idle – if the maximum CPU utilization is at or below 1%. A termination recommendation is generated, and savings are calculated.
Underutilized – if the maximum CPU utilization is above 1% and cost savings are available in modifying the instance type, a modification recommendation is generated.
4) Rightsize your
The aim of databasis rightsizing is similar as we described for the VMs, so we want to match instance types and sizes to our workload performance and capacity requirements at the lowest possible cost. Looking at deployed instances and identifying opportunities to eliminate or downsize without compromising capacity or other requirements, which results in lower costs.
The overprovisioned databases option is now available for:
Azure, where Microsoft gives you two purchasing models for your Azure SQL Databases (SQL DB), a DTU (Database Transaction Unit) and a vCore based model (logical CPU’s). Both options allow you to scale up or down based on your compute and storage requirements. Regardless of which model you choose, performance tuning can save you money when using SQL DB.
In DTU-based SQL purchase models, a fixed set of resources is assigned to the database or elastic pool via performance tiers: Basic, Standard, and Premium. DTU (s) measure “a blended measure of CPU, memory, and data I/O and transaction log I/O” that Microsoft uses to help estimate which DTU based Service Tier you should be using. By reducing your I/O, memory, or CPU consumption, you utilize fewer DTUs or cores and thus can step down service tiers. Stepping down service tiers helps to save money.
A virtual core (vCore) represents the logical CPU available for your server, offered with a choice between generations of hardware. Azure SQL databases are considered as underutilized ideally when CPU consumption is less than 30%.
Once the underutilized database is identified, it is important to take required action and reduce costs. Recommendations are given based upon the Current SKU of the underutilized database.
Recommendations can be given only within the same service tier. For Example, Standard service tiers cannot be recommended with Premium service tiers and vice versa.
Recommendations cannot be provided for the lowest level configuration of DTU/vCore.
The savings amount recommendations is calculated as per the below formula:
E - Klarity estimated monthly price, C - Current database retail price, T - Target database retail price, X - The saving amount calculated by Klarity
The AWS RDS databases are ideally considered as underutilized when the maximum CPU consumption percentage is less than 30% for a specified period of time. (Note: You can change the number of days for which the database instances are scanned to find out the overprovisioned databases in the Savings Suggestions Settings Page. The default value is set to 14 days.)
For example, by downsizing a db.m5.8xlarge MySQL RDS instance to db.m5.4xlarge instance due to an underused CPU, you can save roughly 50% per month.
Once the underutilized RDS instances are identified, it is important to take the required action. Recommendations are generated based upon the current RDS instance’s configurations (database engine, region code, instance type family, and deployment option) of the underutilized RDS, providing the recommended RDS instance within the same class/family of the current RDS instance.
To find out the recommended RDS instance, the list of all the RDS instances which are available within the same class/family and configurations as of the current RDS instance is obtained from AWS Price List Service API. The savings amount for given recommendations is calculated as per the below formula:
E - Klarity estimated monthly price, C - Current database retail price, T - Target database retail price, X - Savings amount calculated by Klarity
*The database retail prices are obtained from AWS Price List Service API
5) Take an action on your
overprovisioned Kubernetes resources
The overprovisioned resources are also the crusial part for you Kubernetes workloads. Klarity will help you with savings opportunities and show the potential saving amout on the estate records level. When the estate record is assigned to environment and application, the total savings amout will also include the savings that you can achieve based on Kubernetes resources.
In Klarity Savings Suggestions Settings you can find the policies listed below:
Each saving policy can be tailored to the individual needs of your company.
5) Saving suggestions from Turbonomic
If you have at least one existing integration with Turbonomic, this option is available. Actions from Turbonomic are displayed as Turbonomic's type saving suggestions.
For all of the above use cases, you can use Klarity's predefined policies to set up the rules that Klarity will use to scan your cloud environments and look for savings.
You can configure your rules in the Savings Suggestions Settings available in the main menu. Based on that settings, Klarity will scan your cloud environments once a week (on Monday) and mark all estate records that match the setup criteria as potential savings.
Savings suggestions summary is an important part of your main dashboard. You can see there aggregated information about potential savings that Klarity found along with total savings that you can achieve based on that suggestions.
You can drill down each suggestions group and see the savings suggestion on the estate record level
The aggregated information about savings are also visible on the list of your application and next to each environment where the potential savings were found. You can drill down here to the level of a single estate record.
Savings suggestions are always combined with the red icon, that you will see next to each savings suggestion.
Savings visible on the list of applications:Edit this page on GitHub