A Cloud Operations Manifesto
Cloud computing is a revolutionary new model for IT services delivery, allowing on-demand utility consumption that can be fully automated via software. Being able to obtain IT resources like hailing a taxi is an essential characteristic of cloud computing. With such new capabilities, cloud computing enables completely new business models, such as e-commerce flash crowd sales (e.g. Beyond the Rack) and massively parallelized compute work (e.g. modelling drug interactions) while enabling us to improve on old business models, allowing for better, faster and cheaper services. These new and improved cloud business models require a new operations model to succeed and be cost effective. We call this “CloudOps” and we built our company to focus on helping companies with this cloud operations transformation.
The DevOps movement has captured hearts and minds about what it takes to develop and deliver modern software applications (think SaaS) with new practices encouraging product teams to work together in an agile manner with shared responsibility for operational success. We find the practice of building and running the cloud infrastructure (IaaS and PaaS) that supports modern software development has its own characteristics and challenges, some shared with DevOps but some quite distinct from what it takes to succeed at the application layer of the cloud.
We believe that “CloudOps” is an emerging practice of continuous delivery and operations of cloud computing infrastructure, 24x7x365 with nonstop service, competitive performance and usability, and the scalability and security required for modern online services. Many people think the hard part is the architecture and implementation of cloud infrastructure, but we beg to differ. The hardest part is continuous, reliable operations that out-deliver on user’s expectations!
Here are 11 key success factors we have learned from our pioneering journey and now nearly a decade of cloud operations:
1. Be kind to the humans – cloud operations are hard on the operators, take good care of them or they will burn out, and unlike the machines they are not easily replaceable commodities.
2. Build like LEGO®, not like PLAYMOBIL® – you will benefit enormously from being able to evolve your cloud architecture piece by piece instead of requiring a rip-and-replace approach.
3. Own your destiny with open source – when it comes to orchestration and automation tools you need vendor neutrality, and open source will outlast all the vendors.
4. Automate all the things – automate relentlessly and yet with eyes wide open: be wary of Rube Goldberg machines.
5. Native API and multi-tenancy – to play a part in your cloud, all products should be API-first and designed natively for multi-tenancy. APIs and multi-tenancy cannot be simply bolted on after the fact.
6. Don’t blindly trust big vendors – their interests are rarely aligned with yours beyond the short term and we are certain you care deeply about the medium to long term. Be friendly with vendors, take full advantage of what they have to offer, but plan to replace them.
7. The network is the hardest problem – “compared to the cost of moving bits, everything else is free,” says Jim Gray. Respect the network, the speed of light isn’t getting faster but we store more data every day.
8. Expect the unexpected – monitoring in depth is critical because clouds are extremely complicated and show emergent behaviour, like living things, ecosystems and weather. During incidents you will need lots of tools to collect lots of data and run analytics.
9. Interchangeable commodity components – build everything you can with replaceable commodity components, beware uniqueness unless it is your own tech that helps you differentiate and compete.
10. 24x7x365: you will need to change the tires while rolling down the highway, so design for that. Test constantly for the ability to do so because it is very easy to lose this capacity and almost impossible to get it back.
THIS LIST GOES UP TO 11…
11. Customer-centric – the product is the service, listen to the business and the users constantly and use agile methodology to evolve your services to meet the changing needs and expectations of the consumers.
Cloud computing is a relatively young innovation, but in a rapidly accelerating world, it is already becoming table stakes for any modern competitive business. As the next decade of IT unfolds, and cloud computing becomes omnipresent, we expect the practice of cloud operations to develop and mature quickly. CloudOps is excited to be part of a global community helping with this transformation!
Featured image credit: barryovereem.com