Skip to main content

AMI

มาต่อกันที่สิ่งที่เป็นหัวใจของการทำงานของ EC2 instances นั่นคือ AMI AMI ย่อมาจาก Amazon Machine Image ซึ่งก็คือ การปรับแต่ง (customization) ของ EC2 instance

คุณสามารถใช้ AMI ที่ AWS สร้างไว้ให้ หรือสร้างของคุณเองก็ได้

แล้วใน AMI มีอะไรบ้าง?

  • การตั้งค่าซอฟต์แวร์ของคุณเอง
  • ระบบปฏิบัติการ (Operating System)
  • เครื่องมือ monitoring หรือเครื่องมืออื่น ๆ ที่คุณต้องการ

หากคุณสร้าง AMI เอง คุณจะได้ เวลา boot และเวลา configuration ที่เร็วขึ้น เพราะทุกอย่างที่ต้องการติดตั้งใน EC2 instance ถูกแพ็กไว้เรียบร้อยแล้วใน AMI

ดังนั้นการสร้าง AMI ของตัวเองจึงเป็นสิ่งที่ควรทำ โดยมันจะถูกสร้างขึ้นมาใน Region หนึ่ง และสามารถคัดลอก (copy) ข้าม Region อื่น ๆ ได้ เพื่อใช้ประโยชน์จากโครงสร้างพื้นฐานระดับโลกของ AWS

An image

ประเภทของ AMI ที่สามารถใช้ได้

  • Public AMI → สร้างโดย AWS เช่น Amazon Linux 2 AMI ที่เป็น AMI ยอดนิยม
  • Custom AMI → สร้างโดยคุณเอง ต้องทำและดูแลเอง (แต่สามารถใช้เครื่องมือช่วย automate ได้)
  • Marketplace AMI → สร้างโดยบุคคลหรือบริษัทอื่น วางขายใน AWS Marketplace คุณสามารถซื้อเพื่อประหยัดเวลาได้

แม้แต่คุณเองก็สามารถทำธุรกิจโดยการสร้าง AMI แล้วขายใน AWS Marketplace ได้ ซึ่งบางบริษัทก็ทำอยู่แล้วจริง ๆ

กระบวนการสร้าง AMI

กระบวนการสร้าง AMI จาก EC2 Instance มีดังนี้:

  1. เริ่มต้นจากการ launch EC2 instance
  2. ปรับแต่ง (customize) instance ตามที่ต้องการ
  3. หยุดการทำงาน (stop) ของ instance เพื่อให้แน่ใจว่าข้อมูลถูกต้องสมบูรณ์
  4. สร้าง AMI จาก instance นั้น (เบื้องหลัง AWS จะสร้าง EBS snapshot ให้อัตโนมัติ)
  5. ใช้ AMI ที่สร้างขึ้นเพื่อ launch EC2 instance อื่น ๆ ได้

ตัวอย่างเช่น:

  • เริ่มต้นจาก instance ใน us-east-1a → ปรับแต่งและสร้าง AMI
  • จากนั้นใน us-east-1b → ใช้ AMI นั้นในการ launch instance ใหม่
  • ผลลัพธ์ก็คือ คุณสามารถสร้าง สำเนาของ EC2 instance เดิม ได้ในอีก Availability Zone

Key Takeaways

  • AMI (Amazon Machine Image) คือการปรับแต่ง EC2 instance โดยการแพ็กซอฟต์แวร์และการตั้งค่าไว้ล่วงหน้า

  • AMI มี 3 แบบ:

    • สร้างโดย AWS
    • สร้างเองโดยผู้ใช้
    • ซื้อจาก AWS Marketplace
  • การสร้าง AMI เองช่วยให้ EC2 instance boot และ configure ได้เร็วขึ้น

  • AMI เป็นแบบ Region-specific แต่สามารถ คัดลอกข้าม Region ได้ เพื่อใช้โครงสร้างพื้นฐานระดับโลกของ AWS