What do Amazon EC2, Microsoft Azure, and Google Apps have in common? They’re all cloud computing services, of course. But they share something else in common — each of these clouds has experienced periods of outages and slowdowns, impacting businesses worldwide that increasingly rely on the cloud for critical operations. And while there’s a great deal of publicity when these prominent public clouds suffer outages, it’s no less damaging to the business when an IT department’s private cloud goes off-line, even if it doesn’t make the news. It’s no wonder that according to analyst firm IDC, two of the top three concerns that CIO’s have about cloud computing are performance and availability.
Moving services to the cloud promises to deliver increased agility at a lower cost − but there are many risks along the way and greater complexity to manage when you get there. The following are five critical hurdles that you may face when implementing and operating a private cloud or hybrid cloud and how you can overcome them.
1. Will it work? How can you tell which applications are suitable for cloud and plan a successful migration?
Not every application is suitable for the cloud. And sometimes one part of an application is cloud-ready while other components are not. You need to identify the most suitable applications and components for migration, identify potential problems such as chattiness and latency that are amplified in the cloud, and create a performance baseline that you can test against after migration. With a clear picture of service dependencies and infrastructure usage, you can create a checklist that will ensure a complete and successful migration.
2. Performance – If you don’t know which physical servers your application is running on, how do you find server-related root causes when performance issues arise?
In fully-dedicated environments, we sometimes use infrastructure metrics and events to diagnose performance issues. But inferring application performance from tier-based statistics becomes challenging – if not impossible – when applications share dynamically allocated physical resources. To manage application performance in the cloud, you need a real-time topological map of service delivery across all tiers. Since the landscape is always changing, it’s essential that the dependency map is dynamically generated and automatically updated for every single transaction and service instance.
3. Chargeback – How do you know how much CPU your application is consuming in order to choose an appropriate chargeback model or verify your bills?
IT needs a new paradigm for assessing resource consumption in order to transition from a resource-focused cost-center to a business-service-focused profit-center. But traditional chargeback and APM tools do not collect resource utilization per transaction to enable business-aligned costing and chargeback paradigms. For the cloud, you need a solution that monitors consumption for every service across multiple applications and tiers, so you can accurately cost services, decide on appropriate chargeback schemes, and tune applications and infrastructure for better resource utilization and lower cost.
4. Not aligned with the business – How do you ensure that services are allocated according to business priority?
Clouds offer us new levels of dynamic resource allocation. However, to ensure that SLAs in the cloud are met, you must be able to prioritize the allocation of resources based on measurements of real end-user performance and an accurate view of where additional resources can truly alleviate SLA risks. To make that possible, you need a clear picture of resource consumption at the transaction level and business intelligence about the impact of each infrastructure tier on performance. Provisioning based on business priorities becomes even more critical as cloud architectures transition to a dynamic auto-provisioning model.
5. Over-provisioning – How can you right-size capacity and prevent over-provisioning that undercuts ROI?
Sharing IT infrastructure can be more efficient and cost-effective – assuming you have an accurate picture of resource usage for each service, an understanding of how that allocation affects SLA compliance, and the ability to prioritize resource allocation. In the cloud, a complete history of all transaction instances, including precise resource utilization metrics and SLAs, is essential for making intelligent decisions about provisioning. And with an accurate picture of resource consumption for each business transaction, cloud owners can plan future capacity requirements accurately.
Russell Rothstein is Founder and CEO, IT Central Station.