Testing Cloud Apps and Verifying SLAs: Two Sides of the Same Coin
Enterprise apps are like sports cars: they promise sleek efficiency, but require the right environment to perform optimally. An app may perform well on an enterprise LAN, but will it perform the same when it is deployed in the cloud?
The topic of cloud migration typically sparks conversations around its advantages such as cost savings, productivity and efficiency. However, evaluating the application’s fitness for cloud migration, the most important part of the discussion, is mostly left out. The problem is the underlying assumption that most enterprise apps are ‘cloud-ready’.
As tempting as it may be, don’t just take your vendor’s word on that. What is a ‘cloud-ready app’ for the vendor may not necessarily meet your business’s performance requirements when the app is deployed in the cloud. You must test application performance and negotiate Service Level Agreements (SLAs) with your application vendor before you deploy in the cloud to ensure that the path forward is smooth. If not, that seemingly great app could spell disaster.
Testing Cloud Readiness of Your Applications
There are many challenges involved with deploying enterprise apps in the cloud. It’s up to the IT manager to anticipate those challenges and workout solutions for smooth migration and operation.
Unfortunately, determining if an app is cloud-ready is not as simple as following five easy steps. What is an easy process for one app might be a time-intensive test for the next app. Your best course of action is to evaluate each app thoroughly before transitioning to the cloud.
Every app has different susceptibilities to network. Real-time applications such as VoIP, for example, will be more susceptible to impairments than email. You must employ network emulation tools that can conveniently produce a variety of network impairments, under controlled and repeatable conditions, to evaluate the performance of proposed applications under real-world conditions.
Vetting SLAs is Just as Important
All cloud vendors have defined SLAs, yet it would be dangerous to assume that a given SLA meets the requirements of your organization. As egregious as Amazon’s four-day 2011 outage was, it did not violate their SLA for EC2, for example.
Review the SLA carefully. Think of any situation that could negatively affect your business. The service level definitions should establish minimal performance requirements for the key variables that will impact service quality, such as packet delay and jitter.
Testing the applications using a network emulator allows you to see exactly how the apps you already use on your LAN will perform in the cloud. The emulator is capable of simulating real-world cloud conditions thereby taking guesswork out of your cloud deployment. Using network emulators, you can uncover a variety of unforeseen issues that may arise post migration and in turn can help shape the SLA.
Negotiating SLAs before Migration
It’s in your best interests to negotiate with the vendor an SLA that meets or exceeds your criteria ahead of time. Testing applications with the network emulator allows you to effectively determine the minimum application performance requirements for your business – then mandate this in the SLA.
With every subsequent update to the app, go back and review existing SLAs for adequate coverage. These simple but necessary steps can prevent embarrassment for your organization due to poor app performance in an event something goes wrong.
Conclusion
App deployment in the cloud is a high risk, high reward proposition. Savvy IT managers test out cloud apps and negotiate SLAs with vendors to minimize the risk of a disastrous cloud deployment and reap the rewards of cloud migration.
Want to learn how applications perform on the network — even under adverse network conditions?