Put simply, Cloud is a consumption model that provides a business the option of having its applications and underpinning compute and storage technology, delivered as a service, by a service provider, paying only for what it uses, when it uses it. We believe it is also the way in which all new applications will be delivered in future, and is a fundamental enabler for Mutable Business, i.e., having the agility and flexibility to constantly evolve based on rapidly, and constantly changing market forces.
The services can be delivered in a public cloud, where you share resources with other customers, or in a private cloud where the services you use are not being shared with other customers. The service provider might be one of the global hyper-scalers like Amazon Web Services (AWS), a smaller, regional cloud provider or, importantly, in-house IT operations departments that have been organised as a profit centre delivering on-demand, pay-as-you use services to other departments from existing company datacentres.
Why is it important?
Cloud is a key technology enabler for Mutable Business. It has created an environment that has encouraged and spawned a huge array of new development and management capabilities that enable businesses to bring new products to market faster and also to create completely new, disruptive business models. Even the smallest start-up businesses can now provision the latest technology and scale up as required without heavy, up-front capital expenditure. Companies as diverse as Uber, AirBnB and Netflix would have been unlikely to disrupt the markets they entered without the availability of Cloud computing.
Cloud has become an almost ubiquitous term for any IT service delivered over the Internet. This is somewhat unhelpful as there are some strong underlying technologies and approaches that make the Cloud what it is and that are important to understand.
There are 3 foundational services that you might visualise as a hierarchical stack, upon which most, if not all, cloud services are developed and delivered.
At the bottom of the stack there is Infrastructure-as-a-Service (IaaS). This consists of the compute and storage hardware upon which you can develop and run applications. This includes utilising existing mainframe technologies, which we now term Enterprise Server 3.0, that have continued to evolve to deliver cloud services very effectively. The cloud service provider (CSP) owns the hardware and rents compute cycles and storage volumes to the business on a pay as you use basis. It is the responsibility of the business to provide the development tools and applications that sit on top of the hardware and, in some instances, the operating system itself.
At the next layer up there is Platform-as-a-Service (PaaS). This is aimed very much at developer communities who are looking to write applications without having to worry about buying, supporting and maintaining a range of development tools or, in some cases, even think about the underlying hardware. Given its focus on development it is perhaps not surprising that different flavours of PaaS have emerged aimed at particular technologies, like the Internet of Things (IoT) and Artificial Intelligence (AI).
The top layer is Software-as-a-Service (SaaS). Here, the business rents the business application. A good example would be Salesforce. The business does not have to consider provisioning compute and storage resources. Salesforce effectively becomes responsible for managing the PaaS and IaaS layers.
Cloud would not be possible without the advent of software-defined infrastructure
Server virtualisation was an important early enabler of cloud computing. The abstraction of control functions away from the hardware or firmware and into software, enabled not only improved server utilisation, but the ability to run what were proprietary operating environments on (cheaper) industry standard processors. Similar approaches have been taken with storage and, more recently, networking, where again, software abstraction of the control plane enables industry standard hardware to be used where once expensive, proprietary storage arrays or network devices had to be used. In some cases, for example in load-balancers, the functionality, previously deployed in hardware can now be completely delivered in software.
The benefits were not only about cost reduction. Reconfiguring network switches to deal with changes in the business, or changing data storage functionality, can now be achieved with automated software updates rather than more complicated firmware upgrades or even completely new equipment. This allows businesses to react to changing needs in a far more agile manner.
Big Software – much more than software abstraction and DevOps
Highly sophisticated software, driving increasing velocity and agility in IT, at a lower cost leads us to the concept of, what we at Bloor and others call, Big Software. The role that Big Software plays becomes even more important as we look at how the Internet of Things (IoT) and rapid developments in Artificial or Augmented Intelligence (AI) and Machine Learning (ML) are driving huge growth in storage, networking and processing needs.
Big Software is key in enabling all IT to be consumed “as-a-service”. IaaS where you provision the compute and storage capacity where, when and for how long you need it. PaaS that provides both the compute and storage capacity and a complete software development environment that reduces the complexity of using and managing multiple software development tools. And Software-as-a-Service where, to put it simply, you rent applications and all the infrastructure needed to run them.
The challenge facing CIOs and CTOs in traditional “physical” businesses has been how to adapt at pace while keeping their existing legacy systems running. Cloud and Big Software offers the opportunity to break out of the restraints of old IT architectures and certainly provides a wide range of solutions and capabilities designed to increase speed and agility, while reducing costs. The at pace point is now critical. The speed of change is such that unless I.T. can support business in a state of continual change, in our terms a Mutable Business, there is a real threat to that business’ survival.
However, the question remains “how do I get there from here?” Firstly, the understanding and support of the Board is vital. Secondly, an IT vision and strategy are needed that closely align with the business vision and strategy of the organisation. And thirdly, the CIO and the CTO need to develop their IT workforce and provide additional skills and experience where necessary.
The Cloud is an ever-changing environment driven by a large open systems community of developers who bring forward new capabilities at a dizzying speed. This has created increased complexity and there is now considerable focus on cloud management technologies. This speed and complexity has created scenarios in many businesses where expected cost savings using cloud have not been realised; indeed, costs have run so far out of control that cloud appears to be costing more than the old legacy systems they were designed to replace. There is an emerging trend called FinOps which combines cloud cost optimisation technology with the sort of cultural change seen in DevOps environments, now applied to finance teams working in a tightly integrated way with development and operations teams to ensure that the business optimises the return from cloud investments.
Increased velocity and complexity in the cloud, due to extensive use of containers and micro-services, has been presenting some agility and flexibility challenges to traditional load balancers and firewalls as they struggle to deal with changing performance and security requirements. While Kubernetes hogged the limelight for emerging trends in the last few years, it has now effectively become a de facto standard for container orchestration and management. Service Mesh, an infrastructure layer that manages communications and security between all micro-services (and interfaces to legacy systems) is rapidly becoming a more agile way of managing both performance and east-west security inside the cloud perimeter.
Specialist clouds are growing in popularity. Some are vertical, like IBM’s Cloud for Financial Services. Others are bringing High Performance Computing (HPC) for processor intensive applications like AI, out of the private data centre into the public cloud arena, democratising the development of new AI models.
Provision of Public Cloud services is dominated by the three global Hyperscalers, Amazon Web Services (AWS), Microsoft Azure and Google Cloud Platform (GCP). There are key regional players like TenCent in China and OVH in Europe. IBM has a reasonable public cloud market share but becomes far more of a player when you are looking at Private and Hybrid-Cloud environments. Oracle has also made considerable strides in these areas over recent years.
A large majority of software vendors have made their applications available as-a-Service in the Cloud. The major players include Salesforce, Microsoft, Google with its G-Suite, alongside newer cloud native companies like accounting software company, Xero, Zoom, Shopify, Slack and many others.
The PaaS market splits between the PaaS offerings of the Hyperscalers, IBM/RedHat Openshift and Oracle, and nominally independent platforms such as Mendi, Cloud Foundry, Platfom.sh, Zoho Creator, Dokku and Engine Yard.
There is a very large, vibrant open-source community of vendors providing tools and services for all aspects of cloud development. May of their products find their way into the platform offerings of the major vendors, as well as being used extensively and directly by developers and some enterprises.