Tactics to reduce cloud spending

Public cloud computing generally results in high savings, better service quality and less (to none) investments. However, if you do not care about your cloud spendings this might cut down your savings considerably. Based on our experience, you can leverage your cloud spending through optimizing two factors: usage and rate. That means you can avoid costs by using fewer resources and reduce rates through paying less for the services.

Use l​​ess:

Cloud vendors charge the services based on hours or seconds to accommodate the resource elasticity and performance on the cloud. Every oversized or not used resource could add up your cloud spending​. This can be achieved through:

Turning off idle resource

Sounds very easy, but many people will be surprised at the amount can be saved on any cloud service just by turning things off when they aren’t used. This could be out-dated resources or non-production resources which do not have to be running during the nights or weekends.

Delete unused „orphan“ resources

Check your recent bill whether you are paying for some resources which are not needed in the future like

  • outdated snapshots,
  • „orphan“ EBS Volumes,
  • unused Elastic IPs,
  • unused NAT Gateway
  • unused VPN Gateway
  • etc

those components can often be forgotten even when you think you did a shutdown or deleted all unused resources and can cost you a significant amount.

Rightsizing oversized resources

Once you have cleaned up the idle resources or deleted unused resources, it is time to make sure that the active resources are right fit and type.
Even after actual utilization rates are determined (e.g., the team only really uses 40% of their resources), those resources are left at the same size all the time. In that example 60% idle resources are still billed by the times the server is running, this can add up.
This is not only applying for CPU, but also for memory, storage, database as well.

Use Right Type of resources

Is your application CPU intensive or Memory Intensive? Need more IO or throughput?  How many IOPS your application needs?
The right type of resource (i.e., on AWS, C5 for CPU intensive workloads or R4 for memory intensive workloads) is also crucial for your cost savings.
Check your storage type whether you need expensive SSD disk instead of HDD, this can also bring you significant cost reduction.

Pay less:

Reducing Rates

How long are you expecting to run the workload? Is your application time sensitive?
It is recommended to use reserved instance (definition: AWS, Azure and Google) instead of on-demand if you run your resources run more than several months and this brings a significant amount of vendor discounts from 20% (one year period with partial upfront payment) up to 70% (three years with full upfront payment) if you have long-term engagement.
Here is an overview of Reserved Instances (RIs) from different vendors:

AWS

Azure

Google

Type

Reserved Instances

Reserved Instances

Sustained Use Discounts, Committed Use Discounts

Time period

1 year and 3 year

1 year and 3 year

1 year and 3 year

Discount level

22-72%

 8-72%(82%*)

37-55%

Change options

Standard: Change AZ, Network type. No region or instance family change

Convertible: Change anything besides region

Change anything

Change instance family and type.

No region change

Return option

Sell on Marketplace if standard RI (this can be difficult)

Return for 12% fee

No return option

* with Azure Hybrid Benefit

If your application is not time sensitive and accepts downtime, for example for data mining, video transcoding, you can also deploy spot instance(definition: AWS, Azure and Google). This brings vendor discounts up to 90% of the on-demand price.
With application load balancer or with auto-scaling you can mix on-demand / reserved instance with spot instance and reduce costs and still have the availability.
These above points can be addressed, for example through vendor tools like a trusted advisor, but more efficiently through feature-rich third-party tools like cloudcheckr.

Use Lifecycle Policy for S3

Most of the time while using S3 we forget to set up the lifecycle policy and let it remain in the standard storage. Based on the need, we should analyze and move some data to IA after some period if it is not frequently used.
In most of the cases, the old data are not needed or accessed anymore except for some audit reason. In this case, you can move those old data after some days automatically with lifecycle policy to very low-cost Amazon Glacier.

Further cost reduction can be achieved through:

Choose right region

Cloud providers offer regions to help customers store resources closer to where they need to be, but there are some price differences between regions. Try to compare the prices and use the cheaper one in the nearby region.

Go for managed services

Most of the time we just take IaaS Services from cloud providers and implement our database and application. We will be then responsible for application lifecycle and maintenance.
With managed service we only responsible for tuning, the rest will be offered from the cloud providers.

Go for serverless

Don’t let the name confuse you. Servers are still used in this computing model. However, businesses don’t actually pay for individual servers. Instead, they pay for functions. That’s also why some experts are calling this Functions as a Service (FaaS).
With this option, you just load the code and get your result if your application does not have been running all the time. You don’t have to worry about resource elasticity, high availability and just pay for the resources have been used during the execution. This will be much cheaper than above options.

Vendor discounts

Cloud vendors provide volume, reseller and negotiation-based discounts which could also leverage your cloud spending.

If you have any question, feel free to reach out to us on coc.aws@swisscom.com or visit our Website at www.swisscom.ch/aws

Swisscom has wide-ranging cloud transformation expertise and assists companies from the design stage right through to implementation, migration and operation of their cloud solution, even in hybrid environments. Our certified experts will guide you into the Amazon Web Services cloud and help you build reliable and innovative solutions.