What is Cloud? #
What is Cloud?
- Scenario: Imagine you need to setup 100 servers for a website you are building. Can we rent instead of buy?
- Cloud: Rent computing, storage, database, and other services from companies like AWS, Azure, or Google Cloud – whenever you need them.
Cloud is On-Demand
- No Upfront Investment: No need to buy servers or data centers
- Faster Start: Launch apps in minutes, not months
- Pay-As-You-Go: Pay only for what you use
Cloud is Scalable
- Elastic - Scale Up/Down: Add or remove resources as needed
- Automatic Scaling: Many services scale based on demand
- Global Reach: Deploy apps closer to your users across the world
Why Cloud? #
Why Cloud?
- Scenario: Traditional IT needs you to buy, install, and manage servers. Expensive, slow, and hard to scale. Can we rent instead?
- Cloud: Pay-as-you-go access to compute, storage, databases, and more – over the internet.
Benefits of Cloud
- Faster Delivery: Launch apps in minutes
- Cost-Efficient: Pay only for what you use
- Scalable: Auto-scale to handle traffic spikes
- Global: Deploy close to users, anywhere in the world
- Secure & Compliant: Built-in security and certifications
Region vs Zones vs EdgeLocations #
Region vs Availability Zones vs Edge Locations
- Scenario: You want your app to be fast, reliable, and globally available. How does the cloud provider structure its infrastructure to help you do that?
- Answer: Using Regions, Availability Zones, and Edge Locations – each plays a different role.
Region
- What It Is: A geographical area (e.g., Mumbai, US-East)
- Use Case: Choose a region close to your users or data for low latency and compliance
Availability Zone (AZ)
- What It Is: One or more data centers inside a region
- Isolated but Connected: Physically separated but connected with low latency
- Use Case: Deploy across AZs for high availability and fault tolerance
Edge Location
- What It Is: A content delivery endpoint near users
- Smaller than AZs: Focused on caching and request routing
- Use Case: Deliver content faster via CDN (e.g., CloudFront)
Different Category of Cloud Services #
Cloud offers more than just servers. It gives ready-to-use services in different categories to help you build, run, and grow your applications faster.
1. Compute Services
- Purpose: Run applications and workloads
- Examples:
- Virtual Machines – AWS EC2, Azure VMs
- Containers – AWS ECS, GKE (Google Kubernetes Engine)
- Serverless – AWS Lambda, Azure Functions
2. Storage Services
- Purpose: Store data – files, objects, backups
- Examples:
- Object Storage – Amazon S3, Azure Blob Storage
- File Storage – Amazon EFS, Azure Files
- Block Storage – Amazon EBS, Google Persistent Disk
3. Networking Services
- Purpose: Connect apps, users, and data securely
- Examples:
- VPC (Virtual Network) – AWS VPC, Azure VNet
- Load Balancer – AWS ELB, Azure Load Balancer
- CDN – Amazon CloudFront, Azure CDN
4. Database Services
- Purpose: Store and manage structured/unstructured data
- Examples:
- Relational – Amazon RDS, Cloud SQL, Azure SQL
- NoSQL – Amazon DynamoDB, Azure Cosmos DB
- Data Warehousing – Amazon Redshift, BigQuery
5. Security & Identity Services
- Purpose: Control access, protect data
- Examples:
- Identity – AWS IAM, Azure AD
- Key Management – AWS KMS, Google Cloud KMS
- Firewall/Shielding – AWS WAF, Azure Firewall
6. Monitoring & Management Services
- Purpose: Observe and optimize your systems
- Examples:
- Monitoring – Amazon CloudWatch, Azure Monitor
- Logging – AWS CloudTrail, Google Cloud Logging
- Cost Management – AWS Cost Explorer, Azure Cost Analysis
7. Machine Learning & AI Services
- Purpose: Add intelligence to your apps
- Examples:
- Prebuilt Models – Amazon Rekognition, Azure Cognitive Services
- ML Platforms – Amazon SageMaker, Vertex AI
8. DevOps & Developer Tools
- Purpose: Automate builds, tests, deployments
- Examples:
- CI/CD – AWS CodePipeline, Azure DevOps
- IaC – AWS CloudFormation, Terraform
- Source Control – GitHub, GitLab
On-premise vs Hybrid Cloud vs Multi Cloud #
1. On-Premise
- What It Is: All infrastructure is owned and operated by you
- Where It Runs: In your own data center
- Pros:
- Full control over hardware and security
- No dependency on external providers
- Cons:
- Expensive upfront cost
- Hard to scale quickly
- Slower to adopt modern tools
2. Hybrid Cloud
- What It Is: A mix of on-prem + public cloud
- Where It Runs: Some workloads on-prem, some in cloud
- Pros:
- Flexibility to keep sensitive data on-prem
- Leverage cloud scale for web apps or backups
- Step-by-step cloud adoption
- Cons:
- Complex setup and integration
- Needs strong network and security architecture
- Harder to manage consistently
3. Multi-Cloud
- What It Is: Use of 2 or more public cloud providers (e.g., AWS + Azure)
- Why Use It: Avoid vendor lock-in, optimize cost/performance
- Pros:
- Use best features from each provider
- Increase availability and redundancy
- Competitive pricing and negotiation
- Cons:
- Higher complexity in architecture and management
- Requires multi-skilled teams
- Data sync and consistency challenges
IaaS vs Paas vs SaaS vs Serverless #
IaaS vs PaaS vs SaaS vs Serverless
- Scenario: You want to build or use an app. Do you want to manage everything yourself, or let the cloud handle most of it? Different models offer different levels of control and convenience.
IaaS (Infrastructure as a Service)
- What You Get: Virtual servers, storage, and networks
- You Manage: OS, runtime, app, security patches
- Use Case: Full control, like managing your own data center
- Example: AWS EC2, Azure Virtual Machines, Google Compute Engine
PaaS (Platform as a Service)
- What You Get: Fully managed platform to deploy apps
- You Manage: Just the code and data
- Use Case: Focus on coding, not infrastructure
- Example: Google App Engine, Heroku, Azure App Service
SaaS (Software as a Service)
- What You Get: Ready-to-use software over the internet
- You Manage: Data
- Use Case: Productivity, CRM, collaboration tools
- Example: Gmail, Google Docs, Salesforce, Zoom
Serverless (FaaS – Function as a Service)
- What You Get: A way to run functions in the cloud without managing servers
- You Manage: Just the function logic
- Use Case: Event-driven apps, short tasks, APIs
- Example: AWS Lambda, Azure Functions, Google Cloud Functions
Key Differences Summary
Model | You Manage | Cloud Manages | Example |
---|---|---|---|
IaaS | OS, runtime, app | Servers, networking, storage | AWS EC2 |
PaaS | App, data | OS, runtime, infra | Google App Engine |
SaaS | Nothing (just use) | Everything | Gmail, Zoom |
Serverless | Function code only | Infra, scaling, runtime | AWS Lambda |