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.
Key Characteristics
- On-Demand Self-Service: Users can 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 (e.g., mobile phones, tablets, laptops, and workstations).
- 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.
- Rapid Elasticity: 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.
- 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.
Core Cloud Service Models
Cloud computing provides different types of services, typically categorized into three core models:
-
Infrastructure as a Service (IaaS):
The cloud provider manages the infrastructure (servers, storage, networking). You manage the operating systems, middleware, and applications.
Examples: Amazon EC2, Azure Virtual Machines, Google Compute Engine.
-
Platform as a Service (PaaS):
The cloud provider manages the infrastructure and the operating system. You manage your applications and data.
Examples: Azure App Service, Google App Engine, Heroku.
-
Software as a Service (SaaS):
The cloud provider manages everything: infrastructure, operating system, middleware, and applications. You just use the software.
Examples: Microsoft 365, Google Workspace, Salesforce.
Benefits of Cloud Computing
- Cost Savings: Reduce capital expenditure on hardware and software. Pay only for what you use.
- Scalability: Easily scale resources up or down based on demand.
- Flexibility: Access services from anywhere with an internet connection.
- Reliability: Cloud providers offer high availability and disaster recovery.
- Security: Reputable cloud providers invest heavily in security measures.
- Innovation: Quickly deploy and test new applications and services.
Getting Started
To begin your journey into cloud computing, consider exploring the offerings from major providers like Microsoft Azure, Amazon Web Services (AWS), and Google Cloud Platform (GCP). Each offers free tiers and extensive documentation to help you get started.
This tutorial is just the beginning. In the next lesson, we'll dive deeper into IaaS concepts and how to provision your first virtual machine.
Next Lesson: Understanding IaaS & Virtual Machines