Major cloud providers such as Amazon Web Services (AWS), Microsoft Azure, and Oracle Cloud Infrastructure (OCI) share similar cost structures for their services. They offer pay-as-you-go on-demand resources based on usage, as well as several savings vehicles that lower costs through reserved capacity (spending commitments).
You have a lot of flexibility to mix and match the services and features you use in the cloud. This granular control allows you to focus on what your workloads require and not have to over provision instances.
The two primary drivers of your variable spend in the cloud are compute and storage. We’ll use AWS-specific services in the following examples, but they also apply to Azure, OCI, and other cloud platforms.
Basic Structure of Cloud Compute and Storage Costs
Amazon Relational Database Service (RDS) and Elastic Compute Cloud (EC2) charge an hourly rate based on the vCPUs and memory of the instance size. Larger instances have higher hourly rates.
Additionally, you pay for storage attached to these RDS / EC2 instances. The cost varies based on storage size, storage type, and IOPS. For server less/managed services, such as Amazon DynamoDB, you are charged based on write and read request units.
Your block storage costs depend on the volume of data, as well as how much you access it, how quickly it needs to be retrieved, and its redundancy. Generally, you pay per GB provisioned per month, with pricing that scales based on whether you need frequent or infrequent access to it.
Data Transfer Costs
Another driver of variable cloud costs comes from data transfer. Data ingress into cloud platforms typically doesn’t have a networking cost associated with it, but data egress does. If you’re moving large amounts of data frequently between on-premises and cloud platforms, your data egress bill could be surprising.
Be Aware of What’s Going On
Your best weapon in the war against overwhelming cloud costs is knowledge. Use the resources that you have available to understand where the costs are coming from, what’s driving your highest costs, and areas that are available for cost optimization.
Each cloud platform has a way to set up multiple billing alerts, allowing you to be proactive about cost situations that are starting to exceed your budget and threshold. You can analyze trends and tag cost centers to fully understand your cloud cost scenarios.
Someone in your organization needs to own this cost analysis on a regular basis, whether that’s a dedicated person, team, or department. For example, some organizations are adopting FinOps, an operational framework and cultural practice, to handle the ever-increasing complexity and sprawl of cloud costs.
Examples of native AWS tools that you can use to help with the cost observability/optimization process include:
- AWS Trusted Advisor
- Cost optimizer for Amazon Workspaces
- Instance scheduler on AWS
- AWS Cost Anomaly Detection
- AWS Compute Optimizer
- AWS Billing & Cost Explorer
Now that you understand the common cloud cost drivers and the pricing structure, it’s time to explore easy and not-so-easy wins in cloud cost optimization. Get our white paper “Cloud Cost Optimization: Tips, Strategies, and Best Practices”