by Paul Carmody of Internap
The cloud is an increasingly viable infrastructure deployment option for enterprises, but is it the right choice for all of your applications? Before you take the plunge, you need to realize there are fundamental differences between available cloud offerings, each with their own advantages and disadvantages.
To determine which model is right for you, you’ll need to evaluate your needs carefully. As you go through this process, consider the top five mistakes today’s organizations are making in cloud adoption, and how to avoid them:
Mistake No. 1: Leaping before you look - CIOs are under pressure from business to speed time-to-market of business critical applications, while simultaneously being squeezed to accomplish this with smaller staffs and shrinking budgets. The lure of the cloud is tempting, but rather than rush in, it is in your best interest to begin with a thorough audit of your IT needs to determine whether a cloud solution will truly help you meet your business goals.
Remember, the cloud is a means to an end, not the end in itself. You don’t want to throw an application into the cloud and not get the performance and cost improvement you are looking for. Moreover, not all clouds are created equal: Public clouds solve different problems than private clouds. Clouds based on open-source hypervisors may have fewer/different features than their VMware-based cousins.
Here are some considerations to keep in mind:
- Can the cloud deliver my applications with acceptable performance? Clouds abstract two key elements of performance -- hardware specifications and network performance. Therefore, it is not possible to prescribe certain levels of performance based on choosing hardware and network elements. Consequently, you need to gather empirical data on cloud performance by testing the provider you have in mind.
- Do I have any compliance considerations that restrict my ability to use shared infrastructure? Certain compliance regimes make it difficult to run an application in the cloud. For example, the PCI-DSS standards for credit card processing are explicit that firewalls must be used for security. Will your auditor permit the firewall to be cloud-based?
- Will the cloud meet my availability requirements? As with performance characteristics, cloud availability is an empirical attribute. Cloud providers offer service level agreements (SLA), but they often do not disclose how their clouds are architected. Therefore, it may be difficult for potential customers to calculate likely availability. In contrast, with dedicated environments, it is possible to specify redundancy at various levels of infrastructure to achieve the availability required.
Mistake No. 2: Thinking that you have found the one - Choosing a cloud provider is not like marriage: You may want to have the opportunity to change providers later on. Thus, it is very important to consider how you intend to manage your cloud infrastructure, and establish a Plan B based on this information. Will you use application programming interfaces (APIs) to manage your cloud infrastructure? If so, will the APIs you use be proprietary to the provider or are they common across multiple providers?
Proprietary APIs may have more functionality however multi-vendor interfaces such as OpenStack and VMware can allow more flexibility to change providers without having to rewrite code. The same considerations should be applied to images and data. In the event that your service provider has a system outage, or raises rates without warning, you will need to know your options so that you can act quickly.
Mistake No. 3: Believing that tomorrow will be like today - The cloud may be what you need today, but in all likelihood, it won’t be the only thing you need tomorrow. For example, many of today’s Internet businesses were started in the public cloud?
As they grew, they reached application bottlenecks or economic break-points that caused them to move some infrastructure into a managed hosting or colocation facility. Similarly, some enterprises have attempted to put their infrastructure into the cloud, only to find out that significant portions of their business need to reside on dedicated physical hardware.
Because managing multiple providers is complicated (and switching providers is painful) you need to have a vendor strategy that contemplates your IT needs now and in the future. Map out growth projections for major applications and stay abreast of your company’s strategy and how it relates to IT infrastructure demand. Those data points will help you to make intelligent choices about cloud providers.
Mistake No. 4: If it fits, it ships - Don’t make the assumption that every cloud supports your most complex applications. Take a close look at how your business-critical applications are architected. Are they complex or highly-customized? If so, they may have requirements that are not supported by the cloud.
For example, many applications are multi-tier and require Layer 2 (vLAN) connectivity to work properly. Most clouds support Layer 3 (IP addressing) connectivity, but not necessarily multi-tier Layer 2 topologies. In addition, there may be specialized appliances required that are not available in the cloud. If your application requires a physical indexing appliance or specialized firewall, you may have difficulty incorporating dedicated hardware with cloud components.
If you have any of these complex needs but still want to use the cloud, look for a provider who can enable hybrid hosting between cloud and other IT infrastructure choices such as managed hosting and colocation, or your company-owned datacenter.
In general, the cloud is best at handling applications that scale horizontally, have limited application tiers, and are constructed to communicate on Layer 3.
Mistake No. 5: Not leveraging the full potential of the cloud - The cloud is a tool that opens up new possibilities for your business, but you won’t be able to reap the benefits unless you adopt a new way of thinking. Don’t limit yourself by assuming that what’s led to success in the past can and should be repeatable in the cloud.
For example, make sure that you are optimizing your virtual machines (VM) for the cloud, rather than sizing them based on previous physical specifications. While you’re at it, be sure that you are leveraging the on-demand aspect of the cloud to deal with the “bursty” parts of your application.
A significant benefit of cloud computing is the ability to scale services on-demand, and pay per use; eliminating the need to make expensive capital investments for hardware that is underutilized to accommodate spikes in demand.
Furthermore, investigate whether you’ll be able to create a test/dev, staging, and production environment in the same cloud to streamline design and implementation. This, too, will save the time and cost of moving final product to the cloud, speeding time to market for your applications and ultimately allowing your organization to reap the benefits of cloud computing for competitive advantage.
The cloud is a powerful evolution of IT infrastructure outsourcing options. It offers the promise of rapid scalability combined with pay for use billing, while also removing the headache of specifying and managing physical infrastructure. At the same time, the cloud still has important caveats that should be considered.
Before making the leap to putting your apps in the cloud, understand that cloud is a means to an end. A move to the cloud is only successful when you have happy customers and end users.
Paul Carmody is senior vice president of Product Management and Business Development for Internap, a provider of intelligent IT Infrastructure services that combine a unique trio of route-optimized enterprise IP, TCP acceleration and a global content delivery network improves website performance and delivers superior end-user experiences.