Cloud computing is the on-demand delivery of IT resources over a network. In traditional data centres, compute and storage resources used to be allocated manually by a dedicated IT team. In the cloud, this process is fully automated, leading to increased agility and significant cost savings.
Cloud computing is a de facto standard for modern data centre implementation and a foundation for cloud-native application deployments. It is used by the majority of organisations worldwide. There is no reason why yours shouldn’t be next.
cloud computing work?
In essence, cloud computing is a modern way of delivering IT services for organisations and individuals. It hides the entire complexity of a data centre from an end user behind a self-service portal.
The name "cloud computing" comes from a common practice of representing complex IT systems on diagrams as a cloud. Modern data centres are complex. They consist of racks, power devices, network devices, servers, storage arrays, cables and many other components. The end user does not need to understand all these intricacies. All they need are resources that can be consumed quickly and on demand. Cloud computing abstracts all these complexities, turning the data centre into a resource rental store.
Underneath, cloud computing uses numerous technologies, including virtualisation, containerisation and automation. At the heart of the cloud computing stack, there is cloud management software. This software manages compute, network and storage resources distributed across the entire data centre, aggregates them into pools and enables on-demand provisioning of resource chunks through a self-service portal. End users can request those resources to be provisioned in the form of virtual machines (VMs) or containers.
Even though cloud computing uses virtualisation underneath, it is much more than that. While virtualisation is more like an engine, cloud computing is more like a car.
People who are new to cloud computing often get confused with the cloud computing vs virtualisation dilemma. Virtualisation is a technology that divides the physical resources of a server, such as the central processing unit (CPU), random access memory (RAM), storage and network, into chunks. Those can further be aggregated into VMs, consisting of virtual resources and allocated to end users. Hardware virtualisation, VM creation and termination is handled by a dedicated software, firmware or hardware component called a hypervisor.
In turn, cloud computing expands the capabilities provided by the hypervisor. The cloud software manages all the hypervisors and automates the VM provisioning process. Whenever a cloud user requests a VM with specific parameters through the self-service portal, it tries to find the least utilised hypervisor (unless configured otherwise), schedules VM creation on this hypervisor and returns VM details back to the user. Likewise, it automates the creation of other types of virtual resources, such as block storage devices, virtual networks, and more.
In cloud computing, all resources are available on-demand. Users can get instant access to them whenever desired and terminate them when no longer needed.
Significant time savings
In legacy IT infrastructure, the resource provisioning process takes days or even weeks due to numerous manual actions. In cloud computing environments, the resource provisioning process takes minutes, if not seconds.
Faster time to market
Building a data centre might take a lot of time. In turn, public clouds provide businesses with immediate access to theoretically infinite resources. This removes any constraints from developers and accelerates the time to market.
Optimal resource consumption
In traditional data centres, physical resources are owned by dedicated entities leading to sub-optimal resource consumption. In the cloud, all resources are shared and equally distributed, leaving no single server underutilised.
Long-term cost savings
Cloud computing can deliver long-term cost savings for every organisation. The cloud enables executives to focus on the business strategy, developers to focus on business applications and IT staff to leverage automation rather than wasting time on manual processes.
Cloud computing challenges
While cloud computing brings a number of benefits, migrating to the cloud also entails a number of challenges. Those include:
While there are many migration-as-a-service tools available on the market which facilitate lift and shift migration, moving production workloads to the cloud might still be challenging. Fortunately, various cloud migration strategies exist which enable organisations to move to the cloud while ensuring the availability of their critical applications.
Even though it is possible to just lift and shift legacy workloads to the cloud, organisations often have to re-design their workloads in the long term to benefit from all advantages of the cloud. Some take it as an opportunity to standardise on a cloud-native architecture which leads to higher granularity, better scalability and increased resiliency.
Moving all workloads and data to the cloud results in digital sovereignty risks. Moreover, in some parts of the world, it might be impossible due to local regulations. In response to this challenge, organisations can build their own private cloud, taking back control over privacy while benefiting from all the advantages that cloud computing brings.
Is cloud computing suitable
Cloud computing proves to be the most economical way to run modern business applications. Therefore, it has been adopted by the majority of organisations all over the world. However, achieving cost optimisation in cloud environments is a non-trivial task. It involves adopting cloud cost optimisation best practices, running a cost analysis and making data-driven decisions regarding the placement of workloads. Only when following those strict guidelines, can organisations achieve true total cost of ownership (TCO) reduction compared to legacy IT infrastructure.
Types of clouds
Cloud types vary depending on who owns or operates them. It is also possible to use more than one cloud at a time in a hybrid or multi-cloud architecture.
Public clouds are owned and managed by a cloud service provider. All resources are shared between multiple tenants. Even though the public cloud market is dominated by three major players, hundreds of smaller public cloud providers exist all over the world and run their public cloud infrastructure on Ubuntu.
A private cloud is owned by an organisation or an individual. All resources are exclusively dedicated to a single entity or a service. It runs on the organisation's premises or in an external data centre. It is managed by the organisation's operations team or a managed service provider.
Managed clouds are private clouds that are fully managed by a third-party organisation (aka managed service provider). The customer provides the hardware, but cloud operations and maintenance tasks are outsourced. The cloud can either run on the organisation's premises or in the managed service provider's data centre.
Micro clouds are a new class of infrastructure for on-demand computing at the edge. They differ from the internet-of-things (IoT), which uses thousands of single machines or sensors to gather data, yet they perform computing tasks. Micro clouds reuse proven cloud primitives but with the unattended, autonomous and clustering features that resolve typical edge computing challenges.
Hybrid cloud is a cloud computing architecture that consists of at least one public cloud, at least one private cloud and a hybrid cloud manager (HCM). It is one of the most popular trends in the IT industry, adopted by 82% of IT leaders, according to the Cisco 2022 Global Hybrid Cloud Trends Report.
Multi-cloud (also referred to as multi cloud or multicloud) is a concept that refers to using multiple clouds from more than one cloud service provider at the same time. The term is also used to refer to the simultaneous running of bare metal, virtualised and containerised workloads.