ไพล็อตไลต์และระบบสำรองพร้อมใช้งาน
คงแกนหลักขั้นต่ำของภาระงานให้ทำงานอยู่ในรีเจียนที่สอง (ไพล็อตไลต์) หรือใช้สำเนาที่ลดขนาดลงแต่ทำงานได้ครบถ้วน (ระบบสำรองพร้อมใช้งาน) ซึ่งพร้อมขยายขนาด
ไพล็อตไลต์และระบบสำรองพร้อมใช้งาน เป็นบทเรียน AWS Solutions Architect ฟรีบน CoddyKit นี่คือบทเรียนที่ 3 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน AWS Solutions Architect และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส AWS Solutions Architect มีบทเรียนทั้งหมด 4 บทเรียน
ก้าวต่อจาก Backup and Restore
เมื่อข้อกำหนด RTO ของคุณเข้มงวดกว่าการกู้คืนภายในไม่กี่ชั่วโมง Backup and Restore จะไม่เพียงพอ ระดับ DR สองระดับถัดไปคือ Pilot Light และ Warm Standby ซึ่งจะทำให้โครงสร้างพื้นฐานบางส่วนหรือทั้งหมดทำงานอยู่ใน Region ของ DR ตลอดเวลา จึงลดเวลาในการกู้คืนลงได้อย่างมาก กลยุทธ์ทั้งสองแบบเกี่ยวข้องกับการดูแลสภาพแวดล้อม DR อย่างต่อเนื่อง และใช้การสลับเมื่อเกิดความล้มเหลวด้วยการตรวจสอบสถานะผ่าน Route 53 เพื่อเปลี่ยนเส้นทางการรับส่งข้อมูลระหว่างเกิดภัยพิบัติ ความแตกต่างอยู่ที่ปริมาณของสภาพแวดล้อม DR ที่ทำงานอยู่จริง
Pilot Light: ส่วนหลักทำงานอยู่เสมอ
ในกลยุทธ์ Pilot Light คุณจะเปิดให้เฉพาะส่วนหลักที่สำคัญของระบบทำงานอยู่ใน Region ของ DR โดยทั่วไปคือเพียงระดับ Database ที่ทำ Replication อย่างต่อเนื่อง เซิร์ฟเวอร์แอปพลิเคชันจะไม่ทำงาน แต่คุณจะเตรียม AMI, เทมเพลตการเปิดใช้ หรือโครงสร้างพื้นฐานในรูปโค้ดไว้ล่วงหน้าเพื่อให้เปิดใช้ได้อย่างรวดเร็ว ลองนึกภาพเหมือนไฟนำร่องของเตาแก๊สที่มีเปลวไฟขนาดเล็กมาก และสามารถจุดให้เป็นเปลวไฟเต็มที่ได้ภายในไม่กี่นาทีเมื่อจำเป็น โดยทั่วไป RTO อยู่ที่ 30-60 นาที
# Pilot Light: what runs 24/7 in DR region
# - RDS Read Replica (receiving continuous replication)
# - Minimal VPC/networking (no extra cost if no data transfer)
# - Route 53 failover record (inactive, health check pointing to primary)
# What is prepared but NOT running:
# - EC2 launch template pointing to DR AMI
# - ALB (can be created in minutes)
# - ASG with desired=0, can scale to 10 on demandขั้นตอนการสลับระบบเมื่อเกิดความล้มเหลวของ Pilot Light
เมื่อ Region หลักล้มเหลวและเริ่มการสลับระบบของ Pilot Light: ขั้นตอนที่ 1 — Promote RDS Read Replica ใน Region ของ DR ให้เป็น Database หลักแบบแยกอิสระ ขั้นตอนที่ 2 — เปิดใช้ Instance ของ EC2 จาก AMI หรือเทมเพลตการเปิดใช้ที่เตรียมไว้ ขั้นตอนที่ 3 — สร้างหรือเปิดใช้ Application Load Balancer และลงทะเบียน Instance ของ EC2 ใหม่ ขั้นตอนที่ 4 — อัปเดตการกำหนดค่าของแอปพลิเคชันให้ชี้ไปยังปลายทางของ Database ที่ Promote แล้ว ขั้นตอนที่ 5 — การสลับระบบด้วยการตรวจสอบสถานะของ Route 53 จะดำเนินการเปลี่ยน DNS ให้เสร็จสิ้น เวลารวม: 30-60 นาที
# Step 1: Promote RDS Read Replica
aws rds promote-read-replica \
--db-instance-identifier mydb-dr-replica \
--region us-west-2
# Step 2: Scale up ASG in DR region
aws autoscaling update-auto-scaling-group \
--auto-scaling-group-name app-asg-dr \
--min-size 2 \
--desired-capacity 4 \
--region us-west-2
# Step 3: Route 53 failover happens automatically
# via health check detecting primary region failureWarm Standby: ทำงานได้เต็มรูปแบบแต่ลดขนาดลง
ในกลยุทธ์ Warm Standby สภาพแวดล้อม Production เวอร์ชันสมบูรณ์แต่ลดขนาดลงจะทำงานอย่างต่อเนื่องใน Region ของ DR ทุกระดับของแอปพลิเคชันทำงานอยู่ ทั้งเว็บเซิร์ฟเวอร์ เซิร์ฟเวอร์แอปพลิเคชัน และ Database แต่ใช้ความจุลดลง (เช่น ใช้ 2 Instance แทน 20 Instance) ระหว่างการสลับระบบ ให้เพิ่มขนาดสภาพแวดล้อม DR ให้รองรับโหลดเท่ากับ Production Route 53 จะเปลี่ยนเส้นทางการรับส่งข้อมูลโดยอัตโนมัติผ่านการสลับระบบด้วยการตรวจสอบสถานะ โดยทั่วไป RTO ต่ำกว่า 15 นาที Warm Standby เป็นระดับ DR ที่ได้รับความนิยมมากที่สุดสำหรับแอปพลิเคชันที่สำคัญต่อธุรกิจ
# Production vs Warm Standby capacity:
# Tier Production DR Standby
# Web servers 20 EC2 (c5.xl) 2 EC2 (c5.xl)
# App servers 10 EC2 (m5.xl) 2 EC2 (m5.xl)
# Database RDS db.r5.2xl RDS Read Replica (db.r5.xl)
# Cache Redis r6g.xl Redis r6g.medium
#
# Cost: DR standby ~15% of production costAurora Global Database สำหรับ Warm Standby
Aurora Global Database เป็นเทคโนโลยี Database ที่เหมาะอย่างยิ่งสำหรับ DR แบบ Warm Standby คลัสเตอร์ใน Region รองจะทำงานอยู่ตลอดเวลา รับ Replication อยู่เสมอ (มีความล่าช้า <1 วินาที) และสามารถ Promote เป็น Database หลักได้ภายในเวลาไม่ถึง 1 นาที ซึ่งเร็วกว่าการ Promote RDS Read Replica มาก (เนื่องจากต้องหยุด Replication และนำความล่าช้าที่เหลือมาใช้) ด้วยเหตุนี้ Aurora Global Database จึงเป็นตัวเลือกที่แนะนำเมื่อข้อกำหนด RTO อยู่ในระดับไม่กี่นาที ไม่ใช่หลายสิบ分钟
# Promote Aurora Global DB secondary to primary
# (during DR failover)
aws rds failover-global-cluster \
--global-cluster-identifier my-global-db \
--target-db-cluster-identifier my-aurora-cluster-us-west-2
# Aurora handles promotion automatically
# Typical promotion time: 1-2 minutes
# vs RDS Read Replica promotion: 10-30 minutesการกำหนดค่าการสลับระบบอัตโนมัติของ Route 53
ทั้ง Pilot Light และ Warm Standby ต่างพึ่งพา การกำหนดเส้นทางแบบสลับเมื่อเกิดความล้มเหลวของ Route 53 เพื่อเปลี่ยนเส้นทางการรับส่งข้อมูลโดยอัตโนมัติ กำหนดระเบียน Primary ให้ชี้ไปยัง ALB หรือปลายทางใน Region ของ Production พร้อมแนบการตรวจสอบสถานะ กำหนดระเบียน Secondary ให้ชี้ไปยังปลายทางใน Region ของ DR เมื่อ Route 53 ตรวจพบว่าการตรวจสอบสถานะของ Primary ล้มเหลวเกินเกณฑ์ที่กำหนด ระบบจะหยุดส่งคืนระเบียน Primary และให้บริการเฉพาะระเบียน Secondary ซึ่งทั้งหมดจะเกิดขึ้นภายในช่วงเวลา TTL ของ DNS
# Primary record (production)
aws route53 change-resource-record-sets \
--hosted-zone-id ZXXX \
--change-batch '{
"Changes": [{
"Action": "UPSERT",
"ResourceRecordSet": {
"Name": "api.example.com",
"Type": "A",
"Failover": "PRIMARY",
"SetIdentifier": "primary",
"HealthCheckId": "hc-us-east-1",
"AliasTarget": {"DNSName": "alb-prod.us-east-1.elb.amazonaws.com","EvaluateTargetHealth": true}
}
}]
}'การเตรียมสภาพแวดล้อม DR ให้อุ่นเครื่องล่วงหน้า
เพื่อให้ Warm Standby บรรลุเป้าหมาย RTO สภาพแวดล้อม DR ต้องผ่านการ เตรียมให้อุ่นเครื่องล่วงหน้า ซึ่งหมายถึงการกำหนดค่าและทดสอบอย่างครบถ้วน เพื่อให้ระหว่างการสลับระบบมีเพียงการเพิ่มขนาดเท่านั้นที่ต้องดำเนินการ ซึ่งรวมถึงการสร้างและแคชการเชื่อมต่อ Database ไว้ การให้ไฟล์การกำหนดค่าของแอปพลิเคชันอ้างอิงปลายทางใน Region ของ DR การให้ Instance ของ EC2 ทำงานอยู่เบื้องหลัง ALB (แม้จะมีจำนวนน้อย) และการตรวจสอบสถานะที่ผ่านเรียบร้อยแล้ว ให้ทำการฝึกซ้อม DR รายเดือนโดยจำลองการสลับระบบ เพื่อให้แน่ใจว่าสภาพแวดล้อมยังเป็นปัจจุบันตามการกำหนดค่าของ Production
# Validate DR warm standby health
# 1. Check DR ALB target health
aws elbv2 describe-target-health \
--target-group-arn arn:aws:elasticloadbalancing:us-west-2:123:targetgroup/app-dr/xyz
# 2. Check Aurora Global DB secondary
aws rds describe-global-clusters \
--global-cluster-identifier my-global-db
# 3. Verify Route 53 health checks
aws route53 get-health-check-status \
--health-check-id hc-us-west-2โครงสร้างพื้นฐานในรูปโค้ดเพื่อความสอดคล้องของ DR
การทำให้สภาพแวดล้อม DR สอดคล้องกับ Production อยู่เสมอเป็นความท้าทายด้านการปฏิบัติการที่ยากที่สุด หากคุณกำหนดค่า Production ด้วยตนเองและลืมอัปเดต DR สภาพแวดล้อม DR อาจทำงานไม่ถูกต้องเมื่อเกิดภัยพิบัติจริง วิธีแก้คือใช้ โครงสร้างพื้นฐานในรูปโค้ด (IaC) โดยใช้เทมเพลตเดียวกัน Deploy ไปยังทั้งสอง Region ใช้ AWS CloudFormation StackSets หรือ Terraform ที่มี workspace หลายรายการ เพื่อ Deploy โครงสร้างพื้นฐานที่เหมือนกันไปยังทั้งสอง Region จากฐานโค้ดเดียว วิธีนี้จะกำจัดการคลาดเคลื่อนของการกำหนดค่า
# CloudFormation StackSet: deploy to multiple regions
aws cloudformation create-stack-set \
--stack-set-name my-app-infrastructure \
--template-url https://s3.amazonaws.com/mybucket/template.yaml
# Deploy to DR region
aws cloudformation create-stack-instances \
--stack-set-name my-app-infrastructure \
--accounts 123456789012 \
--regions us-west-2 \
--parameter-overrides \
ParameterKey=DesiredCapacity,ParameterValue=2เปรียบเทียบค่าใช้จ่าย: Pilot Light กับ Warm Standby
ความแตกต่างด้านค่าใช้จ่ายระหว่างกลยุทธ์ทั้งสองแบบมีมาก Pilot Light มีค่าใช้จ่ายเฉพาะ Replica ของ Database (โดยทั่วไปอยู่ที่ 50-100% ของค่าใช้จ่าย Database หลัก) รวมกับค่า networking เพียงเล็กน้อยใน Region ของ DR เซิร์ฟเวอร์แอปพลิเคชันจะปิดอยู่ จึงไม่มีค่าใช้จ่าย EC2 ส่วน Warm Standby จะมีค่าใช้จ่ายเพิ่มเติมสำหรับ Instance ของ EC2 ที่ลดขนาดลง ALB และอาจรวมถึงคลัสเตอร์แคชที่มีขนาดเล็กลง โดยทั่วไปอยู่ที่ 15-30% ของค่าใช้จ่ายทั้งหมดของสภาพแวดล้อม Production คำถามคือ RTO ที่เร็วขึ้นของ Warm Standby คุ้มค่ากับค่าใช้จ่ายต่อเนื่องที่สูงขึ้นหรือไม่
# Example monthly cost comparison:
# Production environment: $10,000/month
# Pilot Light DR:
# RDS Read Replica: $500/month
# Minimal networking: $50/month
# Total: $550/month (~5.5% of production)
# Warm Standby DR:
# RDS Read Replica: $500/month
# 2x EC2 instances: $400/month
# ALB + networking: $200/month
# Total: $1,100/month (~11% of production)การย้อนกลับ: กลับไปยัง Primary
หลังจากกู้คืน Region หลักแล้ว คุณต้องมีแผนการย้อนกลับเพื่อกลับไปใช้งานที่เดิม การย้อนกลับมักเป็นส่วนที่ซับซ้อนที่สุดของ DR เพราะระหว่างที่ระบบหยุดทำงาน Region ของ DR อาจประมวลผลข้อมูลใหม่ที่ต้องซิงค์กลับไปยัง Region หลัก สำหรับฐานข้อมูล คุณอาจต้องตั้งค่าการจำลองแบบย้อนกลับ หรือซิงค์ข้อมูลใหม่จาก DR ไปยัง Region หลัก สำหรับ Route 53 คุณต้องนำระเบียนของ Region หลักกลับมาใช้พร้อม health check ของระเบียนนั้น ควรวางแผนและทดสอบขั้นตอนการย้อนกลับอย่างรอบคอบเช่นเดียวกับการสลับระบบ
# Failback procedure steps:
# 1. Restore primary region infrastructure
# 2. Set up replication from DR to primary
# (reverse replication to sync new data)
# 3. Verify data consistency
# 4. Re-enable primary Route 53 health check
# 5. Gradually shift traffic back (weighted routing)
# Route 53 weights: Primary=10%, DR=90%
# Primary=50%, DR=50%
# Primary=100%, DR=0%
# 6. Decommission DR region back to standby capacityเมื่อใดควรเลือก Pilot Light เทียบกับ Warm Standby
เลือก Pilot Light เมื่อ RTO ของคุณยอมให้ใช้เวลา 30–60 นาที และคุณต้องการลดค่าใช้จ่ายของ DR ความเสี่ยงหลักคือเวลาที่ต้องใช้ในการเปิดใช้งานและกำหนดค่าเซิร์ฟเวอร์แอปพลิเคชันระหว่างเกิดภัยพิบัติ ซึ่งเป็นช่วงที่มีแรงกดดันสูง เลือก Warm Standby เมื่อ RTO ของคุณกำหนดให้กู้คืนได้ภายใน 15 นาที แอปพลิเคชันของคุณซับซ้อนมากจนการเปิดใช้งานใหม่ทั้งหมดระหว่างเกิดภัยพิบัติมีความเสี่ยง หรือคำมั่น SLA ที่ให้ไว้กับลูกค้ากำหนดให้ต้องกู้คืนได้เร็วกว่าเดิม สำหรับเวิร์กโหลดการใช้งานจริงที่มีความสำคัญระดับปานกลางส่วนใหญ่ Warm Standby เป็นจุดสมดุลที่เหมาะสม
# Decision guide:
# RTO > 1 hour: Backup and Restore
# RTO 30-60 min: Pilot Light
# RTO 5-15 min: Warm Standby
# RTO < 5 min: Multi-Site Active-Active
# Additional factors for Warm Standby:
# - Complex application startup procedures
# - Contractual SLA commitments to customers
# - High revenue loss per minute of downtime
# - Regulatory requirements for fast recoveryตรวจสอบความเข้าใจอย่างรวดเร็ว
ทดสอบความเข้าใจแนวคิด AWS Solutions Architect (SAA-C03) จากบทเรียนนี้
สรุปบทเรียน
ในบทเรียนนี้ คุณได้เรียนรู้ว่า Pilot Light จะเปิดใช้งานเฉพาะฐานข้อมูลใน DR และเปิดเซิร์ฟเวอร์แอปพลิเคชันระหว่างการสลับระบบ Warm Standby จะเรียกใช้สภาพแวดล้อมที่สมบูรณ์แต่ลดขนาดลง และเพิ่มขนาดระหว่างการสลับระบบ และ Infrastructure as Code จะป้องกันการตั้งค่าของสภาพแวดล้อมหลักและ DR ไม่ให้คลาดเคลื่อนจากกัน ควรทดสอบและวางแผนขั้นตอนการย้อนกลับเช่นเดียวกับการสลับระบบเสมอ บทถัดไปเราจะศึกษา active-active แบบหลายไซต์ด้วย DynamoDB Global Tables และ Route 53
เรียนรู้ AWS Solutions Architect ด้วย AI tutor — ฟรี
เขียนและเรียกใช้โค้ดจริงในเบราว์เซอร์ของคุณ รับความช่วยเหลือทันทีจาก AI tutor 24/7 และเรียนรู้ต่อจากที่คุณหยุดบนเว็บหรือในแอป
- คอร์ส
- 30
- บทเรียน
- 120
คำถามที่พบบ่อย
บทเรียน “ไพล็อตไลต์และระบบสำรองพร้อมใช้งาน” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “ไพล็อตไลต์และระบบสำรองพร้อมใช้งาน” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส AWS Solutions Architect ให้อัปเกรดเป็น CoddyKit PRO คอร์ส AWS Solutions Architect มีบทเรียนทั้งหมด 4 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “ไพล็อตไลต์และระบบสำรองพร้อมใช้งาน”
คงแกนหลักขั้นต่ำของภาระงานให้ทำงานอยู่ในรีเจียนที่สอง (ไพล็อตไลต์) หรือใช้สำเนาที่ลดขนาดลงแต่ทำงานได้ครบถ้วน (ระบบสำรองพร้อมใช้งาน) ซึ่งพร้อมขยายขนาด คุณปฏิบัติ AWS Solutions Architect ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน AWS Solutions Architect หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน AWS Solutions Architect บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 3 จากทั้งหมด 4 บทเรียน
บทเรียน “ไพล็อตไลต์และระบบสำรองพร้อมใช้งาน” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน AWS Solutions Architect นี้ได้ไหม
ได้ บทเรียน AWS Solutions Architect ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- RTO, RPO และระดับ DR
- การสำรองและกู้คืน
- ไพล็อตไลต์และระบบสำรองพร้อมใช้งาน
- Active-Active หลายไซต์ด้วย Global Tables และ Route 53