Lesson 2 Diagram

AWS Global Infrastructure

AWS แบ่ง Infrastructure เป็น Region, Availability Zone และ Edge Location เพื่อช่วยให้ระบบวางใกล้ผู้ใช้, กระจายความเสี่ยง และออกแบบ Availability ได้ดีขึ้น

Region เลือกจาก user, service, compliance, cost Region เป็น boundary ใหญ่ของ latency, data residency และ service availability
Availability Zone ลด single failure domain Production มักกระจายอย่างน้อย 2 AZ พร้อม load balancer และ health check
Edge ทำให้ content ใกล้ผู้ใช้ CloudFront และ Route 53 ใช้ edge location เพื่อลด latency และกระจาย traffic
Regionพื้นที่ทางภูมิศาสตร์ เช่น ap-southeast-1
Availability ZoneData center group แยก failure domain
VPC / SubnetNetwork boundary ที่คุณออกแบบ
Edge Locationจุดใกล้ผู้ใช้สำหรับ CDN / DNS

Region

Region คือพื้นที่ทางภูมิศาสตร์ที่ AWS ให้บริการ เช่น Singapore, Tokyo หรือ N. Virginia แต่ละ Region แยกจากกัน เพื่อช่วยเรื่อง Data residency, Latency, Availability และ Service availability

เวลาเลือก Region ให้ดูอย่างน้อย 4 เรื่อง: ผู้ใช้อยู่ที่ไหน, Service ที่ต้องใช้เปิดใน Region นั้นหรือไม่, ข้อกำหนดด้านกฎหมาย/ข้อมูล, และค่าใช้จ่ายของ Resource/Data transfer

Availability Zone

Availability Zone หรือ AZ คือกลุ่ม Data center หนึ่งชุดภายใน Region ที่มี power, networking และ connectivity แยกจาก AZ อื่น แต่ยังเชื่อมกันด้วย network latency ต่ำพอสำหรับการทำระบบ High Availability

การกระจาย Application อย่างน้อย 2 AZ ช่วยลดความเสี่ยงเมื่อ AZ หนึ่งมีปัญหา แต่ไม่ได้แปลว่าระบบ HA อัตโนมัติ คุณยังต้องออกแบบ Load Balancer, Auto Scaling, Database replication และ Health check ให้ถูกต้อง

Edge Location

Edge Location คือจุดที่อยู่ใกล้ผู้ใช้มากกว่า Region หลัก มักใช้กับบริการอย่าง Amazon CloudFront และ Route 53 เพื่อช่วยลด Latency และกระจาย Content

Real-world use case

ถ้า Application มีผู้ใช้หลักในไทย อาจเริ่มจาก Region ใกล้เช่น Singapore หรือ Bangkok Region เมื่อพร้อมใช้งานตามข้อกำหนดขององค์กร จากนั้นวาง Public Subnet และ Private Subnet กระจาย 2 AZ, วาง ALB ใน Public Subnet และวาง Application กับ Database ใน Private Subnet เพื่อแยก Network boundary

Common mistakes

  • เลือก Region จากความคุ้นเคย แต่ไม่ได้ดู Latency, Service availability หรือ Compliance
  • สร้างทุก Resource ใน AZ เดียว แล้วคิดว่าการอยู่บน AWS เท่ากับ HA แล้ว
  • ใช้หลาย Region เร็วเกินไปจน Operation, Cost และ Data consistency ซับซ้อนเกินจำเป็น

Review questions

Before next lesson
  1. เลือก Region โดยอธิบายเหตุผลด้าน latency, service และ compliance ได้
  2. อธิบายได้ว่า AZ ช่วยลด failure domain อย่างไร
  3. รู้ว่า Edge Location ใช้กับ DNS/CDN ไม่ใช่ที่วาง database หลัก
  1. Region กับ Availability Zone ต่างกันอย่างไร?
  2. ทำไม Production workload ควรกระจายมากกว่าหนึ่ง AZ?
  3. Edge Location เหมาะกับปัญหาแบบใด?