Cloud computing

Introduction

Cloud computing is a paradigm that enables on-demand delivery of computing resources, including processing power, storage and applications, over the internet. By providing scalable, flexible and cost-effective solutions, cloud computing has revolutionized the way businesses and organizations manage their IT infrastructure.

Cloud computing is the on-demand availability of computational systems resources, especially data storage (cloud storage) and computing power, without direct active management by the user. Large clouds often have functions distributed over multiple locations, each of which is a data center.

Cloud computing relies on sharing of resources to achieve coherence and typically uses a pay-as-you-go model, which can help in reducing capital expenses but may also lead to unexpected operating costs.

The goal of cloud computing is to allow users to take benefit from all these technologies, without the need for deep knowledge about or expertise with each one of them. The cloud thus is a way to help focus more on core business by being less impeded by IT obstacles.

The main enabling technology for cloud computing is virtualization.

Virtualization software separates a physical computing device into one or more virtual devices, each of which can be easily used and managed to perform computing tasks.

With operating system–level virtualization essentially creating a scalable system of multiple independent computing devices, idle computing resources can be allocated and used more efficiently.

Virtualization provides the agility required to speed up IT operations and improves infrastructure utilization.

One of the main challenges of cloud computing, in comparison to more traditional on-premises computing, is data security and privacy.

Cloud users entrust their sensitive data to third-party providers, who may not have adequate measures to protect it from unauthorized access, breaches or leaks. Cloud users also face compliance risks if they have to adhere to certain regulations or standards regarding data protection, such as GDPR or HIPAA.

Another challenge of cloud computing is reduced visibility and control. Cloud users may not have full insight into how their cloud resources are managed, configured, or optimized by their providers. They may also have limited ability to customize or modify their cloud services according to their specific needs or preferences. Complete understanding of all technology may be impossible, especially given the scale, complexity and deliberate opacity of contemporary systems; however, there is a need for understanding complex technologies and their interconnections to have power and agency within them. The metaphor of the cloud can be seen as problematic as cloud computing retains the aura of something noumenal and numinous; it is something experienced without precisely understanding what it is or how it works.

In addition, cloud migration is a significant issue. Cloud migration is the process of moving data, applications or workloads from one cloud environment to another or from on-premises to the cloud. Cloud migration can be complex, time-consuming and costly, especially if there are incompatibility issues between different cloud platforms or architectures. Cloud migration can also cause downtime, performance degradation or data loss if not planned and executed properly.

 

Characteristics

Cloud computing has five essential characteristics.

on-demand self-service

consumers can unilaterally provision computing capabilities, such as server time and network storage, as needed automatically without requiring human interaction with each service provider

broad network access

capabilities are available over the network and accessed through standard mechanisms that promote use by heterogeneous thin or thick client platforms (mobile phones, tablets or workstations).

resource pooling

provider’s computing resources are pooled to serve multiple consumers using a multi-tenant model, with different physical and virtual resources dynamically assigned and reassigned according to consumer demand

rapid elasticity

capabilities can be elastically provisioned and released, in some cases automatically, to scale rapidly outward and inward commensurate with demand

to consumers, the capabilities available for provisioning often appear unlimited and can be appropriated in any quantity at any time

measured service

cloud systems automatically control and optimize resource use by leveraging a metering capability at some level of abstraction appropriate to the type of service (storage, processing, bandwidth, active user accounts)

resource usage can be monitored, controlled and reported, providing transparency for both the provider and consumer of the utilized service

 

Service models

cloud computing service models arranged as layers in a stack

 

 

The service-oriented architecture promotes the idea of everything as a service. This concept is made operational in cloud computing through three standard service models:

infrastructure as a service
platform as a service
software as a service

They are commonly depicted as layers in a stack, providing different levels of abstraction. Even so, layers are not necessarily interdependent: software as a service can be delivered on bare metal, bypassing platform as a service and infrastructure as a service; a program can run directly on infrastructure as a service without being packaged as software as a service.

For more information, see Cloud Computing and Service Models