StorageSection 0410 min read7 questions

EC2 Storage

EBS, EFS, Instance Store, FSx & AMI

รวมทุกเรื่อง Storage ของ EC2 — EBS (Network Drive), Instance Store (Physical Disk), EFS (Network File System), FSx (Windows/Lustre) และ AMI (Image สำหรับ launch instance) เข้าใจความต่างของแต่ละแบบเพื่อเลือกใช้ให้เหมาะกับงาน

ในหน้านี้15 sections
  1. 01EBS Overview — Network Drive ของ EC2
  2. 02EBS Volume Types — 6 ประเภทที่ต้องรู้
  3. 03EBS Snapshots — Backup & ย้าย AZ/Region
  4. 04EBS Multi-Attach — Volume เดียว หลาย Instance
  5. 05EBS Encryption — เข้ารหัสด้วย KMS
  6. 06EBS Delete on Termination
  7. 07EC2 Instance Store — Physical Disk บน Host
  8. 08AMI — Amazon Machine Image
  9. 09EC2 Image Builder — สร้าง AMI อัตโนมัติ
  10. 10EFS — Elastic File System
  11. 11FSx for Windows File Server
  12. 12FSx for Lustre — HPC / ML
  13. 13Shared Responsibility สำหรับ EC2 Storage
  14. 14ตารางเปรียบเทียบ EBS vs Instance Store vs EFS
  15. 15Summary — สรุปประเด็นสำคัญ
01

EBS Overview — Network Drive ของ EC2

EBS (Elastic Block Store) คือ Network Drive ที่ attach เข้ากับ EC2 instance ได้ — ข้อมูลยังคงอยู่แม้ instance จะถูก terminate เหมือน USB External Hard Drive ที่อยู่บน network

  • Network Drive ไม่ใช่ Physical Drive — ส่งข้อมูลผ่าน network ดังนั้นอาจมี latency เล็กน้อย
  • Detach / Reattach ได้เร็ว — ถอดจาก instance หนึ่งไปเสียบอีก instance ได้ในไม่กี่วินาที
  • ผูกกับ AZ เดียว — EBS Volume ที่สร้างใน ap-southeast-1a attach กับ instance ใน ap-southeast-1b ไม่ได้ ต้องใช้ Snapshot ก่อน
  • Provisioned Capacity — จองทั้งขนาด (GB) และ IOPS ล่วงหน้า จ่ายตามที่จองไม่ใช่ที่ใช้จริง
  • Free Tier — 30 GB ของ General Purpose SSD หรือ Magnetic ต่อเดือน
  • 1 Volume → 1 Instance (ปกติ) ยกเว้น io1/io2 Multi-Attach
  • 1 Instance → หลาย Volume ได้ — เหมือน computer ที่มีหลาย hard disk
02

EBS Volume Types — 6 ประเภทที่ต้องรู้

EBS แบ่งเป็น 2 กลุ่มหลัก: SSD (เหมาะกับ random I/O, latency ต่ำ, ใช้เป็น Boot Volume ได้) และ HDD (เหมาะกับ sequential I/O, throughput สูง, ราคาถูก, ใช้เป็น Boot Volume ไม่ได้)

gp3 — General Purpose SSD (แนะนำ)

Baseline 3,000 IOPS + 125 MB/s, scale ได้ถึง 16,000 IOPS และ 1,000 MB/s อิสระจาก storage size — ราคาถูกกว่า gp2 ~20%

gp2 — General Purpose SSD (รุ่นเก่า)

IOPS ผูกกับ size: 3 IOPS/GB (สูงสุด 16,000) — อยากได้ IOPS มากต้องเพิ่ม storage ด้วย แนะนำ migrate ไป gp3

io2 Block Express — Provisioned IOPS SSD

สูงสุด 256,000 IOPS, sub-millisecond latency, รองรับ Multi-Attach เหมาะกับ SAP HANA, Oracle, critical DB ที่ต้องการ IOPS สูงสุด

io1 — Provisioned IOPS SSD (รุ่นเก่า)

สูงสุด 64,000 IOPS (Nitro instance), รองรับ Multi-Attach แนะนำใช้ io2 แทน

st1 — Throughput Optimized HDD

สูงสุด 500 MB/s throughput — ใช้เป็น Boot Volume ไม่ได้ เหมาะกับ Big Data, Data Warehouse, Log processing

sc1 — Cold HDD

สูงสุด 250 MB/s — ราคาถูกที่สุดใน EBS ทั้งหมด ใช้เป็น Boot Volume ไม่ได้ เหมาะกับ archive, ข้อมูลที่เข้าถึงไม่บ่อย

03

EBS Snapshots — Backup & ย้าย AZ/Region

Snapshot คือการ backup EBS Volume ณ จุดเวลาหนึ่ง — เก็บอยู่ใน S3 (แต่ไม่เห็นใน S3 bucket โดยตรง) และเป็นวิธีหลักในการย้าย EBS ข้าม AZ หรือ Region

  • แนะนำให้ detach volume ก่อน snapshot เพื่อความถูกต้องของข้อมูล แต่ไม่จำเป็น (ไม่ใช่ requirement)
  • Incremental — backup เฉพาะ block ที่เปลี่ยนแปลงตั้งแต่ snapshot ครั้งก่อน ประหยัดพื้นที่และเวลา
  • สร้าง Volume ใหม่จาก snapshot ใน AZ หรือ Region ใดก็ได้ — วิธีหลักในการย้าย EBS ข้าม AZ
  • Copy snapshot ข้าม Region ได้ — ใช้สำหรับ Disaster Recovery (DR)

EBS Snapshot Archive

ย้าย snapshot ไป archive tier ราคาถูกกว่า ~75% — Restore ใช้เวลา 24–72 ชั่วโมง เหมาะกับ snapshot ที่ไม่ค่อยใช้แต่ต้องเก็บ

Recycle Bin for Snapshots

กำหนด retention rule ให้ snapshot ที่ถูกลบย้ายไป Recycle Bin ก่อน (1 วัน – 1 ปี) ป้องกันลบโดยไม่ตั้งใจ — กู้คืนได้ภายใน retention period

Fast Snapshot Restore (FSR)

Volume ที่ restore จาก snapshot พร้อม full performance ทันทีโดยไม่ต้อง warm up — มีค่าใช้จ่ายเพิ่ม เหมาะกับ snapshot ที่ต้อง restore เร่งด่วน

Cross-AZ / Cross-Region Copy

วิธีเดียวที่จะย้าย EBS volume ข้าม AZ หรือ Region: Snapshot → Copy → Create Volume ใน AZ/Region ปลายทาง

04

EBS Multi-Attach — Volume เดียว หลาย Instance

ปกติ EBS Volume attach ได้กับ instance เดียวเท่านั้น แต่ io1 / io2 รองรับ Multi-Attach — attach volume เดียวกันกับ instance หลายตัวพร้อมกันได้ใน AZ เดียวกัน

  • รองรับเฉพาะ io1 และ io2 เท่านั้น (gp2/gp3/HDD ไม่รองรับ)
  • Attach ได้สูงสุด 16 instances พร้อมกัน
  • ทุก instance ต้องอยู่ใน AZ เดียวกัน
  • ทุก instance มีสิทธิ์ read และ write volume พร้อมกัน
  • Application ต้องจัดการ concurrent write เอง — EBS ไม่ได้ lock ให้
  • ต้องใช้ filesystem ที่รองรับ cluster เช่น GFS2, OCFS2ไม่ใช่ ext4 หรือ xfs ธรรมดา
05

EBS Encryption — เข้ารหัสด้วย KMS

เปิด encryption บน EBS Volume ได้ด้วย AWS KMS (AES-256) — เมื่อเปิดแล้วทุกอย่างจะถูก encrypt โดยอัตโนมัติ:

  • ข้อมูลที่เก็บบน volume (data at rest)
  • ข้อมูลที่วิ่งระหว่าง volume กับ instance (data in transit)
  • Snapshot ที่สร้างจาก volume ที่ encrypt
  • Volume ที่สร้างจาก snapshot ที่ encrypt

วิธีเข้ารหัส Volume ที่ไม่ได้ encrypt ไว้ตั้งแต่แรก:

  • 1) สร้าง Snapshot จาก volume เดิม (ไม่ encrypt)
  • 2) Copy snapshot พร้อมเปิด Encrypt → ได้ encrypted snapshot
  • 3) Create Volume ใหม่จาก encrypted snapshot → ได้ encrypted volume
  • 4) Attach volume ใหม่ เข้า instance แทนอันเดิม
06

EBS Delete on Termination

เมื่อ EC2 instance ถูก terminate EBS Volume ที่ attach อยู่จะถูกลบหรือไม่ขึ้นอยู่กับ Delete on Termination flag

Root Volume — Default = TRUE

Boot volume (root EBS) ของ EC2 จะถูก ลบอัตโนมัติ เมื่อ instance terminate — ป้องกัน orphan volume สะสม

Other (Attached) Volumes — Default = FALSE

Volume อื่นที่ attach เพิ่มเข้ามาจะ ไม่ถูกลบ เมื่อ instance terminate — เก็บข้อมูลไว้ได้

07

EC2 Instance Store — Physical Disk บน Host

Instance Store คือ storage ที่ติดมากับ physical host ของ EC2 โดยตรง — ต่างจาก EBS ที่เป็น network drive เชื่อมต่อผ่าน hardware เดียวกัน ทำให้เร็วกว่ามาก

  • Highest IOPS / Lowest Latency — เป็น physical disk บน host เร็วกว่า EBS อย่างมาก
  • Ephemeral Storage — ข้อมูลหายทั้งหมดเมื่อ stop / terminate / hardware ล้มเหลว ไม่สามารถกู้คืนได้
  • ราคารวมอยู่ในค่า instance แล้ว — ไม่มีค่าใช้จ่ายแยกต่างหาก
  • ขนาดคงที่ตาม instance type — ไม่สามารถ resize ได้
08

AMI — Amazon Machine Image

AMI (Amazon Machine Image) คือ customization ของ EC2 — เก็บ OS + software + configuration + monitoring agent ไว้เป็น image พร้อมใช้ launch instance ใหม่ได้ทันที

  • Faster Boot — ทุก software ถูกติดตั้งไว้แล้วใน AMI ไม่ต้อง install ตอน boot
  • Region-specific — AMI ใน ap-southeast-1 ใช้ใน us-east-1 ไม่ได้ ต้อง copy AMI ข้าม region
  • AMI สร้างจาก EBS Snapshot ของ root volume

Public AMI (จาก AWS)

AMI ที่ AWS เตรียมไว้ให้ฟรี เช่น Amazon Linux 2, Ubuntu, Windows Server — ใช้เป็นจุดเริ่มต้นในการ customize

Your Own AMI

AMI ที่คุณสร้างเอง — launch EC2 → install/config → stop → Build AMI — ใช้กระจายเป็น template ภายในองค์กร

AWS Marketplace AMI

AMI ที่ vendor ขายผ่าน Marketplace — มาพร้อม software license (เช่น databases, security appliance) จ่ายผ่าน AWS bill

09

EC2 Image Builder — สร้าง AMI อัตโนมัติ

EC2 Image Builder เป็น service ที่ใช้ automate การสร้าง / maintain / validate / test AMI — ตั้งให้รันตามตารางหรือเมื่อมี package update

  • Automate การสร้าง AMI — ไม่ต้อง build manually ทุกครั้ง
  • ตั้ง schedule ได้ (เช่น weekly) หรือ trigger เมื่อ package update
  • มี validation & testing pipeline ในตัว — ทดสอบ AMI ก่อน publish
  • Free service — จ่ายเฉพาะ EC2, EBS, S3 ที่ใช้ระหว่าง build
10

EFS — Elastic File System

EFS คือ Managed NFS (Network File System) ที่ให้ EC2 instance หลายร้อยเครื่อง mount พร้อมกันได้ — ต่างจาก EBS ที่ attach ได้กับ instance เดียว

  • Multi-Attach หลายร้อย instance — หลาย EC2 ในหลาย AZ สามารถ mount EFS เดียวกันได้พร้อมกัน
  • Linux เท่านั้น — ใช้ POSIX file system (ไม่รองรับ Windows)
  • Multi-AZ, Highly Available — ข้อมูลซ้ำหลาย AZ อัตโนมัติ
  • Scalable — auto-grow ตามที่ใช้ ไม่ต้อง provision ขนาดล่วงหน้า
  • Pay-per-use — จ่ายตามที่ใช้จริง ไม่ต้องจองพื้นที่
  • แพงกว่า EBS gp2 ~3x — แต่คุ้มค่าสำหรับ shared storage ข้าม instance

EFS Standard (Multi-AZ)

เก็บข้อมูลซ้ำหลาย AZ เพื่อ high availability — เหมาะกับ production workload ที่ต้องการ availability สูง

EFS-IA (Infrequent Access)

ราคาถูกกว่า Standard ถึง 92% มีค่าใช้จ่ายเมื่อ retrieve — ใช้ Lifecycle Policy ย้ายไฟล์ที่ไม่ถูกใช้งาน >60 วันไป IA อัตโนมัติ

EFS One Zone (Single-AZ)

เก็บข้อมูลใน AZ เดียว ราคาถูก — เหมาะกับ dev / test environment ที่ไม่ต้องการ multi-AZ resilience

11

FSx for Windows File Server

Amazon FSx for Windows File Server คือ fully managed Windows file system — เป็น Windows-native shared storage บน AWS

  • รองรับ SMB protocol (Windows native file sharing)
  • รองรับ Windows NTFS filesystem
  • Integrate กับ Microsoft Active Directory (AD) — ใช้ AD permission ควบคุมการเข้าถึงไฟล์
  • Multi-AZ available, supports Windows ACLs, user quotas
  • เหมาะกับ Windows-based applications ที่ต้องการ shared storage
12

FSx for Lustre — HPC / ML

Amazon FSx for Lustre คือ high-performance Linux cluster file system — ชื่อ Lustre มาจาก 'Linux + cluster' ออกแบบมาสำหรับงานที่ต้องการ throughput และ IOPS สูงมาก

  • Performance สูงมาก — scale ได้ถึง 100s GB/s throughput, ล้าน IOPS, sub-millisecond latency
  • เหมาะกับ HPC (High Performance Computing)
  • เหมาะกับ Machine Learning (training data ขนาดใหญ่)
  • เหมาะกับ Analytics และ Financial Modeling
  • Integrate กับ S3 ได้ — อ่าน/เขียนไฟล์บน S3 ผ่าน FSx Lustre
13

Shared Responsibility สำหรับ EC2 Storage

AWS รับผิดชอบ (Security OF the Cloud)

Infrastructure ของ EBS / EFS / FSx (physical storage), Replication ภายใน AZ (EBS) และ Multi-AZ (EFS) อัตโนมัติ, Hardware failure replacement, ป้องกันการเข้าถึงโดย AWS employees, Encryption key infrastructure (KMS)

User รับผิดชอบ (Security IN the Cloud)

ตั้งค่า Backup / Snapshot เอง (EBS ไม่ backup อัตโนมัติ), เปิด Encryption หรือไม่, ข้อมูลที่เก็บบน drive, เข้าใจความเสี่ยงของ Instance Store (ephemeral), ตั้ง Delete on Termination ให้ถูกต้อง, IAM permissions

14

ตารางเปรียบเทียบ EBS vs Instance Store vs EFS

EBS

Block Storage (Network) | เร็ว | ข้อมูลไม่หายเมื่อ stop | 1 instance (หรือ 16 ด้วย Multi-Attach io1/io2) | ผูก AZ เดียว | Provisioned size | Linux + Windows

Instance Store

Block Storage (Physical) | เร็วที่สุด | ข้อมูลหายหมดเมื่อ stop/terminate | 1 instance เท่านั้น | ผูก AZ เดียว | Fixed size | Linux + Windows | ราคารวมกับ instance

EFS

File System (Network NFS) | ช้ากว่า EBS | ข้อมูลไม่หาย | หลายร้อย instance ข้าม AZ | Auto Scaling | Linux เท่านั้น | แพงสุด (~3x EBS gp2)

สรุปการเลือกใช้ — ใช้ scenario เป็นจุดเริ่มต้น แล้วจับคู่กับบริการที่เหมาะที่สุด:

  • ต้องการ persistent block storage สำหรับ instance เดียว (Boot volume, DB) → EBS
  • ต้องการ IOPS สูงสุด กับข้อมูลชั่วคราว (Cache, Buffer) → Instance Store
  • หลาย instance ต้องแชร์ไฟล์ข้าม AZEFS
  • Windows shared storage (SMB + Active Directory) → FSx for Windows
  • HPC / ML cluster ที่ต้องการ throughput สูงระดับ 100 GB/s → FSx for Lustre
15

Summary — สรุปประเด็นสำคัญ

EC2 Storage มี 4 กลุ่มหลัก: EBS สำหรับ block storage แบบติด instance เดียว, Instance Store สำหรับ disk ที่เร็วที่สุดแต่ชั่วคราว, EFS สำหรับ shared file system บน Linux และ FSx สำหรับ workload เฉพาะทาง (Windows / HPC) — เลือกได้จาก persistence, performance และ access pattern

EBS — Block Storage

Network drive ที่ผูกกับ AZ เดียว และ persistent เมื่อ stop instance

EBS Volume Types

gp3 เป็น default ที่แนะนำ ส่วน io2 ให้ IOPS สูงสุดสำหรับ DB ที่ต้องการ performance

EBS HDD (st1 / sc1)

ราคาถูกสำหรับ throughput-intensive workload แต่ใช้เป็น Boot Volume ไม่ได้

Snapshot

Backup แบบ incremental เก็บใน S3 และเป็นวิธีเดียวที่ย้าย EBS ข้าม AZ หรือ Region

Multi-Attach

ผูก EBS เดียวกับสูงสุด 16 instance — รองรับเฉพาะ io1 / io2 และต้องใช้ cluster filesystem

EBS Encryption

ใช้ AWS KMS (AES-256) เข้ารหัส data at rest, in transit และ snapshot โดยไม่กระทบ performance

Instance Store

Physical disk บน host server — เร็วที่สุด แต่ข้อมูลหายเมื่อ stop หรือ terminate

AMI

Image ของ EC2 (OS + software + config) เป็น region-specific ต้อง copy ก่อนใช้ใน region อื่น

EC2 Image Builder

Service ฟรีที่ automate การสร้าง AMI ตาม schedule พร้อม validation และ testing

EFS — File System

NFS shared file system สำหรับ Linux เท่านั้น ใช้ได้หลายร้อย instance ข้าม AZ

FSx for Windows

Managed Windows file system รองรับ SMB + Active Directory สำหรับ Windows app

FSx for Lustre

Linux cluster file system สำหรับ HPC / ML / Analytics ให้ throughput ระดับ 100s GB/s

  • Boot Volume: ต้องเป็น SSD (gp2/gp3/io1/io2) เท่านั้น — HDD (st1/sc1) ใช้เป็น root ไม่ได้
  • ย้าย EBS ข้าม AZ: ใช้ Snapshot → restore ใน AZ ใหม่ (EBS ผูกกับ AZ เดียวเท่านั้น)
  • Snapshot Archive: ลดราคาได้ ~75% เหมาะกับ snapshot ที่ไม่ค่อยใช้
  • Recycle Bin: ป้องกันการลบ snapshot โดยไม่ตั้งใจ — restore ได้ภายใน retention period
  • FSR (Fast Snapshot Restore): ทำให้ restore จาก snapshot เร็วขึ้นทันที (no warm-up)
  • EFS Storage Classes: Standard, IA และ One Zone — แพงกว่า EBS gp2 ประมาณ 3 เท่า
  • OS Compatibility: EFS = Linux, FSx for Windows = Windows, FSx for Lustre = Linux HPC
ทดสอบ

คำถามทบทวน

7 ข้อ — เลือกคำตอบเพื่อดูเฉลยและคำอธิบาย

ข้อ 1 / 7คะแนน 0

บริษัทต้องการ EBS Volume ที่ใช้เป็น Boot Volume ของ EC2 instance — ข้อใด ไม่สามารถ ใช้เป็น Boot Volume ได้?