การ Restore ของ EC2 จากการ Backup ข้อมูลที่สร้างโดย AWS Backup

การ Restore การสำรองข้อมูลจาก AWS Backup สามารถทำได้ง่ายๆ และยังช่วยให้การใช้งานเว็บไซต์มีความราบรื่นและใช้งานได้อย่างต่อเนื่อง ดังนั้นจึงอยากจะมาแนะนำวิธีการทำโดยทดลองใช้งานจริงพร้อมกับอธิบายในบทความนี้

ครั้งนี้จะมาเขียนบทความเกี่ยวกับการ Restore ของ EC2 จากการ Backup ข้อมูลที่สร้างโดย AWS Backup ที่สามารถใช้ได้กับ Amazon Linux 2 และ Windows Server

AWS Backup

AWS Backup เป็นบริการที่ Amazon Web Services (AWS) ให้ใช้สำหรับการสำรองข้อมูลและการกู้คืนข้อมูลใน AWS โดยเฉพาะ ระบบนี้ช่วยให้ผู้ใช้สามารถสร้างแผนการสำรองข้อมูลที่เป็นอัตโนมัติและมีความยืดหยุ่นสูงได้ ซึ่งรวมถึงการสำรองข้อมูลจากบริการต่างๆ ของ AWS ได้ เช่น EC2, EBS, RDS, Aurora, EFS, FSx, Storage Gateway, S3, DynamoDB, Neptune, DocumentDB, Timestream, Redshift, SAP HANA on EC2, VMWare Cloud on AWS และอื่นๆ โดยผู้ใช้สามารถกำหนดระยะเวลาการสำรองข้อมูลและการเก็บรักษาข้อมูลได้อย่างยืดหยุ่น โดย AWS Backup ยังมีฟังก์ชันการกู้คืนข้อมูลที่สามารถใช้งานได้ง่ายและรวดเร็วเมื่อต้องการนำข้อมูลกลับมาใช้งานในกรณีฉุกเฉินหรือเป็นการกู้คืนข้อมูลที่ได้รับความเสียหายหรือสูญหายไป

ดูเพิ่มเติมได้ที่ลิงก์ด้านล่างนี้
คุณสมบัติของ AWS Backup

Restore backup

Restore backup คือ การกู้ข้อมูลหรือนำข้อมูลที่ทำการ Backup ไว้ก่อนหน้านี้มาใช้งานเพื่อใช้แก้ปัญหาในขณะที่เว็บไซต์เกิดการขัดข้อง ให้สามารถใช้งานได้อย่างต่อเนื่อง

สิ่งที่ต้องมี

การสร้าง EC2 Instance

ก่อนที่เราจะทำการสร้าง Snapshot EC2 เราจะต้องมี EC2 Instance ก่อน จึงจะสามารถทำการสร้าง Snapshot EC2 ได้
โดยเราสามารถใช้ได้กับ EC2 Instance แบบ Amazon Linux 2 และ Windows Server ได้ โดยดูวิธีการสร้าง EC2 เหล่านี้ได้ที่ลิงก์ด้านล่างนี้

หลังจากที่เรามี EC2 Instance แล้ว เราก็ต้องทำการ Backup ข้อมูลไว้ล่วงหน้าเพื่อที่จะสามารถทำการ Restore ได้ ถ้าไม่ทำการ Backup ข้อมูลก่อน ก็จะไม่สามารถทำการ Restore ได้ สามารถดูวิธีการ Backup ข้อมูลแบบ On-demand และ Schedule ได้ตามหัวข้อด้านล่างนี้ (จะเลือกทำวิธีไหนก็ได้ แต่ถ้าต้องการ Backup ข้อมูลในทันที แนะนำให้ทำวิธีของ On-demand)

การ Backup ข้อมูลแบบ On-demand

การ Backup ข้อมูลแบบ Schedule

หลังจากที่เราทำการ Backup ข้อมูลเตรียมไว้แล้ว เรามาเริ่มทำการ Restore กันเลย

การตรวจสอบ Protected resource

การตรวจสอบ Protected resource ของวันปัจจุบันและวันถัดไป

ให้ Copy Resource ID จากหน้า Backup vault

มาที่เมนูด้านซ้าย » เลือก Protected resources

วางในช่องค้นหา ? instance/i-Your_Resource_ID + Enter » คลิกที่ Resource ID ของเรา

หลังจากครบกำหนดของวันที่เราได้ตั้งค่าไว้ จะเห็นว่า Recovery point ID จะมี image ถูกสร้างขึ้นมาโดยอัตโนมัติ

ถ้ามีการใช้งานต่อเนื่อง 6 วัน ก็จะมีการ Backups ข้อมูลให้เป็นรายวันตามที่เราได้กำหนดไว้โดยอัตโนมัติ

การ Restore Backup จาก Resorce

ข้อควรระวัง

  • EIP จะหายไป
  • การตั้งค่า Route53 และ CloudFront จะหายไป จากนั้นต้องทำการตั้งค่าอีกครั้ง เพื่อให้สามารถใช้งานได้
  • Key Pair จะถูกตั้งค่าให้ใช้อันเดียวกัน
  • Security Group จะเป็นค่าเริ่มต้นที่เหมือนกัน และสามารถเลือกใช้อันอื่น หรือรีเซ็ตได้
  • Instance Type สามารถเปลี่ยนเป็น Type อื่นได้

การ Restore สามารถทำได้ทั้ง 2 วิธีดังนี้

1. Restore ในหน้า Protected resources

ให้เข้ามาที่หน้า Protected resources นี้โดยทำตามขั้นตอน การตรวจสอบ Protected resource ด้านบนนี้ พอมาถึงในส่วนของ Backups ให้ตั้งค่าตามนี้

» คลิก Recovery point ID: image/ami-?? ของเรา
» คลิก Restore

2. Restore ในหน้า Backup vault

ค้นหาคำว่า ? AWS Backup » เลือก AWS Backup

มาที่เมนูด้านซ้าย » เลือก Backup vaults

เลือก Backup vault name: ec2-tinnakorn-vault (ชื่อนี้เป็นแค่ตัวอย่าง)

คลิก image/ami-??

คลิก Restore

หลังจากรู้วิธีการที่จะเข้ามายังหน้า Protected resources และ Backup vault แล้ว ให้ทำการ Restore ตามขั้นตอนต่อไปนี้

ในส่วนของ Network settings จะเป็นข้อมูลทั้งหมดของการ Backup ข้อมูลไว้ก่อนหน้านี้ ซึ่งจะเป็นการ Copy ข้อมูลทั้งหมดนี้มาสร้างเป็น EC2 Instance ใหม่

คลิก Restore backup

หลังจากทำการ Restore แล้ว ก็จะมาที่หน้านี้โดยอัตโนมัติ แล้วให้สังเกตที่ Status จะเป็น ◴Pending คือกำลังเริ่มทำการ Restore

ต้องรอจนกว่าจะขึ้น ✅ Complete โดยปกติแล้วจะใช้เวลาไม่กี่นาที

ตรวจสอบ EC2 Instance

จะเห็นว่ามี Instance เพิ่มขึ้นมาอัตโนมัติ และมี Status check เป็น Initializing ก็คือกำลังทำการเริ่มระบบ Instance นั่นเอง

ทำการตั้งชื่อ Instance ตามนี้
» คลิกที่สัญลักษณ์ ? ตามรูป
» Edit Name: ec2-tinnakorn-backup (ใส่ชื่ออะไรก็ได้)
» คลิก Save

คลิก Instance ID ของเรา

ข้อมูลใน Instance ใหม่นี้จะมีข้อมูลที่เหมือนกับ Instance ต้นฉบับ แต่จะไม่มีการเชื่อมโยงกับ Elastic IP

หน้านี้คือ Instance ของต้นฉบับ จะมีการเชื่อมโยงกับ Elastic IP

เพียงเท่านี้เราก็จะมี Instance ตัวใหม่ที่พร้อมใช้งานแล้ว

ตรวจสอบการ Restore

หลังจากนั้น แนะนำให้เชื่อมต่อไปยัง Server EC2 Instance ที่ Restore แล้ว ตรวจสอบว่าข้อมูลมีการ Restore เหมือนกับที่ Backup ไว้ก่อนหน้านี้หรือไม่ โดยดูตัวอย่างที่ด้านล่างนี้

สำหรับ Amazon Linux 2 ดูที่ลิงก์ด้านล่างนี้
ตรวจสอบการเข้าถึงโดยใช้ Putty

สำหรับ Windows Server
ให้ทำการเชื่อมต่อกับ Instance เพื่อเข้าใช้งาน Windows ผ่านไฟล์ RDP แล้วตรวจสอบข้อมูล

สรุป

การ Restore ของ EC2 จากการ Backup ข้อมูลที่สร้างโดย AWS Backup นั้น จะช่วยแก้ไขปัญหาในเวลาที่เว็บไซต์เกิดการขัดข้องได้ เพราะเราสามารถ Restore backup เพื่อนำข้อมูลมาใช้งานแทนเว็บไซต์จริงได้ตามต้องการ และจะทำให้การใช้งานเว็บไซต์ราบรื่น และมีประสิทธิภาพมากขึ้น

ผมหวังว่าบทความนี้จะเป็นประโยชน์ให้กับผู้อ่านได้นะครับ

POP จากบริษัท Classmethod (Thailand) ครับ !

บทความที่เกี่ยวข้อง