☁️

Introduction to Cloud Computing (Episode 1)

Jul 2, 2024

Introduction to Cloud Computing (Episode 1)

Objectives

  • Understand what cloud computing is and its benefits
  • Learn important vocabulary:
    • High availability
    • Scalability
    • Elasticity
    • Agility
    • Fault tolerance
    • Disaster recovery

What is Cloud Computing?

  • Cloud computing: A delivery model for various services (e.g., storage, computing resources, networking, analytics) over the internet.
  • Services include:
    • Storage services: Storing unstructured or structured data in files and databases, along with tools to migrate data to the cloud.
    • Computing resources: Examples include Windows virtual machines, Linux VMs, web containers, etc.
    • Networking: Securely connecting components.
    • Analytics: Reviewing performance and telemetry data.
  • Cloud facilitates the creation of applications (e.g., web, AI, machine learning, reporting).
  • Essential characteristics:
    • Delivered over the internet
    • Scalability, elasticity, agility, fault tolerance, disaster recovery

Key Terms

Scalability

  • Ability to scale up (increase size/power of resources, e.g., CPU, memory) and scale down (decrease size/power).
  • Vertical scaling: Scaling up or down within the same resource.
  • Horizontal scaling: Scaling out (adding) or in (removing) resources.

Elasticity

  • System's ability to scale dynamically based on the workload.
  • Automatic scaling: Allocating and deallocating resources automatically.

Agility

  • Ability to react quickly by provisioning resources rapidly.
  • Cloud vs. on-premises:
    • Cloud: Resource provisioning within seconds or minutes.
    • On-premises: Normally takes days, weeks, or months.

Fault Tolerance

  • System's ability to remain operational despite component failures.
  • Localized failures do not disrupt services due to built-in fault tolerance.

Disaster Recovery

  • Ability to recover from significant events (e.g., natural disasters, human errors).
  • Involves:
    • Creating two copies of the application in different regions.
    • Setting up replication and DNS routing between them.

High Availability

  • Measures system uptime versus downtime.
  • High availability = System capable of running with minimal downtime.
    • Four nines (99.99%) availability: ~52 minutes of downtime per year.
    • Depends on the criticality of the system.
  • Many services offer high availability by default.

Next Steps

  • Visit website for additional materials, cheat sheets, and practice tests.
  • Support the channel by subscribing, liking, commenting, and sharing.
  • Follow the playlist or the channel to watch the next episode.