Classic Azure Rightsizing

Benefits of Azure Rightsizing (Classic)

Understand the benefits of having a rightsizing posture in your environment

The two key benefits of rightsizing are infrastructure optimization and cost reduction. During a rightsizing analysis of their infrastructure, organizations discover assets that can be downsized or terminated to save money or upgraded to improve performance.

Downsizing

An asset is underutilized and a strong candidate for downsizing if it exhibits low utilization (less than 20%, for example) for core performance metrics. In this case, the best practice is to downgrade the asset to a smaller footprint.

Terminating

Your cloud infrastructure will likely contain assets that are running but not being used. These assets are called zombies, and they are good candidates for termination. Zombies result when someone forgets to turn the assets off after use or when the asset fails due to script errors. Regardless of the cause, cloud providers continue to charge for these unused assets because they are in a running state. You can reduce costs by proactively identifying and terminating these assets.

Upgrading

By downgrading underutilized assets and terminating unused ones, you can optimize for performance as well as reduce costs. Upgrading assets, on the other hand, results in increased spend. However, by upgrading you can ensure that your assets are able to meet surges in demand.

For example, consider that in Azure, you have a Standard_A2 VM that has usage spikes that consistently hit 100% utilization of CPU or memory during certain times of the day. You can analyze the hourly maximum utilization throughout the day and see if the VM requires a larger size, such as the Standard_A3 or the new burstable B-Series, in order to optimize performance.

How VM Rightsizing Recommendations are Made

Learn which metrics the VMware Tanzu CloudHealth platform uses to inform rightsizing recommendations

Step 1: Metrics for Source VM

The platform retrieves the following metrics for VMs to determine how system resources are being utilized.

  • CPU: Retrieved from Azure via API call or through Tanzu CloudHealth Agent
  • Memory: Retrieved from Azure via API call (provided the VM is running the Azure Diagnostics plugin) or through Tanzu CloudHealth Agent
  • Disk Usage: Retrieved from Azure Guest Metrics or through Tanzu CloudHealth Agent
  • Projected Compute Cost: Determined from VM hours report

In order to make a rightsizing recommendation, Tanzu CloudHealth considers the thresholds for Maximum or Average utilization that you specify in the Severely Underutilized when section of a Rightsizing Policy.

Step 2: Candidate List

A list of potential VM candidates is built based on the following criteria:

  • Candidates with higher projected compute cost than the source VM are removed.
  • Candidates unable to support existing infrastructure are removed.
  • The candidates are sorted from least expensive to most expensive. If a candidate is covered by a reservation, the effective cost due to the reservation is determined.

Step 3: Metrics for Candidates

For each candidate in the list, the platform performs the following actions:

  1. The metrics retrieved for the source VM are transposed on the candidate.

    • The metrics are scaled based on the ratio of resources between the source and target VMs. If the scaled metrics exceed 100% then the candidate is excluded.
    • All metrics must scale under 100% for the candidate to be considered. For example, if the source VM has 4 CPUs and 75% utilization, it is scaled to 150% for a 2 CPU candidate VM. Consequently, that candidate VM is excluded.
  2. Individual and total scores are computed based on the adjusted metrics.

Step 4: Comparison and Recommendation

If one or more metrics for the source instance are unavailable, Tanzu CloudHealth assumes that the missing metrics are 99% utilized in the source instance.

Same-family Recommendations

Blank recommendation

The recommendation is blank if one of these conditions is true.

  • The source VM state is not running or not active.
  • The projected compute cost per hour (based on an average month) of the candidate VM is greater than the actual compute cost/hour of the source VM. This difference can result when the source is using reserved instances (RIs).
No recommended change

The recommendation result is No recommended change if any of these conditions are true.

  • The source instance was launched after the start of the current reporting interval.
  • No pricing information is available for the source or candidate instance.
  • The average CPU or memory usage for the source instance does not match that for the candidate instance.

Depending on whether you specify a Maximum or Average utilization measure in the Severely Underutilized when section of the Rightsizing Policy, Tanzu CloudHealth considers the maximum or average CPU or memory for the source instance.

Rightsized recommendation

A candidate belonging to the same family as the source instance is recommended when both these conditions are true:

  • The candidate instance costs less than the source instance.
  • The candidate can handle the CPU, memory, disk usage, and projected compute cost requirements of the source instance.
  • Only CPU data is available for the source instance.

Depending on whether you specify a Maximum or Average utilization measure in the Severely Underutilized when section of the Rightsizing Policy, Tanzu CloudHealth considers the maximum or average CPU, memory, disk usage, and projected compute cost requirements for the source instance.

Recommendation to Stop and Deallocate

The recommendation result is Stop and Deallocate if all these conditions are true for the candidate instance:

  • Average CPU utilization is less than 1%.
  • Average memory utilization is 0%.
  • Average virtual disk usage is 0%.

Cross-family Recommendations

Tanzu CloudHealth provides cross-family recommendations for all Azure virtual machines. Downgrade recommendations help you identify the smallest-sized VM, and consequently the least costly candidate instance, that is capable of handling the usage for the source instance. Reserved hours are considered for these recommendations, as all missing metrics are accounted for full utilization. Consider an example where a VM of DS2 size which costs $1.00 an hour. This runs for 720 hours in a month but is reserved only for 100 hours. Therefore, this machine would cost 620 * 1= $620. Tanzu CloudHealth assesses this would be a better fit for a DS1 at $0.75 or an A2 at $0.20. However, a DS1 is in the same family and would benefit from an RI. So, the cost would be 620 * 0.75 = $465. An A2 is not from the same family and so would not benefit from an RI. The cost here would be 720 * 0.2 = $144. By this calculation, an A2 will be recommended. Alternatively, if your machine was reserved for 600 hours and by applying the above calculation, a DS2 would cost $120, a DS1 would cost $90, and an A2 would cost $144 per month. Here, a DS1 will be recommended.

Virtual Machine Rightsizing Reports

Understand how well your VMs are being utilized in terms of the workloads you are running on them

Insights These Reports Provide

The Virtual Machine Rightsizing reports provide the following insights:

  • How well your VMs are being utilized in terms of the workloads you are running on them.
  • How various metrics such as CPU, Memory, and Virtual Disk I/O contribute to VM utilization.
  • Opportunities for rightsizing VMs, thereby saving costs and optimizing workloads.

Sources of VM Metrics

In order to understand VM performance and utilization on both granular and macro levels, Tanzu CloudHealth ingests data on CPU, Memory, Disk, and Virtual Disk I/O. These metrics are gathered through one or more of these sources:

  • Azure API
  • Tanzu CloudHealth Agent

How VM Utilization is Interpreted

Tanzu CloudHealth gathers CPU, Memory, and Virtual Disk I/O metrics for each VM in your infrastructure. Each metric is then assigned a numeric value called a Score. The individual metric scores are used to compute a Total Score for each VM.

While the individual metric scores indicate the utilization of each metric, the Total Score represents how well each VM is being utilized.

Scoring Mechanism

Tanzu CloudHealth bases metric scores and total scores on utilization thresholds that you specify in the Instance Rightsizing Policy.

Use the Severely underutilized when and Moderately underutilized when categories to specify the thresholds that reflect your internal business standards for a metric. When the utilization for a metric lies within a specific range, a numeric score is assigned to the metric.

There are three threshold categories:

Category Score Range for Metric
Severely underutilized 0 to 33
Moderately underutilized 34 to 67
Well utilized 68 to 100

**Note: In order to make a rightsizing recommendation, Tanzu CloudHealth considers the thresholds for Maximum or Average utilization that you specify in the Severely Underutilized when section of a Rightsizing Policy.

Let’s consider that you define the threshold for Severely underutilized as < 40%. If the average usage for a metric is measured as 20%, the usage is halfway through the threshold range (0%40%).

Consequently, the corresponding score for the usage is halfway through the score range for the Severely underutilized category and is calculated as 50% of 33, which after rounding is 17.

In addition to specifying the thresholds for each category, you can also assign a weight to each metric, including lowering a weight to 0. Tanzu CloudHealth uses the weights you assign to calculate the Total Score for each VM as follows:

Total Score = f (CPU, Memory, Disk)
Here, f is the weighted average
Weighted Score = (Weight/Sum of weights) * Score

If you assign CPU a weight of 2, and assign Memory and Disk each a weight of 1, the weighted score for each metric is calculated as follows:

Weighted CPU Score = (2/4) * Score
Weighted Memory Score = (1/4) * Score
Weighted Disk Score = (1/4) * Score

Example: VM Scoring

Let’s consider these threshold specifications for the CPU utilization of a VM.

Based on the settings in this policy, the usage thresholds are defined as follows:

Category CPU Usage Score
Severely underutilized < 20% 0 to 33
Moderately underutilized 20%–49% 34 to 67
Well utilized >=50% 68 to 100

Here is how the score for CPU usage changes.

CPU Usage Score
50% 68
75% 68 + [(100 - 68)/2] = 85

How to Interpret Virtual Machine Rightsizing Report

Find the Virtual Machine Rightsizing Report at Recommendations > Rightsizing (Old) > Virtual Machine Rightsizing.

This report highlights underutilized VMs.

How to Analyze Scores

Scores for individual metrics and the Total Score are visually represented as battery meters with colored zones. Lower scores are indicated by fewer bars colored red through orange. Larger scores are indicated by more bars colored orange through green.

Hover over the battery meter for a metric to get more details. Individual metric scores are calculated using average performance over the current month or previous month. The hover indicates the minimum and maximum performance measured during that period.

Click the battery meter for a metric for deeper trend analysis.

For more information, see How Tanzu CloudHealth Makes VM Rightsizing Recommendations.

How to Use Efficiency

Note

- Efficiency is not one of the default columns in this report. To display it, click Edit Columns and add it.

The Efficiency of a VM ranges from 0 to 100, and it is based on the Total Score for that VM and the cost of running it.

For example, a severely underutilized VM that is very expensive has a very low Efficiency, while a severely underutilized VM that is very inexpensive has a higher Efficiency.

Use Efficiency as a way to prioritize which VMs to rightsize for maximizing savings.

How to Use Recommendation Savings

Recommendation Savings are the estimated monthly savings that you gain by implementing the rightsizing recommendation for a VM. It is calculated as follows:

Recommendation Savings = Projected Compute Cost of VM - Price of Recommended VM

The assumption made in this calculation is that the number of VM hours remain unchanged before and after you implement the rightsizing recommendation.

How to Interpret the Recommendation

Best Practice - Evaluate a recommendation against internal business knowledge of your infrastructure.

A recommendation is the course of action Tanzu CloudHealth computes after analyzing VM utilization. For more information, see How Tanzu CloudHealth Makes VM Rightsizing Recommendations.

How to Interpret Projected Cost

Projected Compute Cost is calculated as follows:

(VM Usage Hours over analysis period) x (Hourly VM price obtained from Azure)

How to Interpret Notes

Notes is not one of the default columns in this report. To display it, click Edit Columns and add it.

Azure VM rightsizing Notes

The Notes column will provide you information on varied attributes as follows:

  • The Projected Reserved hours of the machine based on the already reserved hours so far this month.
  • Assumed missing metrics, if any.
  • Availability of lower cost options, if any.
    • If yes, then upto two other size options that fits the recommendation, to choose from.

How to Interpret Virtual Machine Perspective Rightsizing Report

Find the Virtual Machine Perspective Rightsizing Report at Recommendations > Rightsizing (Old) > Virtual Machine Perspective Rightsizing.

This report groups the average scores for your VMs by Perspectives that you define in the Platform. Essentially, this report is the Virtual Machine Rightsizing report filtered by Perspectives.

How to Analyze Scores

Scores for individual metrics and the Total Score are visually represented as battery meters with colored zones. Lower scores are indicated by fewer bars colored red through orange. Larger scores are indicated by more bars colored orange through green.

Hover over the battery meter for a metric to get more details. Individual metric scores are calculated using average performance over the current month or previous month. The hover indicates the minimum and maximum scores measured during that period.

How to Use Recommendation Savings

Recommendation Savings are the estimated monthly savings that you gain by implementing the rightsizing recommendation for a VM. It is calculated as follows:

Recommendation Savings = Projected Compute Cost of VM - Price of Recommended VM

The assumption made in this calculation is that the number of VM hours remain unchanged before and after you implement the rightsizing recommendation.

Click the View icon next to each Perspective name to dive deeper and see recommendations for individual VMs in that Perspective.

How Tanzu CloudHealth Makes Azure SQL Database Rightsizing Recommendations

Explains how Tanzu CloudHealth uses metrics to compose a candidate list for the SQL Database Rightsizing report.

Step 1: Metrics for Source SQL DB

The platform retrieves the following metrics for SQL databases to determine how system resources are being utilized.

  • DTU %: Retrieved from Azure via API call
  • Storage %: Retrieved from Azure via API call

The above metrics are retrieved from Azure every 4 hours.

Step 2: Candidate List

A list of potential database candidates is built based on the following criteria:

  • Derived candidates are removed.
  • Candidates with a blank or elasticpool performance level are removed.
  • Candidates with basic, free, or system service tiers are removed.
  • The remaining candidates are sorted from least expensive to most expensive.

Step 3: Metrics for Candidates

For each candidate in the list, the platform performs the following actions:

  1. The metrics are scaled based on the configuration of the efficiency target.
  2. An efficiency status of red (underutilized), green (good fit), or blue (over target) is assigned to each candidate.

Step 4: Comparison and Recommendation

Blank recommendation

The recommendation is blank if one of these conditions is true.

  • The database’s efficiency status is Good Fit or Over Target.
  • Tanzu CloudHealth doesn’t have enough data, such as metric information, to assign an efficiency status and give a rightsizing recommendation.

No options for resize

The recommendation result is No options for resize if both of the following conditions are true.

  • The database’s efficiency status is Underutilized.
  • The database already uses the smallest, least expensive service tier.

Resize to service tier

The recommendation result is Resize to service tier (for example, Resize to S0) if both of these conditions are true.

  • The database’s efficiency status is Underutilized.
  • Tanzu CloudHealth has located a less expensive service tier that changes the database’s status to Good Fit.

Resize to service tier

The recommendation result is *Resize to service tier (for example *Resize to S0) if all of the following conditions are true.

  • The database’s efficiency status is Underutilized.
  • Tanzu CloudHealth cannot locate a less expensive service tier that changes the database’s status to Good Fit.
  • Tanzu CloudHealth has located a less expensive service tier that still leaves the database’s status as Underutilized.

SQL Database Rightsizing Reports

Shows opportunities for rightsizing databases, thereby saving costs and optimizing workloads.

Insights These Reports Provide

The SQL Database Rightsizing reports provide the following insights:

  • How well your SQL databases are being utilized in terms of the workloads you are running on them.
  • How DTU and storage contribute to database utilization.
  • Opportunities for rightsizing databases, thereby saving costs and optimizing workloads.

Sources of SQL Database Metrics

In order to understand SQL database performance and utilization on both granular and macro levels, Tanzu CloudHealth ingests data on DTU and storage usage. These metrics are gathered through Azure API calls.

How Tanzu CloudHealth Interprets SQL Database Utilization

Tanzu CloudHealth gathers DTU and storage metrics for each SQL database in your infrastructure. Each metric is then rated against the set efficiency target to determine whether the database is properly utilized. Based on this score, the database is given an efficiency status of red (underutilized), green (good fit), or blue (over target). For underutilized databases, the report recommends downgrading to a better-suited service tier.

Efficiency Target

Tanzu CloudHealth bases metric scores and efficiency statuses on DTU and storage utilization thresholds that you specify in the efficiency target.

You can create two different kinds of efficiency targets:

  • Basic: Measures DTU and/or storage for all assets
  • Advanced: Measures DTU and/or storage for a specified perspective

The SQL Database Rightsizing report comes with two default basic efficiency targets, DTU Optimized and Storage Optimized. These default basic efficiency targets measure their metric’s average % for the following efficiency target thresholds:

Category Score Range for Metric
Underutilized 0 to 24
Good fit 25 to 75
Over target 76 to 100
Create a Custom Basic Efficiency Target
  1. Select the Efficiency Target dropdown in the SQL Database Rightsizing Report and select + Custom Target.

  2. Give the new efficiency target a unique name.

  3. In the Metrics dropdown, select the metric or metrics you want to use to score SQL Databases. If you select only one metric, the unselected metric is not factored into the report or efficiency score.

  4. Select whether to score the metrics by Average or Maximum percentage.

  5. Use the Target sliders to set the efficiency target thresholds for the selected metrics.

  6. Click Save.

Create a Custom Advanced Efficiency Target
  1. Select the Efficiency Target dropdown in the SQL Database Rightsizing Report and select + Custom Target.

  2. In the top right corner of the Efficiency Target pane, select the icon and click Create Advanced Target.

  3. Give the new efficiency target a unique name.

  4. Select from the Perspective dropdown which perspective the efficiency target should score metrics from.

  5. Select the perspective group or groups that the efficiency target should score metrics from. For example, you can configure the efficiency target to only score metrics from the production environment.

  6. In the Metrics dropdown, select the metric or metrics you want to use to score SQL Databases. If you select only one metric, the unselected metric is not factored into the report or efficiency score.

  7. Select whether to score the metrics by Average or Maximum percentage.

  8. Use the Target sliders to set the efficiency target thresholds for the selected metrics.

  9. Optionally, select Add Group to score a different set of metrics from the selected perspective’s groups. Repeat steps 6-8.

    The advanced efficiency target can score metrics from only one perspective at a time.

  10. Click Save.

How to Interpret the SQL Database Rightsizing Report

This report highlights underutilized and over target SQL databases.

Step 1: Generate the SQL Database Rightsizing Report

  1. Go to Recommendations > Rightsizing (old) > SQL Database Rightsizing.

  2. Select an Efficiency Target from the dropdown.

  3. Select a Date Range to analyze.

  4. Optionally, add a Filter by perspective or tag. You can add multiple filters by selecting the + icon.

  5. Optionally, select a category from the Group By dropdown menu to group table results by that category:

    • Type: Sort by the databases’ current service tier.
    • Status: Sort by the databases’ assigned efficiency status.
    • Perspective: Select a perspective from the second dropdown menu to sort the databases by that perspective.
    • Tag: Select a tag from the second dropdown menu to sort the databases by that tag.
  6. Optionally, click Advanced Filters to target a specific subset of your SQL database in the rightsizing report.

  7. Click Update Report.

To save the SQL Database report, click Save in the top right corner. You can also export the report as a .CSV file. To open a previously saved report, click View Saved Reports and then select the report from the table.

Step 2: Review the SQL Database Rightsizing Report

The SQL Database Rightsizing report executive summary and table are generated based on the configured report settings.

SQL Database Rightsizing reports do not take EA discounts into consideration when making recommendations.

SQL Database Rightsizing Executive Summary

The SQL Database Rightsizing Report executive summary displays your SQL database efficiency score (based on the specified efficiency target) and your total monthly SQL database costs. The executive summary also displays your projected efficiency score, monthly cost, and savings if you implement all the recommendations in the report.

Hover the mouse over the Efficiency Score to view a summary of your efficiency score and rightsizing recommendations.

SQL Database Rightsizing Table

The SQL Database Rightsizing table displays each SQL database and its metrics, along with its efficiency status and rightsizing recommendation.

Select the Underutilized, Good Fit, or Over Target button above the SQL Database Rightsizing table to view only databases of the selected status.

Select a row in the table to view potential savings for different service tiers, including Tanzu CloudHealth’s service tier recommendation. To change the service tier, click Select for that service tier and then click Update Report. The SQL Database table updates to reflect the new service tier.

Selecting a service tier card does not change the SQL database’s service tier. You must manually change the database’s service tier in the Azure Portal.

check-circle-line exclamation-circle-line close-line
Scroll to top icon