Many organisations claim that they have migrated to the cloud. When you ask them how, they tell you they forklifted the VMs as-is into a private or public cloud platform. Congratulations! You are on the cloud, but are you really leveraging the cloud computing capabilities?
In the case of public cloud, the on-demand provisioning capability could be useful for dev/test servers, but how often will you switch a production server off in order to save computing costs?
In these cases, where your on-premise infrastructure has effectively just been replicated, the cloud platform is merely used as a virtualization platform in the case of private cloud, or, in the case of public cloud, a virtual co-location/server hosting facility (which can potentially reduce TCO by cutting data centre costs).
And from IT operations management perspective the cloud platform could be counter-productive because of the potential absence of VM management features that standard virtualization platforms provide such as live migration and comprehensive snapshotting.
A true cloud platform offers an abstraction/virtualization layer, a set of building blocks, and an API. Cloud computing is all about leveraging this API to combine the provided building blocks and build a custom solution that can be elastic, scalable, and highly available if it has been designed correctly.
A critical success factor for such a design is loose coupling, where the main components of a system are independent from each other and communicate with each other through well-defined interfaces and protocols. Therefore, they can be autoscaled horizontally based on demands and independent from each other.
SOA systems are inherently ready to be migrated as-is to the cloud and leverage cloud computing capabilities, but many systems need to be deconstructed into loosely coupled components in order to be migrated to the cloud and reap the cloud computing benefits of elasticity, scalability, high-availability, and agility.
The bottom line is if a server runs on the cloud it doesn't mean it's leveraging the cloud computing capabilities.
Abraham Alawi is a solutions architect and DevOps engineer who has worked across a number of prominent Australian enterprises.