LibraryUnderstanding Cloud Computing Concepts

Understanding Cloud Computing Concepts

Learn about Understanding Cloud Computing Concepts as part of AWS Cloud Solutions Architect

Understanding Cloud Computing Concepts

Welcome to the foundational module on Cloud Computing Concepts. In today's digital landscape, understanding the principles of cloud computing is paramount, especially when aiming for roles like an AWS Cloud Solutions Architect. This module will demystify what cloud computing is, its core characteristics, and the different service models that power modern applications and businesses.

What is Cloud Computing?

Cloud computing is the delivery of computing services—including servers, storage, databases, networking, software, analytics, and intelligence—over the Internet (“the cloud”) to offer faster innovation, flexible resources, and economies of scale. You typically pay only for cloud services you use, helping lower your operating costs, run your infrastructure more efficiently, and scale as your business needs change.

Cloud computing offers on-demand access to computing resources over the internet.

Instead of owning and maintaining physical data centers and servers, you can access technology services, such as computing power, storage, and databases, on an as-needed basis from a cloud provider like AWS.

This model shifts the burden of infrastructure management from the user to the cloud provider. It allows for greater agility, scalability, and cost-efficiency by leveraging shared resources and pay-as-you-go pricing. Think of it like electricity: you don't build your own power plant; you plug into the grid and pay for what you consume.

Essential Characteristics of Cloud Computing

The National Institute of Standards and Technology (NIST) defines five essential characteristics of cloud computing that are widely accepted:

What are the five essential characteristics of cloud computing as defined by NIST?

On-demand self-service, Broad network access, Resource pooling, Rapid elasticity or expansion, Measured service.

1. On-Demand Self-Service

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

2. Broad Network Access

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

3. Resource Pooling

The 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. There is a sense of location independence in that the customer generally has no control or knowledge over the exact location of the provided resources but may be able to specify location at a higher level of abstraction (e.g., country, state, or datacenter).

4. Rapid Elasticity or Expansion

Capabilities can be elastically provisioned and released, in some cases automatically, to scale rapidly outward and inward commensurate with demand. To the consumer, the capabilities available for provisioning often appear to be unlimited and can be appropriated in any quantity at any time.

5. 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 (e.g., storage, processing, bandwidth, and active user accounts). Resource usage can be monitored, controlled, and reported, providing transparency for both the provider and consumer of the utilized service.

Cloud Computing Service Models

Cloud computing offers different service models, each providing varying levels of control, flexibility, and management. The three primary models are Infrastructure as a Service (IaaS), Platform as a Service (PaaS), and Software as a Service (SaaS).

ModelWhat it providesWho manages itExample
Infrastructure as a Service (IaaS)Basic building blocks for cloud IT. Provides access to networking features, computer resources, and storage.You manage the OS, middleware, applications, and data. Provider manages the underlying infrastructure.Amazon Elastic Compute Cloud (EC2), Amazon S3
Platform as a Service (PaaS)Removes the need to manage underlying infrastructure (hardware and operating systems) and allows you to focus on the deployment and management of your applications.You manage applications and data. Provider manages OS, middleware, runtime, and infrastructure.AWS Elastic Beanstalk, AWS Lambda
Software as a Service (SaaS)Provides you with a completed product that is run and managed by the service provider. You just use the software.Provider manages everything: applications, data, OS, middleware, runtime, and infrastructure.Amazon WorkMail, Salesforce

Cloud Deployment Models

Beyond service models, cloud computing also has different deployment models, dictating where the cloud infrastructure resides and who manages it.

Cloud deployment models define how cloud infrastructure is organized and accessed. Public clouds are owned and operated by third-party cloud providers, offering services over the internet. Private clouds are used exclusively by a single business or organization, offering greater control and security. Hybrid clouds combine public and private clouds, allowing data and applications to be shared between them.

📚

Text-based content

Library pages focus on text content

Understanding these core concepts is crucial for designing, deploying, and managing solutions effectively in the cloud.

Learning Resources

What is Cloud Computing? - Amazon Web Services (AWS)(documentation)

An official overview from AWS explaining the fundamental concepts of cloud computing, its benefits, and common use cases.

NIST Definition of Cloud Computing(documentation)

The foundational document from NIST that defines the essential characteristics, service models, and deployment models of cloud computing.

Cloud Computing Explained in Simple Terms(video)

A clear and concise video explaining the core concepts of cloud computing, making it accessible for beginners.

Introduction to Cloud Computing - Coursera(video)

A lecture from a Coursera course providing a comprehensive introduction to cloud computing, its history, and its impact.

Cloud Computing Service Models: IaaS, PaaS, SaaS(video)

This video breaks down the differences between IaaS, PaaS, and SaaS with clear examples and analogies.

Understanding Cloud Deployment Models: Public, Private, Hybrid(video)

An explanation of the various cloud deployment models and their advantages and disadvantages.

Cloud Computing: Concepts, Technology & Architecture(documentation)

A link to a widely recognized textbook that delves deeply into cloud computing concepts, architecture, and technologies.

What is Cloud Computing? - Microsoft Azure(documentation)

An alternative perspective on cloud computing from Microsoft Azure, covering its benefits and core principles.

Cloud Computing Basics: A Beginner's Guide(blog)

A blog post offering a beginner-friendly guide to cloud computing, covering essential terminology and concepts.

Cloud Computing - Wikipedia(wikipedia)

A comprehensive Wikipedia article providing a broad overview of cloud computing, its history, technologies, and societal impact.