The public cloud is a fantastic environment for critical web applications. Web apps running in the public cloud should be built from the ground up to take advantage of the distributed, highly available and uncoupled services offered by the public cloud. These cloud applications are developed in such a way that they are said to be “designed to fail.” However customers can often be confused as to what “designed to fail” actually means. This is why it's important to understand the narrative around this phrase when choosing the appropriate cloud environment for your workloads.
Pet v Cattle
The best way to start is with the 'pet' and 'cattle' workload analogy. For those who are unfamiliar with it, the phrase neatly details the type of cloud environments that individual workloads are suited to, based on their technical value. One of the first organisations to use it was the scientific organisation CERN when it mapped out how it was going to manage its thousands of servers more efficiently.
A 'pet' is a workload of high value. If this workload was to fail it would have a severe impact on your business. An example could be a standalone payroll application, middleware or a VoIP PBX. These workloads commonly fit in an IT services environment where native clustering is not available or simply hasn't been implemented. These workloads require care and undivided attention to ensure they achieve maximum availability – just the same as your family’s much-loved dog. These are the workloads that keep you awake at night. As CERN put it, “when they get ill you nurse them back to health.”
The workloads that we designate as ‘cattle' are the ones that are built for the public cloud with the core architecture being highly available, uncoupled services running at scale. An example of a ‘cattle’ workload would be a large scale web application where workloads are horizontally auto-provisioned on demand. The overall platform availability is completely abstracted from the underlying workload so in the event of a single ‘cattle’ failure the service continues to operate - the ‘failed’ cow is simply removed and replaced by one that’s in full health without any knock-on effect to operations- this is the nature of being “designed to fail.”
So, with this in mind, where should you put your workloads? It is accepted that public cloud is the future and that all roads are leading to Software as a Service. The reality however is that the majority of IT pros know that some or even all of their workloads are not yet ready for the public cloud – they are not yet “designed to fail.” There is an intermediate step required on their journey because their legacy applications are holding them back. These legacy applications are vertically database intensive, they are not coded to understand read replicas, utilise message queues or leverage decoupled session or caching tiers. The intermediate step required is the hybrid cloud.
The hybrid approach
Hybrid gives you the best of both worlds, where the value of each individual workload is reflected in its appropriate running environment, enabling public and private clouds to work together as one.
The power of the hybrid approach is significant. Delving into the architecture of a hybrid multi-cloud allows IT pros to balance the reliability and performance of a rock solid VMWare or Hyper-V backed private cloud for their critically important ‘pets’, while harnessing the flexibility, scalability and cost savings of the public cloud for their ‘cattle’ workloads, be that Amazon Web Service, Microsoft Azure or Google.
As multi-cloud architecture consists of two or more cloud solutions working as a heterogeneous platform, the design itself adheres to the fundamental architecture of decoupled cloud services delivering the most flexible and highly available solution for critical and non-critical workloads.
Creating an IT architecture that balances both critical and non-critical workloads is the best road towards full public cloud use where every workload is “designed to fail.”
By Andrew D Sinclair, Technical Solutions Architect, iomart
To discover how iomart can design, build and implement the right cloud environment for your workload requirements learn more about our hosted cloud services.