Cost Optimization

Introduction

The cost optimization feature in CoreStack has the ability to run systems in such a way to deliver business value at the lowest price point.

More specifically, cost optimization allows you to:

  • Implement Cloud Financial Management: Build capability through knowledge building, programs, resources, and processes to become a cost-efficient organization.

  • Adopt a consumption model: Pay only for the computing resources that you need and increase or decrease usage based on business requirements.

  • Measure overall efficiency: Measure the business output of a workload and the costs associated with delivering it.

  • Stop spending money on undifferentiated heavy lifting: AWS does the heavy lifting of data center operations like racking, stacking, and powering servers. It also removes the operational burden of managing operating systems and applications with managed services.

  • Analyze and attribute expenditure: Identify the usage and cost of systems. Measure return on investment (ROI) and allow workload owners to optimize their resources and reduce costs.

Optimization Types

You can improve your cloud costs and spending by using some of the following techniques to optimize cloud resource usage:

Optimization TypeDescription
Right SizingEvaluate the current selections of cloud instances against actual requirements based on their usage, and recommend the right selection of instances that could help to reduce the overall costs incurred.

Example: Let's assume that your current selection of a cloud instance is t3a.xlarge, and the usage of that instance shows that 2 CPU would be sufficient to run the operation. In this case, CoreStack would recommend using a t3a.large instance instead to help reduce the costs incurred.
Optimize ConfigurationRecommends changing the existing configuration without changing the hardware. This change would not involve any new costs or spending for the customer, but would instead focus on enhancing the performance of the system.

Example: Let's assume you have a cloud instance running on M3 large, and there is a new version of M4 large available through a version update. The system will give an recommendation to update the instance to M4 large.
Schedule RecommendationsThis feature will provide recommendations for performing start/stop operations on your VMs based on consistent patterns of no usage to help reduce the cost incurred. For more information, see Schedule Recommendations.

Example: Let's assume there's a VM which is not in use from 00:00 hrs. UTC to 05:00 hrs UTC, according to the usage report. The system will provide a recommendation that the VM be turned off during the times when it's not in use, which would likely reduce the cost of running that VM.
Manage IdleManaging idle instances entails CoreStack providing recommendations to stop or shutdown any cloud instances that are consistently not in use, according to the usage data, to help reduce the costs incurred.

Example: Assume that the CPU for one of your cloud instances has not been used more than X% over the last 30 days. The system will likely recommend to stop or shut down the instance.
Manage OrphanedAny cloud resources that are still attached to others when they should have been deleted after their use are referred to as Orphaned resources. Since these typically describe resources that are running without being tied to any specific operation, the system will generally recommend stopping or deleting these resources.

Example: Consider a cloud instance created with a volume attached as a secondary resource. Some time later, the cloud instance is deleted without also deleting the attached volume. In such a scenario, the volume which has not been deleted is considered “Orphaned”.

Recommendation User Interface

  1. Click Cost Optimizer > Optimize Usage.

The Optimize Usage window appears.

The Cost Optimizer dashboard is divided into five sections/tabs:

  1. Right Sizing
  2. Optimize Configuration
  3. Schedule Recommendations
  4. Manage Idle
  5. Manage Orphaned

Right Sizing

With a massive combination of instances offered by cloud platforms like AWS, Google Cloud Platform, and Microsoft Azure, it can be overwhelming sometimes when choosing which platform to use. Right sizing in this case helps to not only deflate cost, but also leads to optimization which yields better operational results.

Using right sizing tools is recommended as they are customized in such a way to analyze your cloud system and enable recommendations in applicable areas. They analyze patterns, instance performances, and also are able to switch off idle instances that are not a perfect match to their specific workload overheads.

Right Sizing has policies designed to find underutilized issues in customer infrastructure called violations.

  1. Click Right Sizing. The Impacted Resources and Recommendations appear.

CoreStack supports following resources:

  • AWS Route 53
  • AWS Nat Gateway
  • AWS Dedicated Host
  • AWS EFS
  • Azure Cache for Redis
  • Azure SQL Database
  • Azure SQL Managed Instance
  • Azure Synapse Analytics
  • Azure Logic Apps

In the example provided below, the customer's CPU utilization is shown by analyzing the last 30 days of cloud account data.

The feature will recommend to move to lower configuration machine, which will save on costs. Here, the Azure cloud account has three Impacted Resources -- which is underutilized for this cloud account -- and one Recommendation.

Once our recommendation is applied, $112.97 is saved.

  1. Under Action, click the view icon. The resource utilization, saving recommendations, and actions to be taken should appear. You can choose any of these recommendations.

FieldDescription
Resource IdThe identifier number that Project assigns to each resource.
Resource TypeVirtual machines (VM).
Potential Savings (Monthly)Measure monthly cloud savings.
RegionThe datacenter's geographic location.
Current Resource SKUThe current cloud instance's unique code.
Recommended Resource SKUThe recommended cloud instance's unique code.
Impact LevelThe sensitivity of the information to be stored.
Optimization TypeThe optimal configuration action.
  1. Click Utilization Metrics. The CPU utilization appears.

  2. Select Statistic type.

  3. Select Time Period type.

The Green lines represents the Recommended Utilization, and the Blue line represents the current CPU Utilization. Utilization will typically go up after applying any recommendations and any costs are officially saved.

  1. Click Saving Details. As we can see, the Recommended Resource SKU cost is lower than the Current Resource SKU cost.

  1. Click Resource Details. The SKU details appear. There are four VCPU in the Current Resource SKU, and two in the Recommended Resource SKU. The SKU is therefore reduced.

  1. Select a recommendation and Click Actions.

  1. Click Remediate Now.

  1. You will get a confirmation message once this recommendation is successfully executed. Enter an Email Address as the recipient and write a Message to be included in the notification.

Once the action is implemented, it moves the current resources to the recommended resources.

  1. Click Schedule, to schedule the recommendation.

Enter the details. The notification is then sent to the recipient.

  1. Click Submit for Approval. This will then send the notification email to move the virtual machine(s).

  1. Click Reject, to reject the recommendation.

You can exclude a resource from future recommendation by rejecting the recommendation. This rejected recommendation can be tracked under the Activity Logs section. You can also re-activate a rejected recommendation.

Recommendation Source

Cloud native: This option allows you to ignore any future recommendations for this resource originating only from cloud-native sources.

System: This option allows you to ignore any future recommendation for this resource origination only from cloud-native sources or CoreStack.

You can provide a reason for rejecting the recommendation by selecting from a list of options or you can provide reason in the other reason section.

Click Apply to reject a recommendation . Once a recommendation is rejected, a pop up message appears: Recommendation rejected.

You can find the rejected recommendations in the activity log.

  1. Click Compare. The recommendations comparison will appear.

You can compare the recommendations and make any decisions accordingly, based on your needs.

Optimize Configuration

The Optimize Configuration tab includes custom rules which can be executed to help reduce costs.

  1. Click Optimize Configuration. The rules will execute and the cost will subsequently be calculated. The policies will run and the recommendations will appear.

For example: as shown below, there are two Recommendations and three Impacted Resources.

  1. Click Action. The cloud account details will appear.

In the below example, the two recommendations are:

  • For Resource Type RDS, the cost saving is $73.54 and the Optimization Type is Config. It takes any actions based on rules to save cost.
  • For Resource Type Lambda, the cost saving is $26.43 and the Optimization Type is Config.

Manage Idle

Cloud resources shown here can be in an Idle or Orphaned state.

  1. Click Manage Idle. This sections shows resources that are idle and/or not being used.

In the below example, this account has one Recommendation and one Impacted Resource.

If this account is not being used, then it can be deleted.

There are no other recommendations for any idle cases.

  1. Click Actions.

  2. Click Remediate Now, and the resource will be removed. The cost savings are $6.72. Utilization Metrics should not be provided.

  1. Click Saving Details, and the Current Resource SKU will appear.

Manage Orphaned

  1. Click Manage Orphaned.

This section runs policies to find any orphaned resources. For example, an IP address onboarded and not attached to any resource can be considered an orphaned resource. It can be deleted, which will thereby optimize the cost.

In the below example, there is one recommendation and two impacted resources.

Some of the recommendations are:

  • Cost saving recommendations
    -- OCI_Downsize_Underutilized_ADW_And_ATP_Databases
    -- OCI_Delete_Unattached_Boot_Volumes
    -- OCI_Enable_Monitoring_On_Compute_Instances
    -- OCI_Enable_Object_Lifecycle_Management

  • Performance recommendations
    -- OCI_Improve_Fault_Tolerance
    -- OCI_Enable_Performance_Auto-Tuning_For_Block_Volumes
    -- OCI_Enable_Performance_Auto-Tuning_For_Boot_Volumes
    -- OCI_Rightsize_Compute_Instances
    -- OCI_Rightsize_Load_Balancers

Optimize Rate

  1. Click Optimize Rate.

  1. Click Long Term Savings. The reservations will appear.

The long term savings are primarily based on existing contracts with cloud providers like AWS, Azure, and GCP. For instance, a three or four year-long contract will help save on costs.

The configuration plan and potential savings will also appear.

  1. Click License Benefits. The Azure data will appear, along with licensing benefits that can help you to significantly reduce the cost of running your workloads in the cloud.

Activity Log

In Cost > Cost Optimizer > Activity Logs you can view events generated by the system or by the user. You can filter by various cloud providers, currency and period (current week/ 30/60/90 days).

You can track activities with respect to a user or a system.

Activate a Rejected Recommendation

You can also activate a rejected recommendation from the Activity Logs.

  1. In Cost > Cost Optimizer > Activity Logs, under Action Type, click Rejected.

The rejected recommendation details appear.

  1. Click Re-Activate to again activate the recommendation.
  2. Select a reason type. You can select by mistake or a different reason.

  1. In Message, type in a reason.
  2. Click Save & Apply. The recommendation is moved back to cost optimization listing. This event will be captured in the audit log.

ServiceNow Support

In Cost Optimizer > Top Recommendations > Actions > Submit for approval, you can create change request in ServiceNow account when recommendation is submitted for approval. Once approved, automatic trigger will initiate the remediation action.

Azure Hybrid Benefit

Azure Hybrid Benefit is a cost-savings benefit that lets you bring your existing on-premises Windows Server and SQL Server licenses with active Software Assurance or subscriptions to Azure.

📘

Note:

This feature is applicable only if the customer has purchased Windows Server and SQL Server Licenses.

License Eligibility

SQL Server and Windows Server licenses with active Software Assurance or qualifying subscription licenses. These include:

  • Windows Server Datacenter edition with Software Assurance.
  • Windows Server Standard edition with Software Assurance.
  • SQL Server Enterprise Edition core licenses with Software Assurance or qualifying subscription licenses.
  • SQL Server Standard Edition core licenses with Software Assurance or qualifying subscription licenses.

Process of applying Azure Hybrid Benefit

For pay-as-you-go or bring-your-own-license images from Azure Marketplace:

  • In the Azure Portal, check the boxes for Azure Hybrid Benefit for Windows Server and Azure Hybrid Benefit for SQL Server either during provisioning or for an existing virtual machine.
  • Use the resource provider to activate Azure Hybrid Benefit for SQL Server. Then apply Azure Hybrid Benefit for Windows Server using the PowerShell instructions.

For self-installation:

  • Use the resource provider to activate Azure Hybrid Benefit for SQL Server. Then apply Azure Hybrid Benefit for Windows Server using the PowerShell instructions. You can activate the benefit in the Azure portal by affirming that you have sufficient active licenses with Software Assurance or qualifying subscription licenses.

How do I know if I have Software Assurance?
To manage Software Assurance benefits, you must either be the administrator or have permission to perform the SA Manager role.

  • Sign into the Volume Licensing Service Centre.
  • Choose Software or click View Software Assurance Benefits in the Entitlements section of the VLSC home page to display the Software Assurance Summary page.
    If you don't have Software Assurance, it is available for purchase with new licenses at list prices or with qualifying subscription licenses.

For more information, please refer to this helpful article: What is Microsoft Software Assurance and how do I access it?