A few years ago, AWS announced the release of their Scheduled Reserved Instances. These reserved instances are designed for workloads that recur on a daily, weekly, or monthly schedule, and are purchased for a one-year term. AWS says that Scheduled Reserved Instances provide a 5-10% savings over On-Demand instances used for this same purpose.
While we always appreciate ways to save on AWS, there are a few reasons that Scheduled Reserved Instances are unlikely to make a useful addition to your toolbox when compared to other cost-savings options available.
First of all, they have a decidedly limited use case, only for predictably scheduled operations that will go on for at least one year. Many companies would need to see a much higher savings rate than 10% with this year-long commitment when looking at AWS on demand vs reserved.
Secondly, they are inflexible. Once you set a schedule, you cannot change or override it, and the options to set schedules are limited to daily, weekly, or monthly recurrence on a set duration. Since one of the main benefits of cloud is the ultra-flexibility you get on short notice, this might be a deal-breaker by itself.
Additionally, as Beth Pariseau pointed in a TechTarget article, additional management overhead is required to manage every additional type of instance that a company leverages.
Note that Scheduled Reserved Instances are also limited by region – only available in US East (Northern Virginia), US West (Oregon), and Europe (Ireland) regions – and by instance type, currently supporting C3, C4, M4, and R3 instance types. This means that modern versions of those EC2 instance families, like M5, M5a, M5n, M6g, C5, or C5n, are not available for scheduling, so you’re using an older version of those EC2 instance types. While this might not matter much now, the list of usable instance types has not been updating along with the on-demand instance types, which means this problem will only get worse with time.
When compared to standard AWS reserved instance pricing, you’re not really getting the savings you’d expect from this kind of commitment. Reserved Instances typically save 30% for a convertible 1-year purchase, and can be about 60% for a standard 3-year purchase. This means that if you have an EC2 instance you need that would match the scheduled reserved instance but are using that same EC2 size for other workloads throughout the month, then the non-scheduled EC2 reserved instance pricing works much better with more savings.
For your recurring workloads, you can run instances only when you need them but maintain flexibility by using ParkMyCloud to schedule on/off times for On-Demand instances. By keeping workloads on just during business hours, you’ll save 65% using ParkMyCloud, with even more savings achievable if you need that instance even less throughout the month (and doesn’t even account for savings achieved through RightSizing). This beats any AWS RI pricing while maintaining flexibility for your organization. Keep this in mind while you are evaluating your reserved instance vs on demand decisions.
See the chart below for a full comparison of using Scheduled Reserved Instances vs. using ParkMyCloud.
This comparison shows that AWS Scheduled Reserved Instances are unlikely to be worth any effort or investigation by your cloud operations team. ParkMyCloud provides more benefits and much higher savings with more flexibility and less commitment. Even standard AWS EC2 Reserved Instance pricing and savings can give you more bang for your buck.
If you’ve got workloads and servers that don’t need to run very frequently throughout the month, but you need to ensure they can be spun up at a moment’s notice, then ParkMyCloud can help you save money and enable your users for maximum cloud efficiency. Give ParkMyCloud a try for yourself – start seeing savings today.
AWS Trusted Advisor is a service that helps you understand if you are using your AWS services well. It does this by looking at 72 different best practices across 5 total categories, which include Cost Optimization, Performance, Security, Fault Tolerance, and Service Limits. All AWS users have access to 7 of those best practices, while Business Support and Enterprise Support customers have access to all items in all categories. Let’s dive in to each category to see what is there and what is missing.
A category that is near and dear to our hearts here at ParkMyCloud, the Cost Optimization category includes items related to the following services:
- EC2 – Reserved Instance purchase recommendations, underutilized VMs, Reserved Instance lease expirations
- Load Balancers – idle LBs
- EBS – Underutilized volumes
- Elastic IP – unassociated addresses
- RDS – Idle databases
- Route 53 – Inefficient latency record sets
- Redshift – Underutilized clusters
This list includes many of the services that are often the most expensive line items in an AWS account, but doesn’t take into account a large percentage of the AWS services available. Also, these recommendations only provide links to other AWS documentation that might help you solve the problem, as opposed to a service like ParkMyCloud that provides both the recommendations and ability to take the action of shutting down idle instances or resizing those instances for you.
This category caters more towards production instances, as it aims to make sure the performance of your applications is not hindered due to overutilization (as opposed to the Cost Savings category above, which is focused more on underutilization). This includes:
- EC2 – highly-utilized VMs, large number of security group rules (per instance or per security group)
- EBS – SSD volume configuration, overutilized magnetic volumes, EC2 to EBS throughput
- Route 53 – alias record sets
- Cloudfront – CDN optimization, header forwarding, cache hit ratio, alternate domain names
This category is one of the weakest in terms of services supported, so you may want to factor that in if you’re trying to make sure your production applications are performing well on alternative AWS services.
The security checks of AWS Trusted Advisor will look at the following items:
- Security Groups – Unrestricted ports, unrestricted access, RDS access risk
- IAM – Use of Roles/Users, key rotation, root account MFA, password policy
- S3 – Bucket permissions
- CloudTrail – logging use
- Route 53 – MX and SPF record sets
- ELB – Listener security, Security groups
- Cloudfront – Custom SSL certificates, certificates on the origin server
- Access keys – Exposed keys
- Snapshots – EBS public snapshots, RDS public snapshots
Security is a tough category to get right, as almost every one of these needs to be reviewed for your business needs. While this isn’t an exhaustive list of security considerations, it certainly helps your organization cover the basics and prevent some “I can’t believe we did that” moments.
One of the main benefits of the cloud that often gets overlooked is the use of distributed resources to increase fault tolerance for your services. These items in the fault tolerance category are focused on increasing the redundancy and availability of your applications. They include:
- EBS – Snapshots
- EC2 – Availability Zone balance
- Load Balancer – optimization
- VPN Tunnel – redundancy
- Auto Scaling Groups – general ASG usage, health check
- RDS – backups, multi-AZ configuration
- S3 – bucket logging, bucket versioning
- Route 53 – Name server delegations, record sets with high TTL or failover resources, deleted health checks
- ELB – connection draining, cross-zone load balancing
- Direct Connect – Connection / location / virtual interface redundancy
- Aurora DB – instance accessibility
- EC2 Windows – EC2Config agent age, PV driver versions, ENA driver versions, NVMe driver versions
Overall, this turns out to be a great list of AWS services that can really make sure your production applications have minimal downtime and minimal latency. Additionally, some services like snapshots and versioning, help with recovering from problems in a timely fashion.
One of the hidden limitations that AWS puts on each account is a limit of how many resources you can spin up at any given time. This makes sense for AWS, so they don’t have new users unintentionally (or intentionally!) perform a DOS for other users. These service limits can be increased if you ask nicely, but this is one of the few places where you can actually see if you’re coming close. The services covered are:
- Route 53
Verdict: Helpful, But Not Game-Changing
While these checks and advice from AWS Trusted Advisor certainly help AWS users see ways to improve their usage of AWS, the lack of one-click-action makes these recommendations just that – recommendations. Someone still has to go verify the recommendations and take the actions, which means that in practice, a lot of this gets left as-is. That said, while I wouldn’t suggest upgrading your support just for Trusted Advisor, it certainly can provide value if you’re already on Business Support or Enterprise Support.
There have been about 1.3 zillion blogs posted this week recapping the announcements from AWS re:invent 2019, and of course we have our own spin on the topic. Looking primarily at cost optimization and cost visibility, there were a few cool new features posted. None of them were quite as awesome as the new Savings Plan announcement last month, but they are still worthy of note.
AWS Compute Optimizer
With AWS jumping feet-first into machine learning, it is no surprise that they turned it loose on instance rightsizing.
The Compute Optimizer is a standalone service in AWS, falling under the Management & Governance heading (yes, it is buried in the gigantic AWS menu). It offers rightsizing for the M, C, R, T, and X instance families and Auto Scaling groups of a fixed size (with the same values for desired/min/max capacity). To use the service you must first “opt-in” in each of your AWS accounts. Navigate to AWS Cost Optimizer and click the “Get Started” button.
Interestingly, they only promise a cost reduction “up to 25%”. This is probably a realistic yet humble claim, given that the savings for a single downsize in the same instance family is typically 50%. That said, the only way to get that 50% cost reduction is to install the AWS CloudWatch Agent on your instances and configure it to send memory metrics to CloudWatch. If you are not running the agent…then no memory metrics. Like ParkMyCloud rightsizing, in the absence of memory metrics, the AWS Compute Optimizer can only make cross-family recommendations that change only the CPU or network configuration, leaving memory constant. Hence – a potential 25% cost reduction.
The best part? It is free! All in all, this feature looks an awful lot like ParkMyCloud rightsizing recommendations, though I believe we add a bit more value by making our recommendations a bit more prominent in our Console – not mixed-in with 100+ other menu items… The jury is still out on the quality of the recommendations; watch for another blog soon with a deeper dive.
Amazon EC2 Inf1 Instance Family
Every time you congratulate yourself on how much you have been able to save on your cloud costs, AWS comes up with a new way to help you spend that money you had “left over.” In this case, AWS has created a custom chip, the “Inferentia”, purposely designed to optimize machine learning inference applications.
Inference applications essentially take a machine learning model that has already been trained via some deep-learning framework like TensorFlow, and uses that model to make predictions based on new data. Examples of such applications include fraud detection and image or speech recognition.
The Inferentia is combined in the new Inf1 family with Intel® Xeon® CPUs to make a blazingly fast machine for this special-purpose processing. This higher processing speed allows you to do more work in less time than you could do with the previous instance type used for inferencing applications, the EC2 G4 family. The G4 is built around Graphics Processing Unit (GPU) chips, so it is pretty easy to see that a purpose-built machine learning chip can be made a lot faster. AWS claims that the Inf1 family will have a “40% lower cost per inference than Amazon EC2 G4 instances.” This is a huge immediate savings, with only the work of having to recompile your trained model using AWS Neuron, which will optimize it for use with the Inferentia chip.
Next Generation Graviton2 Instances
The final cool cost-savings item is another new instance type that fits into the more commonly used M, C, and R instances families. These new instance types are built around another custom AWS chip (watch out Intel and AMD…) the Graviton2. The Graviton chips, in general, are built around the ARM processor design, more commonly found in smartphones and the like. Graviton was first released last year on the A1 instance family and honestly, we have not seen too many of them pass through the ParkMyCloud system. Since the Graviton2 is built to support M, C, and R, I think we are much more likely to see widespread use.
Looking at how they perform relative to the current M5 family, AWS described the following performance improvements:
- HTTPS load balancing with Nginx: +24%
- Memcached: +43% performance, at lower latency
- X.264 video encoding: +26%
- EDA simulation with Cadence Xcellium: +54%
Overall, the new instances offer “40% better price performance over comparable current generation instances.”
The new instance types will be the M6g and M6gd (“g”=Graviton, “d”=NVMe local storage), the C6g and C6gd, and the R6g and R6gd. The new family is still in Preview mode, so pricing is not yet posted, but AWS is claiming a net “20% lower cost and up to 40% higher performance over Amazon EC2 M5 instances, based on internal testing of workloads.” We will definitely be trying these new instance types when they release in 2020!
All in all, there were no real HUGE announcements that would impact your costs, but baby steps are OK too!
Google Cloud Platform vs AWS: what’s the deal? A while back, we also asked the same question about Azure vs AWS. After the release of the latest earnings reports a few weeks ago from AWS, Azure, and GCP, it’s clear that Microsoft is continuing to see growth, Amazon is maintaining a steady lead, and Google is stepping in. Now that Google Cloud Platform has solidly secured a spot among the “big three” cloud providers, we think it’s time to take a closer look and see how the underdog matches up to the rest of the competition.
Is Google Cloud catching up to AWS?
As they’ve been known to do, Amazon, Google, and Microsoft all released their recent quarterly earnings around the same time the same day. At first glance, the headlines tell it all:
The obvious conclusion is that AWS continues to dominate in the cloud war. With all major cloud providers reporting earnings around the same time, we have an ideal opportunity to examine the numbers and determine if there’s more to the story. Here’s what the quarterly earning reports tell us:
- AWS had the slowest growth they have ever since they began separating their cloud reportings – up just 37% from last year.
- Microsoft Azure reported a revenue growth rate of 59%.
- Microsoft doesn’t break out specific revenue amounts for Azure, but Microsoft did report that its “Intelligent Cloud” business revenue increased 27% to $10.8 billion, with revenue from server products and cloud services increasing 30%
- Google’s revenue has cloud sales lumped together with hardware and revenue from the Google Play app store, summing up to a total of $6.43 billion for the last quarter.
- To compare, last year during Q3 their revenue was at $4.64 billion.
- During their second-quarter conference call in July, Google said their cloud is on an $8 billion revenue run rate – meaning cloud sales have doubled in less than 18 months.
You can see here that while Google is the smallest out of the “big three” providers, they have shown the most growth – from Q1 2018 to Q1 2019, Google Cloud has seen growth of 83%. While they still have a ways to go before surpassing AWS and Microsoft, they are moving quickly in the right direction as Canalys reported they were the fasted growing cloud-infrastructure vendor in the last year.
It’s also important to note that Google is just getting started. Also making headlines was an increase in new hires, adding 6,450 in the last quarter, and most of them going to positions in their cloud sector. Google’s headcount now stands at over 114,000 employees in total.
The Obvious: Google is not surpassing AWS
When it comes to Google Cloud Platform vs AWS, we have a clear winner. Amazon continues to have the advantage as the biggest and most successful cloud provider in the market. While AWS is growing at a smaller rate now than both Google Cloud and Azure, Amazon still holds the largest market share of all three. AWS is the clear competitor to beat as they are the first and most successful cloud provider to date, with the widest range of services, and a strong familiarity among developers.
The Less Obvious: Google is actually gaining more ground
While it’s easy to write off Google Cloud Platform, AWS is not untouchable. AWS has already solidified itself in the cloud market, but with the new features and partnerships, Google Cloud is proving to be a force to be reckoned with.
Where is Google actually gaining ground?
We know that AWS is at the forefront of cloud providers today, but that doesn’t mean Google Cloud is very far behind. AWS is now just one of the three major cloud providers – with two more (IBM and Alibaba) gaining more popularity as well. Google Cloud Platform has more in store for its cloud business in 2020.
A big step for google was announced earlier this year at Google Cloud’s conference – Google Cloud Next – the CEO of Google Cloud announced that they would be coming out with a retail platform to directly compete with Amazon, called Google Cloud for Retail. What ‘s different about their product? For starters, they are partnering with companies such as Kohl’s, Target, Bed Bath & Beyond, Shopify, etc. – these retailers are known for being direct competition with Amazon. In addition to that, this will be the first time that Google Cloud has had an AI product that is designed to address a business process for a specific vertical. Google doesn’t appear to be stopping at just retail – Thomas Kurian said they are planning to build capabilities to assist companies in specialized industries, ex: healthcare, manufacturing, media, and more.
Google’s stock continues to rise. With nearly 6,450 new hires added to the headcount, a vast majority of them being cloud-related jobs, it’s clear that Google is serious about expanding its role in the cloud market. In April of this year, Google reported that 103,459 now work there. Google CFO Ruth Porat said, “Cloud has continued to be the primary driver of headcount.”
Google Cloud’s new CEO, Thomas Kurian, understands that Google is lagging behind the other two cloud giants, and plans to close that gap in the next two years by growing sales headcount.
Deals have been made with major retailer Kohl’s department store, and payments processor giant, PayPal. Google CEO Sundar Pichai lists the cloud platform as one of the top three priorities for the company, confirming that they will continue expanding their cloud sales headcount.
In the past few months, Pichai added his thoughts on why he believes the Google Cloud Platform is on a set path for strong growth. He credits their success to customer confidence in Google’s impressive technology and a leader in machine learning, naming the company’s open-source software TensorFlow as a prime example. Another key component to growth is strategic partnerships, such as the deal with Cisco that is driving co-innovation in the cloud with both products benefiting from each other’s features, as well as teaming up with VMware and Pivotal.
Driving Google’s growth is also the fact that the cloud market itself is growing so rapidly. The move to the cloud has prompted large enterprises to use multiple cloud providers in building their applications. Companies such as Home Depot Inc. and Target Corp. rely on different cloud vendors to manage their multi-cloud environments.
Home Depot, in particular, uses both Azure and Google Cloud Platform, and a spokesman for the home improvement retailer explains why that was intentional: “Our philosophy here is to be cloud-agnostic, as much as we can.” this philosophy goes to show that as long as there is more than one major cloud provider in the mix, enterprises will continue trying, comparing, and adopting more than one cloud at a time – making way for Google Cloud to gain more ground.
Multi-cloud environments have become increasingly popular because companies enjoy the advantage of the cloud’s global reach, scalability, and flexibility. Google Cloud has been the most avid supporter of multi-cloud out of the three major providers. Earlier this year at Google Cloud Next, they announced the launch of Anthos, a new managed service offering for hybrid and multi-cloud environments to give enterprises operational consistency. They do this by running quickly on any existing hardware, leverage open APIs and give developers the freedom to modernize. There’s also Google Cloud Composer, which is a fully managed workflow orchestration service built on Apache Airflow that allows users to monitor, schedule and manage workflows across hybrid and multi-cloud environments.
Google Cloud Platform vs. AWS – Why Does It Matter?
Google Cloud Platform vs AWS is only one of the battles to consider in the ongoing cloud war. The truth is, market performance is only one factor in choosing the best cloud provider. As we always say, the specific needs of your business are what will ultimately drive your decision.
What we do know: the public cloud market is not just growing – it’s booming. Referring back to our Azure vs AWS comparison – the basic questions still remain the same when it comes to choosing the best cloud provider:
- Are the public cloud offerings to new customers easily comprehensible?
- What is the pricing structure and how much do the products cost?
- Are there adequate customer support and growth options?
- Are there useful management tools?
- Will our DevOps processes translate to these offerings?
- Can the PaaS offerings speed time-to-value and simplify things sufficiently, to drive stickiness?
Right now AWS is certainly in the lead among major cloud providers, but for how long? We will continue to track and compare cloud providers as earnings are reported, offers are increased, and price options grow and change. To be continued in 2020…
AWS recently announced the release of AWS Savings Plans – a new system for getting a discount on committed usage for EC2 and Fargate. The previous systems of Reserved Instances (RIs) are still around, and in some cases may still be the right way to go. That said, based on our research, if your virtual machines do not need to be running 24/7, they are still not as effective at cost savings as scheduling your systems to be shut down when not in use.
I am not keen on the “Savings Plan” name, as it sounds to me like you are building up money in the bank, but really it is a capacity purchase plan to save you money.
The key feature of the Savings Plans is that you are committing to spend a certain amount of money per hour for EC2 and/or Fargate use. The hourly commitment must be greater than or equal to $0.001. If you make the commitment, AWS will give you a discount on whatever virtual machine to which they apply the expense.
There are two kinds of Savings Plan:
- Compute Savings Plan – Apply to EC2 or Fargate usage regardless of instance family, size, AZ, region, OS, or tenancy. For any given instance configuration, pricing is similar (if not identical) to an equivalent Convertible RI, giving up to a 66% discount.
- EC2 Instance Savings Plan – Specific to EC2 instances within a family in a specific region, but regardless of size, OS, or tenancy. For any given instance configuration, pricing is similar to an equivalent Standard RI, giving up to a 72% discount in exchange for the reduced flexibility.
- Both types require a commitment for either 1 year or 3 years.
- They cannot be canceled, refunded, or exchanged
- You can buy as many as you like for as much of a commitment as you like. Ten plans at $1/hour each, or one plan at $10/hour, or any other combination for as little or as much as you like.
Savings Plans vs RIs
AWS has a table that compares Savings Plans vs RIs here, but either they were trying to make the Savings Plans look a lot better than RIs, or someone forgot to check a few boxes. (I mean wouldn’t you say that RIs give you a “lower price in exchange for a monetary commitment”? I sure would.) Here is my take on that table:
So obviously there are feature differences. The key thing here is that the Savings Plans give the same amount of savings as a somewhat equivalent RI, but with a LOT more flexibility in terms of what instances can get the discount.
The customers get in, but they can’t get out…
If you change your mind about buying an RI, you can sell it on the AWS RI Marketplace. You will not get back the full value of what you owe, but at least there is an option. With Savings Plans there is (so far) no way to back out. The AWS Service Terms (section 4.5) states “Savings Plans are noncancellable.”
Why might you want to get rid of an RI?
- Maybe you bought a non-flexible RI, switched your needed instance size/family, and the RI is no longer useful.
- Maybe…you just cannot afford it anymore.
For the first issue, Savings Plans are a lot more flexible, allowing exchanges across sizes, families, and regions, depending on what kind of Savings Plan you buy.
For the second issue…Savings Plans provide no flexibility. Do you have any workloads elsewhere you can bring in to use the commitment – maybe some containers that can be moved to an EC2, or maybe an RDS that you can turn in to a self-managed database? Or maybe you can just use the unused capacity to mine a couple pennies-worth of Bitcoin…
At the end of the day, you need to weigh the discount vs. your confidence in the stability of your workloads and your funding.
(I personally just picked up a $0.001 per hour plan for $8.76 for the year and feel confident that I can meet that obligation.)
Savings Plans vs Scheduling
Just like RIs, savings plans are intended to be applied against resources that are up 7/24/365 (or 7/24/1095 for 3-year purchases). For resources that only need to be when someone is using them, like dev, test, staging, build, and similar system, it is likely better to schedule them.
To demonstrate this, here is a comparison for a t2.medium in us-east-1 running Linux in shared tenancy. The t2.medium, while a small and slightly older instance type, is the most commonly used instance type we see across all of our ParkMyCloud customers, with 3x the number of deployments than the next most common type.
In the graphs below, the slanting green line represents the monthly cost of an instance based on the number of hours it is running per day on weekdays only (so it already accounts for pulling out the cost of weekends). For example, if this virtual machine was running 12 hours per day on weekdays (not a very aggressive schedule) it will cost $144.77 per year. Compared to the baseline pay-as-you-go price of $406.46 per year, this is a savings of 64%.
The following graph shows a comparison of the annual cost of this t2.medium instance when bought with:
- Either a Compute Savings Plan or an EC2 Instance Savings plan
- For a 1-year vs 3-year term
- With no upfront cost (so you are charged monthly)
This graph is telling us that compared to the most aggressive EC2 Instance Savings Plan bought at a 3-year commitment, scheduling is still less expensive. In fact, we need to get up to about 14 hours per weekday before the Savings Plan saves any money.
At the top end, the instance could run all day on weekdays, 5/24, and just match the 1-year Compute Savings Plan savings. (That number matches so closely I truly wonder if this is how they came up with the base savings for the RIs and Savings Plan.)
In this next graph, we change the Savings Plans to be purchased all upfront, which gives a bit more savings but still cannot match the savings of the 5-day/12-hour schedule.
Note that if this WERE a system we want to keep up 7/24, we would have to create a savings plan that covers the hourly cost of the instance. For example, the base price of the t2.medium in our example is $0.0464 per hour. Under the savings plans, we get a discount on this, and if we wanted to be sure at least this instance was covered, we would need to buy a savings plans (with no upfront cost) with one of the following rates
Again note that none of these reach the 64% savings of a basic 5-day/12-hour schedule.
How are Savings Plan Applied to my Bill?
The example above shows what you would pay for that t2.medium if it was the only instance in your account. If you have multiple instances or even multiple accounts within an AWS Organization, the Savings Plan is applied in a prioritized way, trying to “use” up the less flexible savings methods before getting to the most flexible:
- First, any RIs are applied to your bill – they are less flexible, so you want them “used up” before Savings Plans are applied
- Then, EC2 Instance Savings Plans are applied next
- And lastly, Compute Savings Plans are applied
Within either of the Savings Plan types:
- The plan is first applied to the AWS Account in which the Plan was purchased
- And the plan is applied to the resource type/region/etc with the highest potential discount compared to On-Demand
- After that is shared with the rest of the accounts in your AWS Organization
Why did AWS do this?
AWS is philosophically all about the customer…and there is NO question that this new feature is great for the customers. Looking beyond that: anytime a vendor can lock you in to a long-term contract it makes things easier for the vendor in a lot of ways. For AWS, committed use means a more predictable balance sheet and more predictable data center utilization. RIs gave both of these, but they were about as complicated as filling out your taxes, and could be as restrictive as a tight pair of underwear. I am betting AWS is shooting for increased levels of commitment that help the long term bottom-line. The downsides for them are the potentially reduced revenue and the reduced datacenter usage predictability at the region level (since the Compute Savings Plans are cross-region). That said…those long term commitments look really good to the stock market, and a reduction in revenue volatility cannot be bad either.
What do I do now?
At this point you should run (not walk) over to the Savings Plan section of the Billing Dashboard in AWS and see what is recommended in there – it is certainly worth the look. If you were hesitant about buying an RI due to the region or size restrictions, it may be time to reconsider. Note that you do not have to have full coverage of your spend with Savings Plans, but if you have a consistent level of usage 7/24/365, you should cover at least SOME of it with a Compute Savings Plan… And if your usage is not consistent…then consider scheduling your resources with ParkMyCloud…which can also save over 65%.
“How do I stop wasting money on Reserved Instances?”
It’s a question we’ve heard before from despairing AWS users. They were told Reserved Instances (RIs) would save them money, so they purchased them. Now, halfway into a three-year contract, they realize they’re not utilizing the RIs they’re paying for. Or worse… they may not even know what RIs they have.
Amazon offers Reserved Instances to ostensibly help get your cloud costs in control. The message is that RIs help you save money on your EC2 instances by offering discounted hourly rates in exchange for a 1- or 3-year commitment. Before we get into how you can cut your cloud spending with an AWS RI, here’s a bit of background and what you need to know about AWS EC2 Reserved Instance pricing.
How do EC2 Reserved Instance Purchasing Options Work?
When it comes to Reserved Instances purchasing options, you can either choose a 1- or 3-year contract. The longer the commitment, the greater the cost savings compared to On-Demand. By choosing one of these contracts, customers are promised savings of up to 75%.
There are a few risks that come with the longer commitment times. For starters, if AWS drops pricing, then the promised savings are reduced or may disappear. And when AWS introduces a new generation of an instance type family it may attract your users away from your contracts – these are based on the older generation. If you don’t know your future needs, it may be appealing to use the 1-year instead of a 3-year contract, which has savings vs. On Demand at about 31-40%.
There are three different types of EC2 Reserved Instances that customers can purchase – Standard Reserved Instances, Convertible Reserved Instances, or Scheduled Reserved Instances. With Standard Reserved Instances, customers would see the most significant savings. However, Convertible Reserved Instances are attractive to customers because it gives them added flexibility like the ability to use different instance families, operating systems, or tenancies over the term. Scheduled RIs allow you buy an RI that is only used at certain times each day in a recurring schedule.
When an RI expires, you are charged again at the normal rate. See the recently released option to queue RI purchases in advance. This may help provide the greatest savings by eliminating gaps in your coverage from reservations.
Additional Ways To Save
AWS also offers additional discounts if you have more than $500,000 worth of Reserved Instances in a region – the more Reserved Instances you have, the larger your discount.
You may also buy RIs on the Reserved Instance Marketplace from third-party sellers. The great thing about this is that these third parties tend to list their RIs at lower prices for a shorter period of time. And if you find you have too many RIs, you can sell them on the Marketplace as well.
There are three different payment plans offered with Reserved Instances. Payments can be made either All Upfront, Partial Upfront, or No Upfront. It is important to note that if you pay all up front, you will have greater savings because there are no other costs or additional charges during the term regardless of the usage hours.
Some may think that the need to pay upfront and be locked in undermines both “pay as you go” and the notion of being “elastic”- almost like a step backward to the old economic model.
An example of the savings offered by each EC2 RI option, along with the percent of savings each has over the On-Demand price is shown below. From these graphs, you can see that with a 3-year contract, your savings would be much greater. Other things to note is that you will have greater savings with Standard Instances, as well as if you choose the “All Upfront” payment plan. While you would receive discounted hourly rates for choosing Partial Upfront or No Upfront as a payment plan, if you can, All Upfront would be your best option with the most savings.
How should I use my Reserved Instances?
In non-production environments such as dev, test, QA, and training, Reserved Instances are not your best bet. Why is this the case? These environments are less predictable; you may not know how many instances you need and when you will need them, so it’s better to not waste spend on these usage charges. Instead, schedule such instances (preferably using ParkMyCloud). Scheduling instances to be only up 12 hours per day on weekdays will save you 65% – better than all but the most restrictive 3-year RIs!
Reserved Instances are very much a “use it or lose it” proposition. In other words, there are no rollover minutes – if you don’t use your reserved instances one month you don’t get extra time the next month. Here’s why they are like this:
- The EC2 options available are specific to Region, Availability Zone, Instance Type (e.g. m5.large) with some exceptions, Platform Type (e.g. Linux or Windows), and Tenancy. AWS, behind the scenes, attempts to randomly match instances you launch to the Reserved Instance contracts you have in place, based on the specific criteria. When there is a match, the cost benefit is applied. It is not uncommon for people to believe they are launching instances that match all the criteria, when in fact they are not, so the contracts are under-utilized. And you won’t know what matches were made until you get your bill at the end of the month.
- AWS decrements the contract amount for every hour when not used, meaning your return on investment diminishes.
- For every hour in your RI term, you pay the fee for hourly usage regardless of whether there has been any usage during that hour.
Given all of the tradeoffs mentioned above, Reserved Instances make the most sense in a production environment, where instances need to always be “on.”
How ParkMyCloud Can Help Manage Your Reserved Instances
ParkMyCloud is an easy to use platform that allows users to automatically identify and eliminate wasted cloud spend. You can use the ParkMyCloud platform to fully optimize your non-production instances without committing to an AWS EC2 RI term that will go underutilized. The platform does this by scheduling, rightsizing, and identifying idle instances. Recently, we added the ability to view all your existing Reserved Instances in the platform so you can better track what commitments you have already made, with more optimization functionality coming soon.
With ParkMyCloud, you can create parking schedules that automatically turn EC2 instances on and off according to your specifications. ParkMyCloud provides customized parking recommendations based on criteria provided by the user, which makes identifying “parkable” instances easier – and you can automatically accept these recommendations if you like. Turning this into an automated process cuts down on time and costs, thus further optimizing your cloud environments. Another perk of ParkMyCloud is that the platform tracks costs, projected 30-day savings, and actual savings for the current month – giving you better visibility.
ParkMyCloud easily achieves EC2 savings of 50-73% with no annual commitment, upfront payment, or risk of instance termination or price cuts. In fact, we had a customer cancel a $10,000 order for AWS Reserved Instances in favor of EC2 instances that they could turn on and off after they found out just how easy and powerful this cost savings tool can be. Here are some of the advantages that come with using ParkMyCloud:
- Better savings
- No commitment or upfront payment
- Price cut protection
Try out ParkMyCloud for yourself and get started parking your non-production systems and RightSizing your resources to ensure that your environments are running in the most efficient way possible.