• No results found

10 best practices for saving money on IaaS

N/A
N/A
Protected

Academic year: 2021

Share "10 best practices for saving money on IaaS"

Copied!
11
0
0

Loading.... (view fulltext now)

Full text

(1)

10 best practices for saving money

on IaaS

Paul Burns

(2)

10 best practices for saving money on IaaS

10/14/2014

TABLE OF CONTENTS

1. EXECUTIVE SUMMARY

2. STEP BY STEP GUIDE TO A LOWER-COST CLOUD 3. KEY TAKEAWAYS

4. ABOUT PAUL BURNS

5. ABOUT GIGAOM RESEARCH 6. COPYRIGHT

(3)

Cloud computing, particularly infrastructure-as-a-service (IaaS), is well known for producing benefits such as scalability, flexibility and agility. However, the benefit of cost savings remains controversial at best. Some claim that cost reduction is inherent to cloud computing, while others claim that it raises costs. The reality is simply not that black and white.

To be clear: Cloud computing may or may not result in cost savings when compared to traditional IT, depending on myriad variables.

What can be said with a high degree of certainty is that IT organizations are using IaaS heavily and the cost of cloud services factors in their decision to select the cloud provider. Simply put, cloud adopters want to use IaaS and they don’t want to pay more than

necessary.

CIOs and other senior IT leaders have a growing responsibility to ensure that the right steps for cost savings and optimization are understood and applied to the right IT processes throughout their organizations. The best practices outlined in this report serve as a guide to achieving these savings. This report focuses on the clear and practical steps you can take to optimize cloud spend and get the most value for your dollar.

Not every organization will be able to implement all of the steps described here. However, it is expected that following these best practices will contribute greatly to optimizing your cloud spending. If you follow these steps, you will save money on IaaS.

(4)

Step by step guide to a lower-cost cloud

Write elastic applications that auto scale

When writing a new application, it’s important that you design it specifically to take advantage of cloud capabilities such as elasticity. This means taking time up front to ensure your application automatically scales both in and out based on fluctuations in demand. Otherwise, you’ll end up paying just as much to run your application when no one is using it as you pay during peak demand. Not all applications can be designed this way, but those that can will not only reduce public cloud spend but also enable businesses to run applications in a public cloud infrastructure at lower cost than running them on-premises. Note that applications designed to auto scale often benefit from continuous improvement that leads to more savings. Therefore, incremental cost saving refinements are possible.

Deploy applications to the cloud that only need to run periodically

While some applications run all the time, others – such as payroll and accounting

applications – only need to run periodically. In a traditional on-premises environment (as opposed to an on-premises private cloud), these applications typically reserve the

resources they need on a more or less permanent basis. Reserving a dedicated server – or even just the RAM and CPU needed to run the application in a virtual machine on a dedicated server – wastes precious capacity, when not used. You can achieve cost savings by running these applications in a public cloud, and only turning on instances when needed. Your initial savings will come in the form of greater on-premises capacity. You will then achieve real savings in your next purchase cycle by avoiding spending on new on-premises capacity.

Choose the pricing model that yields the greatest cost savings

Different service providers use different pricing models. Additionally, some providers give their customers multiple pricing models to choose from. Choosing the model that best fits your application requirements can yield significant savings.

▪ Reserved instances rather than on-demand. If you know your application will run on an ongoing basis, it doesn’t make sense to choose an on-demand pricing model. Instead, you should commit to using reserved instances since they are cheaper than on-demand prices. With some providers, if you decide you no longer need a reserved instance, you can sell it. In the case of AWS, unneeded instances can be sold on the Reserved Instance Marketplace (currently in beta) to recoup some of the cost. Sellers

(5)

can name any price on their instance (although they are not guaranteed to sell at that price), and pay a 12% service fee. Buyers acquire the remaining time on the contract and get their reserved instance at a competitively discounted price.

▪ Price reductions for sustained usage. On-demand and reserved pricing models both have trade offs. With on-demand pricing models, you don’t have to commit to using instances for an extended time period, but you do pay more per hour. With reserved instances, you pay less per hour, but you must keep paying even if you stop using the instance (unless you resell). Google has taken the best elements of both of those models by offering customers a discount for sustained usage. Prices automatically get cheaper as you use Google instances, so you save money and maintain flexibility. Keep an eye out for other providers to implement automatic price reductions. ▪ Auction pricing. Auction pricing allows customers to bid on instances in an open

marketplace. When supply is high and demand is low, bargain prices can be found. However, caution is needed to benefit from this approach. For example, in the case of AWS spot instances, if prices go higher than a customer is currently paying, the customer will lose the instance. Some workloads will not tolerate an interruption like this. Similarly, when workloads must run within a set timeframe, customers risk paying higher prices. While there are risks to consider, auction pricing can work well for workloads that run infrequently or have flexibility as to when exactly they run. Also be sure to optimize any bidding strategy to avoid overpaying.

▪ Per-minute pricing. Some applications and processes only need to run for a short duration. For example, big data analytics are often performed by hundreds of

instances running for only an hour or two. Most service providers charge by the hour, but a few – such as ProfitBricks – use per-minute pricing. In this case, there is a significant cost advantage from using a per-minute service for a little over an hour rather than a per-hour service that would charge for a full two hours.

▪ Variable pricing. Prices tend to vary dramatically among service providers, and similar services are often priced very differently. Therefore, you can end up paying more for a service without getting any additional value. To get the best value, be sure to shop around for the best prices.CloudVerticalis one company that offers detailed price comparisons among major cloud providers, including AWS, Google, Rackspace, Microsoft and HP. Other services, likeCloudoradooffer more basic comparisons, but list pricing among both large and small service providers.

Compare price/performance ratios

Service providers price their compute instances in complex ways, therefore, making it difficult to decipher and compare pricing models.

(6)

▪ Instance price/performance. Choosing a lower-priced instance may not actually mean you’re saving money. Applications require sufficient infrastructure performance to deliver a high quality of service. If a lower-priced instance doesn’t deliver the necessary performance, you’ll need to upgrade and pay more anyway. So, make sure you compare actual performance levels – not just CPU and RAM measurements – in relation to cost when you choose an instance. When deploying and delivering

applications, consider whether it makes sense to run more instances that have better price/performance or fewer, more costly high-performance instances.

▪ Provider price/performance. Price/performance ratios don’t just vary between instances; they also vary significantly between providers. Two providers with similar prices can offer vastly different price/performance ratios. Some tools, such asCloud Spectatorand theCliqrPrice-Performance Index, offer detailed price/performance comparisons that can help you get the most performance for your money.

Choose the right cloud for your workload

Different clouds will suit different application and workload requirements. For example, an inexpensive commodity cloud with inconsistent performance may be acceptable for a development and test environment. On the other hand, production-level applications that require consistent performance (typically because they were not originally designed to adapt and adjust to performance inconsistencies found in many public clouds) will need a cloud that is designed to support a high level of consistency. Performance consistency varies among cloud providers. For example, one IaaS provider may offer stronger support for compute-heavy instances, while another may be better for IO-heavy instances.

Right-size your instances

Cloud-native applications are designed to take advantage of elasticity in IaaS

environments. As demand increases, these applications request additional infrastructure resources in order to maintain performance. As demand decreases, they decommission resources to lower spending. In contrast, static applications are unable to adjust resource consumption on their own. Since insufficient resources lead to poor service levels, static applications must be provisioned to meet peak demand requirements, leading to wasted resources and higher IT costs. Some tools, such asCloudyn, integrate with AWS to offer recommendations on matching workloads to the right instance type and size, so you can reduce costly overprovisioning.

Track and manage cloud resources and spending

One of the best ways to save money on an on-going basis is to track your cloud resources and spending.

(7)

▪ Manage utilization. For traditional IT, there are asset and capacity management tools that help squeeze the most out of owned resources. Organizations using public clouds need the equivalent capabilities for their cloud instances. Controls need to be in place to avoid purchasing new instances when other resources are already available. This should include a mechanism for sharing available cloud instances within the organization. For example, a team may reserve an instance and then complete their work early. Rather than let it go to waste (or potentially sell it at a loss), another team may wish to use it. Also keep in mind that some cloud providers allow reserved instances to be resized without penalty. The IT organization as a whole may be able to make better use of a resized instance. Finally, don’t forget that instance prices can vary by data center location, time of day, and time of year. Be sure to run instances in optimal locations and at optimal times.

▪ Management tools. Spending management tools, from companies such as Cloudyn andCloudability, are extremely useful for monitoring and controlling spending. These tools allow you track and analyze your costs, so you can make improvements that result in lower spending. Some IaaS clouds have built-in spending management tools that produce real savings. Third-party tools often have additional features and advantages that easily pay for their cost.

▪ Automation. If left to memory, ongoing cloud resource management is not likely to be optimal. Whenever possible, use some form of automation to ensure ongoing resource optimization. This may come from third-party tools, services offered by cloud providers, self-managing applications or even home-grown tools.

Consolidate workloads on instances

When a single application is deployed on a cloud instance, it is not likely to use the full capacity available from the instance. As discussed above, some savings can be achieved by reducing overprovisioning. Still, any time that resource consumption drops below peak levels, some resources are wasted. Cloud service providers themselves have extremely high utilization rates, getting the most they can from each physical server. However, as a cloud customer, your goal is to get the most from your instances. Since you’ve already paid for these resources, everything you don’t consume is wasted. To get the most from your instances, you can take a page out of the old virtualization playbook. In the world of physical servers, virtualization increases resource utilization by enabling many applications to run simultaneously on the same server, resulting in higher overall utilization rates. In the public cloud world you can increase instance utilization by placing multiple applications on a single instance using containers. A solution such as

Ravellolets you do just that. Running multiple applications in containers on a larger cloud instance can yield much greater utilization and further cost savings.

(8)

Own the base, rent the spike

Traditionally, IT organizations have purchased aggregate resources (the total IT resources they own, not just individual servers) to meet their peak demand requirements. While this generally made sense in a pre-cloud world, cloud computing introduces a new dynamic. Instead of wasting money on resources you barely use (e.g. those extra servers lying around “just in case”), you can follow a two-step process. First, purchase the lowest amount of dedicated resources needed to keep things running during low or baseline conditions, and second, provision additional resources from a public cloud to cover any unforeseen or temporary needs. The trick is to keep your owned resources fully utilized and use temporary cloud resources to handle any spikes.

Some applications don’t belong in the cloud

You won’t save money simply by moving all your applications to the cloud. It costs money to migrate, and without a sufficient redesign, some applications might not work as you expect. If you have an application that already runs fine in your data center, and there is no measurable benefit from migrating, you shouldn’t move it.

(9)

Key takeaways

Cloud computing presents many new opportunities for IT, including increased agility, elastic application deployments, and on-demand capacity and performance. A common misconception is that public cloud services will deliver all these benefits with an

automatic associated cost savings. Reduced spending is indeed a common goal shared by most cloud adopters, but cost savings can be elusive and difficult to achieve unless you understand the required best practices.

CIOs and other senior IT leaders have a growing responsibility to ensure that the right steps for cost savings and optimization are understood and applied to the right IT processes throughout their organizations. The best practices outlined in this report serve as a guide to achieving these savings. CIOs and IT leaders can also further refine these best practices to support their individual IT strategies. For example, they can staff

projects to determine which applications in their portfolio will benefit from the cloud, and they can set guidelines for balancing on-premises and public cloud spending.

IT leaders must also ensure that each appropriate IT function and role involved in cloud computing does its part to optimize spending. For instance, software development teams need to design and develop applications that take advantage of elasticity, and operations teams need to choose the best deployment model for each application, whether physical, virtual or cloud. On the business end, financial staff must insist on an appropriate level of diligence on price comparisons and choice of cloud pricing models. When appropriate, financial managers should consider spending on cloud-oriented financial management tools.

Remember, cloud computing doesn’t always lead to cost savings, and you won’t

necessarily save money by running every application in the cloud. In fact, businesses that don’t approach public cloud carefully can end up spending much more than they

intended. What you can and should do is optimize your IaaS spending to achieve the most cost-effective approach to your IT initiatives.

(10)

About Paul Burns

Paul Burns is a Gigaom Research Analyst and the president and founder of Neovise, an IT industry analyst firm launched in 2009 to focus on cloud computing. Burns also writes articles for industry publications, speaks at industry events, and is quoted by a variety of media organizations.

Burns has over 25 years of experience in the IT industry, driving strategy for enterprise software solutions through product management, competitive analysis, and business planning. He has held a series of leadership positions in marketing and R&D, and he was research director of the IT service management practice at another industry analyst firm. Burns earned both a B.S. in Computer Science and an M.B.A. from Colorado State University.

(11)

About Gigaom Research

Gigaom Research gives you insider access to expert industry insights on emerging markets. Focused on delivering highly relevant and timely research to the people who need it most, our analysis, reports, and original research come from the most respected voices in the industry. Whether you’re beginning to learn about a new market or are an industry insider, Gigaom Research addresses the need for relevant, illuminating insights into the industry’s most dynamic markets.

Visit us at:research.gigaom.com.

© Giga Omni Media 2014. "10 best practices for saving money on IaaS" is a trademark of Giga Omni Media. For permission to reproduce this report, please contact research-sales@gigaom.com.

References

Related documents

The finding of our research impact of packaging on consumer perception and purchase intention show that the packaging are important element for the consumer buying behavior

This paper reports levels of PCDDs, PCDFs, dioxin-like PCBs, and ndl-PCBs in fish that were collected from the Polish Baltic fishing areas.. The aim of this study was

In this article, we derive the asymptotic distribution of the test statistics based on U -statistic theory, and this approach allows us to investigate the power of our proposed

 Logo inclusion in pre-event email blasts  Logo on event website with hyperlink  Onsite Participation and Promotion:.  Speaking

We assessed whether the CB1 receptor neutral antagonist, NESS0327, would modify the cognitive deficit observed in the Fmr1 KO mice (Figure 4 A), in a similar manner to rimonabant,

As I mentioned previously, maintaining appoggio, in association with proper posture, has more to do with the coordination of the muscles in the vocal tract (the chest, the upper

Let us now return to the anonymous Times reviewer and his observation that in the Biblical Songs, Dvořák set psalms in ‘anything but a conventional manner.’ 1 As I have shown, the

To determine sRNA enrichment in candidate cis-NAT loci, reads from the cassava libraries were mapped onto the over- lapping genomic regions of complementary gene pairs (i.e.,