Cloud Concepts¶
What is Cloud Computing?¶
Cloud computing is the on-demand delivery of IT resources over the Internet with pay-as-you-go pricing. Instead of buying, 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 Amazon Web Services (AWS).
Key Characteristics of Cloud Computing¶
1. On-Demand Self-Service¶
- Users can provision computing capabilities automatically
- No human interaction required from service provider
- Resources available when needed
2. Broad Network Access¶
- Services available over the network
- Accessed through standard mechanisms
- Available on various client platforms (mobile, laptop, workstation)
3. Resource Pooling¶
- Provider's computing resources are pooled
- Serve multiple consumers using multi-tenant model
- Physical and virtual resources dynamically assigned
4. Rapid Elasticity¶
- Capabilities can be elastically provisioned and released
- Scale rapidly outward and inward commensurate with demand
- Appears unlimited to the consumer
5. Measured Service¶
- Automatic control and optimization of resource use
- Metering capability at abstraction level
- Pay-per-use or charge-per-use business model
Cloud Service Models¶
Infrastructure as a Service (IaaS)¶
- Definition: Provides virtualized computing resources over the internet
- What you get: Virtual machines, storage, networks, operating systems
- What you manage: Operating systems, middleware, runtime, data, applications
- AWS Examples: EC2, VPC, EBS, S3
- Benefits: Cost-effective, scalable, flexible
Platform as a Service (PaaS)¶
- Definition: Provides hardware and software tools over the internet
- What you get: Development platform, database management, business analytics
- What you manage: Data and applications
- AWS Examples: Elastic Beanstalk, RDS, Lambda
- Benefits: Faster development, reduced complexity
Software as a Service (SaaS)¶
- Definition: Delivers software applications over the internet
- What you get: Complete software solution
- What you manage: User access and data input
- AWS Examples: WorkMail, WorkDocs, Chime
- Benefits: No installation, automatic updates, accessibility
Cloud Deployment Models¶
Public Cloud¶
- Definition: Cloud services offered over the public internet
- Characteristics:
- Available to general public
- Owned and operated by third-party providers
- Delivered over the internet
- Benefits: Cost-effective, scalable, no maintenance
- Use Cases: Web applications, development/testing, backup
Private Cloud¶
- Definition: Cloud services used exclusively by single organization
- Characteristics:
- Dedicated to single organization
- Can be on-premises or hosted
- Enhanced security and control
- Benefits: Enhanced security, compliance, customization
- Use Cases: Sensitive data, regulatory compliance, legacy systems
Hybrid Cloud¶
- Definition: Combination of public and private clouds
- Characteristics:
- Data and applications shared between environments
- Allows workloads to move between clouds
- Consistent management across environments
- Benefits: Flexibility, cost optimization, security options
- Use Cases: Data sovereignty, regulatory compliance, cloud migration
Multi-Cloud¶
- Definition: Use of multiple cloud computing services
- Characteristics:
- Multiple public cloud providers
- Different services from different providers
- Avoid vendor lock-in
- Benefits: Best-of-breed services, redundancy, negotiation power
Benefits of Cloud Computing¶
Cost Advantages¶
- Capital Expenditure (CapEx) to Operating Expenditure (OpEx):
- No upfront hardware costs
- Pay-as-you-go pricing
- Reduced total cost of ownership
Operational Benefits¶
- Speed and Agility:
- Quick resource provisioning
- Faster time to market
-
Rapid experimentation
-
Global Scale:
- Deploy globally in minutes
- Reach customers worldwide
-
Low latency access
-
Productivity:
- Focus on business differentiators
- Reduced IT maintenance
- Automated operations
Technical Benefits¶
- Reliability:
- Built-in redundancy
- Disaster recovery capabilities
-
High availability
-
Security:
- Professional security teams
- Continuous monitoring
-
Compliance certifications
-
Performance:
- Latest technology
- Optimized infrastructure
- Continuous improvements
Cloud Economics¶
Traditional IT Costs¶
- Capital Expenses (CapEx):
- Hardware purchases
- Software licenses
- Facility costs
-
Staff training
-
Operational Expenses (OpEx):
- Maintenance and support
- Utilities and cooling
- Staff salaries
- Upgrades and replacements
Cloud Cost Model¶
- Pay-as-you-go: Only pay for what you use
- No upfront costs: Eliminate capital expenditures
- Variable costs: Costs scale with usage
- Economies of scale: Benefit from AWS's massive scale
Cost Optimization Strategies¶
- Right Sizing: Match resources to actual needs
- Reserved Instances: Commit to usage for discounts
- Spot Instances: Use spare capacity at reduced prices
- Auto Scaling: Automatically adjust capacity
- Storage Optimization: Use appropriate storage classes
- Monitoring and Analytics: Track and optimize usage
Migration Strategies (6 R's)¶
1. Rehosting (Lift and Shift)¶
- Move applications to cloud without changes
- Fastest migration approach
- Limited cloud benefits initially
2. Replatforming (Lift, Tinker, and Shift)¶
- Make few cloud optimizations
- Don't change core architecture
- Some immediate benefits
3. Repurchasing (Drop and Shop)¶
- Move to different product
- Often SaaS solutions
- Require training on new platform
4. Refactoring/Re-architecting¶
- Redesign applications for cloud
- Use cloud-native features
- Maximum cloud benefits
5. Retire¶
- Identify applications to decommission
- Reduce cost and complexity
- Focus resources on useful applications
6. Retain¶
- Keep applications on-premises
- Not ready for migration
- Revisit in future
Cloud Adoption Framework (CAF)¶
Business Capabilities¶
- Business: IT aligns with business needs
- People: Evaluate organizational structures and roles
- Governance: Skills and processes align IT strategy
Technical Capabilities¶
- Platform: Understand and communicate nature of IT systems
- Security: Ensure organization meets security objectives
- Operations: Enable, run, use, operate, and recover IT workloads
Key Takeaways¶
- Cloud Definition: On-demand delivery of IT resources via internet with pay-as-you-go pricing
- Service Models: IaaS, PaaS, SaaS - each with different management responsibilities
- Deployment Models: Public, private, hybrid, multi-cloud - each with specific use cases
- Benefits: Cost savings, speed, global scale, security, reliability
- Migration: Multiple strategies available (6 R's) depending on requirements
- Economics: Shift from CapEx to OpEx with variable, usage-based costs