25 January 2024 · 11 min de lecture
What is the cloud?
Storage, compute, AI: cloud computing has changed the way IT gets done. Xbit breaks down its key characteristics, deployment models and benefits.

A guide to the cloud and its benefits for the modern enterprise
Cloud computing is the delivery of computing resources over the internet. It enables cost savings, adaptability, high performance, economies of scale and much more. For many businesses, migrating to the cloud goes hand in hand with modernising their data and IT.
When the term 'cloud' first started appearing in the early 2000s, it had an almost esoteric ring to it. The idea of accessing computing resources from somewhere other than on-site IT infrastructure sounded like science fiction. The reality turned out to run far deeper, changing technology and the way we do business forever.
What is the cloud?
Cloud computing is the delivery of computing resources, including storage, processing power, databases, networking, analytics, artificial intelligence and software applications, over the internet (the cloud). By outsourcing these resources, businesses can access the computing power they need, when they need it, without having to buy and maintain physical on-site IT infrastructure. This delivers flexible resources, speeds up innovation and drives economies of scale. For many businesses, migrating to the cloud goes hand in hand with modernising their data and IT.

The characteristics of cloud computing
Before the cloud, businesses bought and maintained their own on-site IT infrastructure. While cost savings drove much of the shift to cloud computing, many businesses have found that public, private or hybrid cloud infrastructure offers a whole host of additional benefits.
For agile and DevOps teams, the cloud simplifies and speeds up the development process.
Here is a list of the characteristics that define the cloud.
On-demand self-service
Cloud providers offer APIs that users can call to request new resources or scale existing ones whenever needed. Teams can easily automate the provisioning of their infrastructure using infrastructure-as-code tools such as Terraform and Ansible.
Broad network access
The location of physical hardware is a major concern when it comes to delivering the best possible end-user experience. The cloud offers a significant advantage here, with physical hardware distributed globally, letting organisations strategically target hardware based on location.
Resource pooling
The computing resources of a cloud infrastructure platform are divided up and dynamically allocated on demand. Because a cloud host's physical machines are dynamically provisioned and shared between multiple tenants, cloud hardware is fully optimised for maximum utilisation.
Rapid elasticity
Cloud infrastructure can dynamically grow and shrink, letting users have their computing resources automatically adjust to traffic demand. Elasticity can happen on a per-machine basis, where a resource allocation grows to make the most of a machine's available capacity, or on a multi-machine basis, where an application automatically scales across networked machines.
Measured service
Cloud infrastructure providers supply detailed usage metrics used to communicate usage costs. Amazon Web Services (AWS), for example, reports usage for each service category as hourly or daily line items. Cloud providers generally adopt a utility-style, pay-as-you-go billing model that is metered and provisioned, so customers are billed for exactly the amount of computing resources they use.
Types of cloud deployment
There are three main types of cloud deployment. Each has its own unique advantages, and businesses often benefit from using more than one.
Public cloud
The public cloud delivers computing resources (servers, storage, applications, and so on) over the internet from a cloud service provider, such as AWS or Microsoft Azure. Cloud providers own and operate all of the hardware, software and other supporting infrastructure.
Private cloud
A private cloud consists of computing resources dedicated exclusively to a single organisation. It can be physically located in an organisation's own data centre or hosted by a cloud provider (AWS, Google, Microsoft, OVH, and so on). A private cloud offers a higher level of security and privacy than the public cloud by giving businesses dedicated resources.
Private cloud customers get the key benefits of the public cloud, self-service, scalability and elasticity, with the added advantage of greater control and customisation. What's more, a private cloud can offer an even higher level of security and privacy because it is hosted on private networks that aren't accessible from public traffic.
Hybrid cloud
Hybrid cloud combines private and public cloud (IBM Hybrid Cloud, run by Red Hat, is one example), linked together by technology that lets data and applications work together. Sensitive services and applications can be kept in the secure private cloud, while public-facing web servers and customer-facing endpoints can sit in the public cloud. Most of the leading third-party cloud providers offer a hybrid cloud model, letting users combine private and public clouds to suit their needs, giving businesses much greater flexibility in deploying the infrastructure specific to their applications.
Cloud services
The cloud's dynamic properties lay the groundwork for a new generation of higher-level services. These services can not only complement, but often directly provide, what agile and DevOps teams need.

Infrastructure as a Service (IaaS)
Infrastructure as a Service (IaaS) is a foundational cloud service layer that lets organisations rent IT infrastructure (servers, storage, networking, operating systems) from a cloud provider. IaaS lets users reserve and provision the resources they need straight from pools of raw physical servers. It also lets users reserve pre-configured machines for specialised tasks such as load balancers, databases, mail servers and distributed queues.
DevOps teams can use IaaS as the underlying platform on which to build a DevOps toolchain, which may draw on a range of third-party tools.
Platform as a Service (PaaS)
Platform as a Service (PaaS) is cloud infrastructure built on top of IaaS that provides resources for building tools and applications at the user level. It supplies the underlying infrastructure, compute, network and storage resources, along with development tools, database management systems and middleware.
PaaS relies on IaaS to automatically allocate the resources needed to run a language-based technology stack. Popular stacks include Ruby on Rails, Java Spring MVC, MEAN and JAM. PaaS customers can then simply upload an artefact of their application's code, which is automatically deployed onto the PaaS infrastructure. It's a powerful, innovative workflow that lets teams focus entirely on their specific business application code rather than worrying about hosting and infrastructure. PaaS automatically handles infrastructure scaling and monitoring, ramping resources up or down based on observed traffic loads.
Software as a Service (SaaS)
Software as a Service (SaaS) delivers software applications over the internet, on demand and typically on a subscription basis. Cloud providers host and manage the application, taking care of software updates and security patches as needed. Customer relationship management (CRM) systems, webmail applications, productivity tools such as Jira and Confluence, analytics tools, monitoring tools and live-chat applications are all examples of SaaS solutions.
Function as a Service (FaaS)
Function as a Service (FaaS) is a cloud service that provides a platform on which customers can develop, run and manage applications. Developers no longer need to build and maintain the infrastructure required to develop and launch an application. Cloud providers spin up cloud resources on the fly, run a block of code, return the result, and then tear down the resources that were allocated.
The benefits of the cloud
The cloud's unique properties bring a range of unprecedented technical and business advantages. Here are the main benefits of cloud computing for agile teams.
Cost reduction
Teams using cloud resources don't need to buy their own hardware. Beyond hardware costs, cloud computing providers work hard to maximise and optimise hardware utilisation. Hardware and computing resources thus become commodities, with cloud providers competing to offer the lowest costs.
Greater scalability
Because the cloud is elastic by default, businesses can scale their resources on demand. The cloud gives teams access to autoscaling features, letting cloud applications automatically scale their infrastructure resources up or down in response to traffic spikes.
Better performance
The cloud offers the latest and most powerful computing resources. Users can access the newest machines with extreme multi-core CPUs built for heavy parallel-processing tasks. Leading cloud computing providers also offer cutting-edge GPU and TPU machines for intensive graphics, matrix and AI workloads, and constantly update to the latest processor technologies.
Leading cloud providers have hardware distributed worldwide, ensuring high-performance connections based on the physical location of the connection. They also offer global content delivery networks that cache user requests and content based on location, bringing services closer to the customer.
Faster execution speed
Teams using cloud infrastructure can move faster and deliver value to their customers sooner. Agile software teams can leverage the cloud to quickly spin up new virtual machines to experiment with and validate ideas, and to automate the testing and deployment stages of the pipeline.
Enhanced security
Private cloud hosting provides isolated, firewall-protected infrastructure, improving security. Cloud providers also offer numerous security mechanisms and technologies to help build secure applications. Controlling user access is a major security concern, and most cloud computing providers offer tools for restricting granular user access.
Continuous integration and continuous delivery (CI/CD)
Continuous integration and continuous delivery (CI/CD) are key DevOps practices that boost team velocity and shorten time to market. Cloud-based CI/CD tools such as Bitbucket Pipelines or GitLab CI let teams automatically build, test and deploy code without worrying about managing or maintaining CI/CD infrastructure. These tools often rely on Docker containers to keep the release pipeline isolated and reproducible, letting teams run commands just as they would on a local machine, but with all the benefits of a fresh, reproducible setup for every build.
End-to-end monitoring and incident management
Cloud deployments let teams connect their tools end-to-end, making it easier to monitor every part of the pipeline. Comprehensive monitoring is another key capability for organisations that have adopted DevOps methods, as it lets them address problems and incidents more quickly. Cloud providers share system-health metrics, including application and server CPU, memory, request rate, error rate, average response time and more. Monitoring the load across many virtual machines (VMs), for instance, lets teams add capacity when demand rises, or automate scaling up or down based on these metrics to reduce manual intervention and costs.
In conclusion
The cloud delivers advanced, on-demand computing resources that scale to meet demand, with regular updates and no need to buy or maintain on-site infrastructure. With the cloud, teams become more efficient and shorten time to market, since they can quickly acquire scalable services without the considerable effort that managing traditional on-site infrastructure requires. See Xbit's cloud computing offering.




