⚡ AWS SAA-C03 Fast-Pass Exam Battle Cards (Stéphane Maarek Complete Edition)
คัมภีร์สรุปเทียบ 12 หมวดชี้ชะตาข้อสอบ AWS Certified Solutions Architect - Associate (SAA-C03)
ครอบคลุมเนื้อหาครบทั้ง 396 บทเรียนของ Stéphane Maarek (Udemy) สกัดเฉพาะจุดตัดทางสถาปัตยกรรม (Trade-offs), กลยุทธ์ข้อสอบ (Exam Cheat Codes), และกับดักที่คนชอบตอบผิด (Exam Traps)
💻 Card 1: EC2 & Compute Deep Dive (Maarek L32–55)
1.1 EC2 Purchasing Options & Spot Fleet (ออกสอบทุกรอบ)
| รูปแบบ |
สัญญา / ค่าใช้จ่าย |
การถูกขัดจังหวะ |
เหมาะกับงานแบบไหน? |
| On-Demand |
จ่ายตามจริงเป็นวินาที ไม่มีข้อผูกมัด |
AWS ยึดคืนไม่ได้ |
งานระยะสั้น, เพิ่งเริ่มทดสอบ, โหลดคาดเดาไม่ได้แต่ห้ามล่ม |
| Reserved Instances (RI) |
ผูกสัญญา 1 หรือ 3 ปี (Standard ลดสูงสุด 72%, Convertible ยืดหยุ่นเปลี่ยน Family ได้) |
ไม่โดนตัด |
งานรันตลอด 24/7 มีการใช้งานแน่นอน (Steady-state) |
| Savings Plans |
ผูกสัญญาจ่าย \$ / hour ตลอด 1-3 ปี (Compute SP ยืดหยุ่นสุดครอบคลุม EC2, Fargate, Lambda) |
ไม่โดนตัด |
แนะนำสูงสุดสำหรับองค์กรที่ต้องการประหยัดระยะยาว |
| Spot Instances |
ส่วนลดสูงสุด 90% จากราคา On-Demand |
โดนสั่งปิดล่วงหน้า 2 นาที |
งาน Stateless, Batch Processing, Big Data, CI/CD |
| Dedicated Hosts |
เช่า Server ฟิสิคัลทั้งตู้ ควบคุม Socket/Core ได้ |
ไม่โดนตัด |
ติดปัญหา License ซอฟต์แวร์เดิม (BYOL) หรือ Compliance เคร่งครัด |
| Dedicated Instances |
รันบนฮาร์ดแวร์เฉพาะ ไม่แชร์กับลูกค้ารายอื่น (ระดับ VPC) |
ไม่โดนตัด |
ข้อกำหนดความปลอดภัยที่ห้ามแชร์เครื่องกับผู้ใช้อื่น |
🎯 กลยุทธ์ Spot Fleet & Allocation Strategies (จุดที่ข้อสอบชอบถามลึก):
- Spot Fleet: สั่งรวมกลุ่ม Instance โดยกำหนด Target Capacity แล้วผสมหลาย Instance Types และสัดส่วน On-Demand + Spot ได้
- Allocation Strategies (สำคัญมาก):
lowestPrice: ดึงจาก Pool ที่ราคาถูกที่สุด (เสี่ยงโดนยึดคืนพร้อมกันถ้า Pool นั้นหมด)
capacityOptimized: ปลอดภัยที่สุดสำหรับ Spot! ดึงจาก Pool ที่ AWS มี Capacity เหลือเยอะที่สุด $\rightarrow$ ลดอัตราการถูกตัด (Interruption) ต่ำที่สุด
priceCapacityOptimized (แนะนำโดย AWS): บาลานซ์ระหว่างราคาถูกที่สุดกับ Pool ที่เสถียรที่สุด
diversified: กระจายสัดส่วนเท่าๆ กันในทุก Pool
- การรับมือเมื่อโดนสั่งคืนเครื่อง:
- 2-Minute Warning: สัญญาณเตือนล่วงหน้า 120 วินาที ผ่าน IMDSv2 (
/spot/instance-action) และ Amazon EventBridge $\rightarrow$ สั่ง Connection Draining บน ALB และบันทึก Checkpoint ลง S3
- Capacity Rebalance Recommendation: ส่งสัญญาณเตือนล่วงหน้า ก่อน 2-Minute Warning เพื่อให้ ASG รีบเปิดเครื่องใหม่จาก Pool อื่นมาสำรองทันที
- Interruption Behaviors: เลือกได้ว่าจะให้เครื่อง
terminate, stop, หรือ hibernate
1.2 EC2 Placement Groups 3 รูปแบบ (จำภาพนี้เข้าห้องสอบ)
- Cluster: รันเครื่องใน AZ เดียวกัน บนฮาร์ดแวร์ใกล้กัน $\rightarrow$ ได้ Network แบนด์วิธสูงถึง 10Gbps+ Latency ต่ำสุดขีด เหมาะกับงาน High Performance Computing (HPC), Big Data (ความเสี่ยง: ถ้าตู้แร็คพัง พังหมด)
- Spread: กระจายเครื่องลงบน ฮาร์ดแวร์คนละตู้แร็คและคนละ AZ อย่างเด็ดขาด (จำกัดสูงสุด 7 เครื่องต่อ AZ ต่อ Group) $\rightarrow$ เหมาะกับ Mission-Critical App ที่ต้องการลด Blast Radius
- Partition: แบ่ง Cluster เป็นกลุ่มๆ (Partition) เครื่องในพาร์ทิชันเดียวกันจะไม่แชร์ตู้แร็คกับพาร์ทิชันอื่น $\rightarrow$ เหมาะกับ Hadoop, HDFS, Cassandra, Kafka
1.3 EC2 Hibernate (จำเงื่อนไขข้อสอบ)
- บันทึกสถานะข้อมูลใน RAM ลงใน Root EBS Volume แล้วปิดเครื่อง เมื่อเปิดใหม่ ไม่ต้องบูต OS ใหม่ เปิดมาพร้อมทำงานทันที
- ⚠️ เงื่อนไขข้อสอบ: RAM ต้องไม่เกิน 150GB, Root Volume ต้อง เข้ารหัส (Encrypted) และรองรับเฉพาะ On-Demand / Reserved / Spot เท่านั้น
1.4 🎯 Exam Cheat Codes (Card 1)
- "Lowest cost compute for batch jobs that can restart from checkpoint" $\rightarrow$ EC2 Spot Instances
- "Batch processing with lowest interruption risk on Spot" $\rightarrow$ Spot Fleet with
capacity-optimized strategy
- "Low network latency and high throughput between EC2 instances in a single AZ" $\rightarrow$ Cluster Placement Group
- "Distribute critical instances across distinct underlying hardware to prevent simultaneous failure" $\rightarrow$ Spread Placement Group
- "Preserve in-memory application state across instance stop and start for fast boot" $\rightarrow$ EC2 Hibernate
- "Strict licensing requirement based on physical CPU sockets and cores" $\rightarrow$ Dedicated Hosts
💾 Card 2: Storage & File Systems (Maarek L56–69, 172–181)
2.1 EBS Volume Types (SSD vs HDD)
gp3 (General Purpose SSD): สตอเรจมาตรฐาน baseline 3,000 IOPS และ 125 MB/s ปรับเพิ่ม IOPS ได้โดยไม่ต้องขยายขนาดกิกะไบต์
io2 / io2 Block Express: สำหรับฐานข้อมูลขนาดใหญ่ที่ต้องการ Sub-millisecond latency รองรับสูงถึง 256,000 IOPS ความทนทาน 99.999%
st1 (Throughput Optimized HDD): สำหรับงาน Big Data, Data Warehouses, Log Processing (เน้นอ่านเขียนแบบ Sequential) บูต OS ไม่ได้!
sc1 (Cold HDD): ข้อมูลขนาดใหญ่ที่นานๆ เข้าถึงที ราคาถูกสุดในกลุ่ม EBS บูต OS ไม่ได้!
- EBS Multi-Attach: เฉพาะ
io1/io2 เท่านั้น ต่อ EBS ก้อนเดียวเข้ากับ EC2 ได้หลายเครื่องพร้อมกัน ใน AZ เดียวกัน (ต้องใช้ Cluster-aware filesystem)
2.2 EFS vs EBS vs Instance Store vs FSx
| สตอเรจ |
เข้าถึงพร้อมกัน |
โปรโตคอล |
ขอบเขต (Scope) |
การใช้งานเด่น |
| EBS |
เครื่องเดียว (ยกเว้น Multi-Attach) |
Block Device |
ผูกกับ 1 AZ (ย้ายข้าม AZ ต้อง Snapshot) |
OS Boot Volume, Database |
| Instance Store |
เครื่องเดียว (Local NVMe) |
Block Device |
ฟิสิคัลของเครื่องนั้นๆ |
เร็วที่สุดใน AWS! แต่ข้อมูลหายเมื่อ Stop/Terminate (Ephemeral) |
| Amazon EFS |
พร้อมกันเป็นพันเครื่อง |
NFS v4 (POSIX) |
Multi-AZ (Linux เท่านั้น) |
Shared Content, Web Server Farms, WordPress |
| FSx for Windows |
พร้อมกันหลายเครื่อง |
SMB, NTFS |
Multi-AZ (รองรับ Windows/Linux) |
ใช้งานคู่กับ Microsoft Active Directory |
| FSx for Lustre |
พร้อมกันหลายเครื่อง |
POSIX Distributed |
ซิงค์คู่กับ Amazon S3 |
งานคำนวณความเร็วสูง HPC, Machine Learning |
| FSx for NetApp ONTAP |
พร้อมกันหลายเครื่อง |
Multi-protocol (NFS, SMB, iSCSI) |
Multi-AZ |
ย้าย Storage จาก On-Premises ที่ใช้ NetApp ONTAP เดิม |
2.3 Hybrid Storage & Data Transfer
- AWS Snow Family:
- Snowcone: ตัวเล็กกะทัดรัด (8TB) พกพาง่าย ทนทาน
- Snowball Edge Storage Optimized: ขนส่งข้อมูลก้อนใหญ่ (80TB/210TB NVMe)
- Snowball Edge Compute Optimized: มี vCPU และ GPU สำหรับประมวลผล ณ จุด Edge
- 💡 Snowball to Glacier Trick: ในข้อสอบ ถ้าต้องการส่งข้อมูลออฟไลน์ขนาดใหญ่เข้า S3 Glacier $\rightarrow$ ต้องส่งเข้า Amazon S3 ผ่าน Snowball ก่อน แล้วใช้ Lifecycle Rule ย้ายลง Glacier!
- AWS Storage Gateway:
- S3 File Gateway: แชร์โฟลเดอร์ NFS/SMB ในออฟฟิศ แต่ข้อมูลจริงไปเก็บใน S3 (แคชไฟล์ที่ใช้บ่อยไว้ในออฟฟิศ)
- Volume Gateway (iSCSI):
- Cached Volumes: เก็บข้อมูลหลักใน S3 และแคชข้อมูลที่ใช้บ่อยไว้ในออฟฟิศ
- Stored Volumes: เก็บข้อมูลทั้งหมดไว้ในออฟฟิศ และสำรอง Snapshot ขึ้น S3 อัตโนมัติ
- Tape Gateway (VTL): เปลี่ยนระบบตลับเทปสำรองข้อมูลเดิม ให้ส่งขึ้น S3/Glacier โดยไม่ต้องแก้ซอฟต์แวร์ Backup
- AWS DataSync: โปรแกรมซิงค์ข้อมูลผ่านเน็ตความเร็วสูง ย้ายข้อมูลจาก On-Premises เข้า S3, EFS, FSx แบบตั้งเวลาอัตโนมัติ รักษาสิทธิ์ Permissions เดิมครบถ้วน
⚖️ Card 3: High Availability, ELB & Auto Scaling (Maarek L70–86)
3.1 ALB vs NLB vs Gateway Load Balancer
- Application Load Balancer (ALB - Layer 7):
- โปรโตคอล: HTTP, HTTPS, WebSocket, gRPC
- ฟีเจอร์: Path-based routing (
/api), Host-based routing (app.domain.com), Query params, Redirects (HTTP $\rightarrow$ HTTPS)
- IP Address: Dynamic IP เปลี่ยนแปลงตลอดเวลา (ต้องชี้ด้วย DNS Alias เสมอ)
- Network Load Balancer (NLB - Layer 4):
- โปรโตคอล: TCP, UDP, TLS
- ความเร็ว: ระดับ Microseconds, รองรับโหลดมหาศาลหลายล้านคำขอต่อวินาที
- IP Address: มี Static IP / Elastic IP ประจำตัวคงที่ต่อ AZ
- Gateway Load Balancer (GWLB - Layer 3/4):
- สำหรับนำเครื่องมือความปลอดภัยภายนอก (3rd-party Firewalls, IDS/IPS) มาวางขวางทราฟฟิก (Inline Inspection) โดยใช้โปรโตคอล GENEVE (Port 6081)
3.2 Advanced ELB Features
- Sticky Sessions (Session Affinity): บังคับให้ผู้ใช้คนเดิมวิ่งไปหา EC2 เครื่องเดิมเสมอ (ใช้ Cookie: มีทั้งแบบ Duration-based ที่ ELB เจนให้ และ Application-based ที่แอปเจนเอง)
- Cross-Zone Load Balancing: กระจายทราฟฟิกข้าม AZ ให้เท่ากันทุกเครื่อง (ALB เปิดเป็นค่าเริ่มต้นฟรี / NLB ปิดอยู่ ถ้าเปิดมีค่า Data Transfer ข้าม AZ)
- SSL/TLS & SNI (Server Name Indication): รองรับการผูก SSL Certificate หลายใบไว้บน Load Balancer ตัวเดียว โดยดูจากชื่อ Hostname ที่ Client ร้องขอ
- Connection Draining (Deregistration Delay): ตั้งเวลา (1-3600 วิ) ให้เครื่องที่กำลังจะถูกปลด ทำงานกับ Request ที่ค้างอยู่ให้เสร็จก่อนตัดการเชื่อมต่อ
3.3 Auto Scaling Group (ASG) Policies
- Target Tracking Scaling: กำหนดเป้าหมายคงที่ เช่น รักษา Average CPU ที่ 50%
- Step Scaling: ขยายเครื่องตามระดับความรุนแรงของ CloudWatch Alarm
- Scaling Cooldown (ค่าเริ่มต้น 300 วิ): ระยะเวลาพักไม่ให้สั่งขยาย/ลดเครื่องซ้ำซ้อนขณะที่เครื่องใหม่กำลังบูต
- Lifecycle Hooks: หยุดกระบวนการ Launching หรือ Terminating ชั่วคราว เพื่อสั่งรันสคริปต์ ดึงข้อมูล หรือส่ง Logs ก่อนเครื่องจะปิดตัวลงจริง
🗄️ Card 4: RDS, Aurora & ElastiCache (Maarek L87–100)
4.1 RDS Multi-AZ vs Read Replicas vs Aurora Global Database
- Multi-AZ Deployment:
- จุดประสงค์: High Availability & Disaster Recovery
- การเขียน: Synchronous ไปยัง Standby DB ในอีก AZ
- การทำงาน: Standby เครื่องสำรอง ห้ามใครเข้าไปอ่านหรือเขียน มีไว้รอสลับสาย (Failover) อัตโนมัติผ่านการแก้ CNAME ภายใน < 60 วิ
- Read Replicas:
- จุดประสงค์: Performance / Read Scalability
- การเขียน: Asynchronous (สร้างได้สูงสุด 15 ตัว)
- การทำงาน: เปิดให้แอปยิงคำสั่ง
SELECT อ่านข้อมูลได้เพื่อแบ่งเบา Master (รองรับ Cross-Region)
- Amazon Aurora Architecture:
- เก็บข้อมูลแบบ Shared Storage 6 สำเนา กระจายอยู่ใน 3 AZs
- 1 Primary (Writer) + Replicas ได้สูงสุด 15 ตัว (Readers)
- Endpoints:
- Cluster Endpoint: ชี้ไปยัง Primary Writer ตัวเดียวเสมอ
- Reader Endpoint: ทำ Load Balancing กระจายการอ่านไปยัง Read Replicas ทุกตัว
- Custom Endpoint: กำหนดกลุ่ม Replica เฉพาะสำหรับงานหนัก (เช่น งาน Analytic)
- Aurora Serverless v2: ขยาย Compute อัตโนมัติเป็นหน่วย ACU เหมาะกับงานที่ไม่ต่อเนื่อง โหลดผันผวน
- Aurora Global Database: 1 Region หลัก + สูงสุด 5 Secondary Regions สำเนาข้อมูลข้ามทวีปเร็วกว่า 1 วินาที กู้ภัยพิบัติได้ในระดับ < 1 นาที
- Amazon RDS Proxy:
- บริการ Connection Pooler แบบ Serverless ช่วยลดภาระการเปิด Connection จำนวนมหาศาลจาก AWS Lambda ไปยัง RDS/Aurora
- ลดเวลา Failover ของ RDS/Aurora ลงได้ถึง 66% และบังคับใช้ IAM Authentication ได้
4.2 ElastiCache & พอร์ตยอดฮิตที่ต้องจำ (Ports Checklist)
- Redis: รองรับ Data Structures, มี Multi-AZ, Read Replicas, Data Persistence, Backup/Restore, และรองรับ Pub/Sub $\rightarrow$ ตอบ Redis เมื่อต้องการ Session Store หรือ Caching ที่เสถียรสูง
- Memcached: Cache แบบ Pure Memory กระจายหลาย Thread ไม่มีสำเนา ไม่มี Backup
- 🔌 พอร์ตที่ออกสอบบ่อยที่สุด (Memorize!):
22 = SSH / SFTP
80 = HTTP / 443 = HTTPS
3306 = MySQL / Aurora MySQL
5432 = PostgreSQL / Aurora PostgreSQL
1433 = Microsoft SQL Server
1521 = Oracle Database
6379 = Redis
11211 = Memcached
🌐 Card 5: Route 53 & Hybrid DNS (Maarek L101–120)
5.1 DNS Records: CNAME vs Alias
- CNAME: ชี้จาก Hostname ไปยัง Hostname อื่น (เช่น
app.domain.com $\rightarrow$ lb.aws.com) ห้ามใช้กับ Zone Apex (เช่น domain.com เปล่าๆ)!
- Alias Record: ฟีเจอร์เฉพาะของ Route 53 ชี้ไปยัง AWS Resources (ALB, CloudFront, S3 Website) ใช้งานกับ Zone Apex ได้ และ ไม่คิดค่าตรวจ Health Check!
5.2 8 Routing Policies ใน Route 53
- Simple: สุ่มตอบค่า IP แบบธรรมดา ไม่มี Health Check
- Weighted: แบ่งสัดส่วนเปอร์เซ็นต์ทราฟฟิก (เช่น 70/30 สำหรับทดสอบ Canary หรือ Blue/Green)
- Latency-based: ส่งผู้ใช้ไปยัง Region ที่มี Network Latency ต่ำที่สุดสำหรับผู้ใช้คนนั้น
- Failover: ทำ Active-Passive คู่กับ Route 53 Health Check สลับไปเครื่องสำรองเมื่อตัวหลักล่ม
- Geolocation: ส่งตาม ตำแหน่งประเทศ/ทวีปของผู้ใช้ (เช่น ผู้ใช้ในยุโรปส่งไป Region แฟรงก์เฟิร์ต เพื่อกฎหมาย PDPA/GDPR)
- Geoproximity: ส่งตามตำแหน่งภูมิศาสตร์ + ปรับค่า Bias ดึงทราฟฟิกเข้าหา Region ที่ต้องการ (ต้องใช้ Route 53 Traffic Flow)
- IP-based: ส่งตามบล็อก CIDR ของ Client IP
- Multi-Value Answer: สุ่มตอบ IP ที่ Healthy กลับไปได้สูงสุด 8 รายการ ทำหน้าที่คล้าย Load Balancer เบื้องต้น
5.3 Route 53 Resolver สำหรับ Hybrid DNS
- Inbound Endpoint: อนุญาตให้ DNS Server ใน On-Premises ยิงถาม DNS ของ AWS เพื่อเปิดเว็บระบบปิดใน Private Hosted Zone
- Outbound Endpoint: อนุญาตให้ AWS ยิงถาม DNS Server ฝั่ง On-Premises เพื่อเข้าถึงระบบภายในองค์กร
🪣 Card 6: Amazon S3 Complete Guide (Maarek L128–164)
6.1 S3 Storage Classes & Lifecycle
- Standard: เข้าถึงบ่อยทั่วไป
- Intelligent-Tiering: ย้ายไฟล์ระหว่าง Frequent/Infrequent/Archive อัตโนมัติ ไม่มีค่าดึงข้อมูล เหมาะกับข้อมูลที่ไม่รู้พฤติกรรมการใช้งาน
- Standard-IA / One Zone-IA: เก็บไฟล์นานๆ เปิดที (30 วันขึ้นไป) มีค่าดึงข้อมูล (One Zone ถูกกว่า 20% แต่อยู่ AZ เดียว)
- Glacier Instant Retrieval: ดึงข้อมูลเร็วระดับ Milliseconds (เก็บขั้นต่ำ 90 วัน)
- Glacier Flexible Retrieval: ดึงข้อมูล 1-5 นาที (Expedited) หรือ 3-5 ชั่วโมง (Standard)
- Glacier Deep Archive: ถูกที่สุดในโลกคลาวด์! กู้ข้อมูล 12-48 ชม. สำหรับเก็บรักษาตามกฎหมาย 7-10 ปี
- S3 Express One Zone: คลาสใหม่ล่าสุด เก็บใน Directory Bucket ใน 1 AZ เร็วกว่า Standard 10 เท่า ตอบสนองระดับ Single-digit millisecond สำหรับงาน AI/ML Training
6.2 S3 Security, Encryption & Object Lock
- S3 Encryption 4 รูปแบบ:
- SSE-S3: เข้ารหัสด้วยคีย์ AES-256 ที่ AWS ดูแลให้ (เป็นค่าเริ่มต้น ฟรี)
- SSE-KMS: เข้ารหัสด้วยคีย์ AWS KMS (ควบคุมสิทธิ์ได้, ตรวจสอบผ่าน CloudTrail ได้ แต่ต้องระวังเรื่อง KMS Request Quota Throttling)
- DSSE-KMS: เข้ารหัส 2 ชั้นด้วย KMS 2 คีย์ สำหรับข้อกำหนดความปลอดภัยระดับสูง
- SSE-C: ลูกค้าส่งกุญแจมาเองผ่าน HTTPS (AWS ไม่ได้เก็บกุญแจไว้)
- S3 Object Lock (WORM - Write Once Read Many):
- Compliance Mode: ไม่มีใครลบไฟล์ได้เด็ดขาด แม้แต่ Root Account! จนกว่าจะหมดเวลา Retention
- Governance Mode: ผู้ใช้ทั่วไปลบไม่ได้ แต่เปิดให้ IAM User บางคนที่มีสิทธิ์พิเศษปลดล็อกได้
- Legal Hold: ล็อกไฟล์ไว้แบบไม่มีกำหนดเวลาจนกว่าจะสั่งปลดออก
- S3 Versioning & MFA Delete: ป้องกันการเผลอลบไฟล์ โดยเก็บประวัติไฟล์เดิมไว้ ถ้าจะลบถาวร (Delete Permanently) ต้องใส่รหัส MFA จาก Root Account ผ่าน AWS CLI
- S3 Performance Optimization:
- Multipart Upload: แนะนำสำหรับไฟล์ > 100MB และ บังคับใช้สำหรับไฟล์ > 5GB (อัปโหลดแยกชิ้นแบบขนาน เร็วและกันหลุด)
- S3 Transfer Acceleration: อัปโหลดไฟล์ผ่าน Edge Location ของ CloudFront เพื่อวิ่งบนสายไฟเบอร์ส่วนตัวของ AWS เข้าสู่ S3 Bucket
- Byte-Range Fetch: ดาวน์โหลดข้อมูลเฉพาะช่วงไบต์ที่ต้องการแบบคู่ขนาน (Parallel)
⚡ Card 7: CloudFront & Edge Acceleration (Maarek L165–171)
7.1 CloudFront vs Global Accelerator
| หัวข้อ |
Amazon CloudFront |
AWS Global Accelerator |
| ฟังก์ชันหลัก |
Content Delivery Network (CDN) แคชข้อมูลที่ Edge |
เร่งความเร็ว Network Routing ผ่านโครงข่าย AWS Global Network |
| ประเภทข้อมูล |
แคชข้อมูล Static (รูป, วิดีโอ) และ Dynamic (HTTP/HTTPS) |
ไม่มีการแคชข้อมูล! รองรับทั้ง TCP, UDP, HTTP, VoIP, Gaming |
| IP Address |
ชี้ผ่าน Domain Name (Edge ปรับเปลี่ยนตลอดเวลา) |
มี Anycast Static IPv4 ให้ 2 ตัวคงที่ |
| การปกป้อง S3 |
ใช้ Origin Access Control (OAC) ป้องกันไม่ให้ใครเข้าถึง S3 ตรงๆ |
ส่งทราฟฟิกเข้า ALB หรือ EC2 ในแต่ละ Region |
7.2 CloudFront Security: Signed URLs vs Signed Cookies
- Signed URL: ให้สิทธิ์เข้าถึงไฟล์เดี่ยวๆ 1 ลิงก์ (เหมาะกับดาวน์โหลดไฟล์เดี่ยว, ผู้ใช้ที่อุปกรณ์ไม่รองรับ Cookie)
- Signed Cookie: ให้สิทธิ์เข้าถึง ไฟล์หลายไฟล์พร้อมกัน หรือเข้าถึงทั้งโฟลเดอร์ (เหมาะกับเว็บสมาชิกดูหนังแบบ Streaming)
🔄 Card 8: Decoupling & Serverless Architecture (Maarek L182–229)
8.1 SQS vs SNS vs Kinesis vs EventBridge
- Amazon SQS (คิวพักข้อความ - Pull Model):
- Standard: Throughput ไม่จำกัด, ลำดับอาจสลับ, อาจมีข้อความซ้ำ
- FIFO (
.fifo): ข้อความเข้าก่อนออกก่อนเป๊ะ, ไม่ซ้ำ, จำกัด 300 msg/s (หรือ 3,000 เมื่อรวม Batch)
- Visibility Timeout: ข้อความถูกซ่อนขณะประมวลผล (หากไม่เสร็จในเวลานี้ ข้อความจะเด้งกลับมาในคิว)
- Dead-Letter Queue (DLQ): คิวเก็บข้อความเสียหลัง Retry ครบ
maxReceiveCount
- Long Polling (1-20 วิ): ลดค่าใช้จ่ายและป้องกันการตอบสนองแบบคิวว่างเปล่า (Empty Receive)
- Amazon SNS (กระจายข้อความ - Push Model):
- ส่ง 1 ครั้ง กระจายให้ผู้รับหลายคนพร้อมกัน (Fan-out Pattern ส่งเข้าหลาย SQS Queues เพื่อประมวลผลคู่ขนาน)
- Amazon Kinesis (สตรีมข้อมูลขนาดใหญ่):
- Kinesis Data Streams: Real-time สตรีมข้อมูลระดับวินาที ขยายตาม Shards เก็บข้อมูลได้ 1-365 วัน
- Kinesis Data Firehose: Serverless เทข้อมูลลง S3, Redshift, OpenSearch, Splunk อัตโนมัติ (Delay ขั้นต่ำ 60 วิ)
- Amazon EventBridge (Event Bus อัจฉริยะ):
- กรองและกระจาย Event ตามเงื่อนไข เชื่อมต่อกับระบบภายนอก (SaaS เช่น Shopify, Datadog) ได้โดยตรง
8.2 AWS Lambda & DynamoDB Deep Dive
- AWS Lambda:
- ทำงานไม่เกิน 15 นาที, Memory 128MB - 10GB (CPU ขยายตาม RAM),
/tmp ชั่วคราวได้ถึง 10GB
- Cold Start: ลดได้ด้วย Provisioned Concurrency หรือ SnapStart (สำหรับ Java)
- Lambda in VPC: ต้องใช้ Hyperplane ENI และหากต้องการออกเน็ต ต้องต่อผ่าน Private Subnet ที่ชี้ไปยัง NAT Gateway!
- Lambda@Edge vs CloudFront Functions:
- CloudFront Functions: รัน JavaScript สั้นๆ บน Viewer Request/Response เร็วระดับ Sub-millisecond (แก้ Header, Redirect)
- Lambda@Edge: รัน Node.js/Python ซับซ้อน เชื่อมต่อ Network ได้ รองรับ Origin Request/Response
- Amazon DynamoDB:
- Primary Key: Partition Key (PK) เดี่ยวๆ หรือ Partition Key + Sort Key (SK) รวมกัน
- LSI vs GSI:
- LSI (Local Secondary Index): PK เดิมแต่เปลี่ยน SK ต้องสร้างตั้งแต่ตอนตั้งตารางเท่านั้น (แก้ทีหลังไม่ได้!)
- GSI (Global Secondary Index): เปลี่ยนทั้ง PK และ SK สร้างหรือลบเมื่อไหร่ก็ได้
- DAX (DynamoDB Accelerator): แคช In-Memory ความเร็วระดับ Microsecond สำหรับงานอ่านซ้ำๆ
- DynamoDB Streams: ส่ง Event การเพิ่ม/แก้/ลบข้อมูลแบบเรียลไทม์ (เก็บ 24 ชม.) ไปให้ Lambda หรือใช้ทำ Global Tables (Active-Active Multi-Region)
📊 Card 9: Databases & Big Data Analytics (Maarek L230–263)
9.1 Specialty Databases
- DocumentDB: จัดเก็บ JSON Document (เข้ากันได้กับ MongoDB)
- Neptune: ฐานข้อมูลแบบ Graph ความสัมพันธ์ซับซ้อน เช่น Social Network, ตรวจจับการฉ้อโกง (Fraud Detection)
- Keyspaces: เข้ากันได้กับ Apache Cassandra รองรับโหลดมหาศาลแบบ Wide-column
- Timestream: ฐานข้อมูลสำหรับข้อมูลเชิงเวลา (Time-series) เช่น IoT, เซนเซอร์, ข้อมูลเมตริกระบบ
9.2 Big Data & Machine Learning Services
- Amazon Athena: รัน SQL ถามข้อมูลใน S3 ได้ทันทีแบบ Serverless คิดเงินตามปริมาณข้อมูลที่สแกน (ลดค่าใช้จ่ายด้วยการแปลงไฟล์เป็น Parquet/ORC)
- Amazon Redshift: Data Warehouse ประมวลผลแบบ Columnar (OLAP) สำหรับทำรายงาน BI / Redshift Spectrum รัน SQL ดึงข้อมูลจาก S3 ได้โดยตรง
- Amazon EMR: รันคลัสเตอร์ Hadoop, Spark, Presto, Hive ประมวลผล Big Data บน EC2 (รองรับ Spot)
- AWS Glue: Serverless ETL มี Glue Crawler วิ่งแกะ Schema ข้อมูลมาเก็บไว้ใน Glue Data Catalog
- Amazon OpenSearch: สำหรับระบบค้นหาในเว็บและการวิเคราะห์ Logs (ELK Stack เดิม)
- 🤖 AI Services (จำหน้าที่ 1 บรรทัด):
- Rekognition: สแกนภาพ/วิดีโอ (ตรวจจับใบหน้า, วัตถุ, เนื้อหาไม่เหมาะสม)
- Transcribe: แปลงเสียงพูดเป็นข้อความ (Speech-to-Text)
- Polly: แปลงข้อความเป็นเสียงพูดเสมือนจริง (Text-to-Speech)
- Translate: แปลภาษาต่างประเทศแบบเรียลไทม์
- Lex: สร้าง Chatbot และระบบตอบรับอัตโนมัติ (เทคโนโลยีเดียวกับ Alexa)
- Comprehend: วิเคราะห์อารมณ์และข้อความ (NLP Sentiment Analysis)
- Textract: ดูดข้อความและฟอร์มตารางจากไฟล์ PDF/รูปภาพสแกน
- Kendra: เสิร์ชเอนจินอัจฉริยะสำหรับค้นหาเอกสารภายในองค์กร
🔍 Card 10: Monitoring, Auditing & Governance (Maarek L264–291)
10.1 CloudWatch vs CloudTrail vs AWS Config
- Amazon CloudWatch: มอนิเตอร์ ประสิทธิภาพการทำงาน (Performance & Health) เช่น CPU, Network, Disk I/O, Custom Metrics
- ⚠️ ข้อสอบชอบออก: CloudWatch ปกติ มองไม่เห็น RAM และพื้นที่ดิสก์ว่าง ถ้าต้องการมอนิเตอร์ RAM ต้องลง CloudWatch Unified Agent ภายในเครื่อง EC2!
- AWS CloudTrail: บันทึกประวัติ "ใครทำอะไร ที่ไหน เมื่อไหร่ ผ่าน API ใด" (Auditing & API Activity)
- AWS Config: บันทึกประวัติ "การเปลี่ยนแปลงคอนฟิกูเรชันของทรัพยากรและการปฏิบัติตามกฎ (Compliance)" เช่น แจ้งเตือนเมื่อมีคนเผลอเปิด S3 เป็น Public
10.2 AWS Organizations & Multi-Account Governance
- Consolidated Billing: รวมบิลจ่ายเงินจุดเดียว แชร์ส่วนลดตามปริมาณการใช้งาน และแชร์โควตา Reserved Instances ข้าม Account
- Service Control Policies (SCPs): เพดานจำกัดสิทธิ์ของทุก Account ใต้สังกัด
- ⚠️ SCP ไม่ได้ให้สิทธิ์ แต่เป็นขอบเขตจำกัดสิทธิ์ หาก SCP บล็อกไว้ แม้แต่ Root Account ของ Member Account นั้นก็ไม่มีสิทธิ์ทำ! (แต่ SCP ไม่มีผลบังคับใช้กับ Management Account หลัก)
- AWS Control Tower: ระบบสร้าง Landing Zone อัตโนมัติ คุมหลายร้อย Account ด้วย Guardrails
🔐 Card 11: Security & Encryption (Maarek L292–312)
11.1 KMS, Secrets Manager & Security Services
- AWS KMS (Key Management Service):
- คีย์ประเภท Customer Managed Key (CMK): สร้าง หมุนเวียนคีย์ (Rotation) และคุม Policy ได้เอง
- Envelope Encryption: KMS สร้าง Data Key (แบบ Plaintext และแบบ Encrypted) ส่งให้แอปนำ Plaintext ไปเข้ารหัสไฟล์จริง แล้วลบทิ้ง KMS จะไม่เก็บข้อมูลจริงของเราเด็ดขาด
- Key Policy: ต้องระบุสิทธิ์เสมอ หากไม่มี Key Policy อนุญาต แม้แต่ Admin ก็ใช้กุญแจไม่ได้
- Secrets Manager vs SSM Parameter Store:
- Secrets Manager: มีระบบ Automatic Rotation รหัสผ่าน DB เชื่อมต่อกับ RDS อัตโนมัติ (คิดเงินราย Key)
- SSM Parameter Store: เก็บ Config และรหัสผ่านทั่วไป ไม่มีระบบ Auto-rotation ในตัว (Standard ใช้งานฟรี)
- ชุดเกราะป้องกันภัยคุกคาม (Security Guards):
- AWS WAF: ไฟร์วอลล์ระดับ Layer 7 ดักจับ SQL Injection, XSS, Rate limit IP
- AWS Shield: ป้องกันการโจมตีแบบ DDoS (Layer 3/4)
- Amazon GuardDuty: ตรวจจับพฤติกรรมผิดปกติ (เช่น โดนแฮกไปขุดคริปโต) โดยอ่าน VPC Flow Logs, DNS Logs, CloudTrail แบบ Agentless (ไม่ต้องลงโปรแกรมในเครื่อง)
- Amazon Inspector: ตรวจสอบหาช่องโหว่ความปลอดภัย (CVE) ภายในเครื่อง EC2, คอนเทนเนอร์ ECR, และ Lambda
- Amazon Macie: สแกนหาข้อมูลส่วนบุคคลที่ละเอียดอ่อน (PII, บัตรประชาชน, บัตรเครดิต) ใน Amazon S3
🚨 Card 12: VPC Networking & Disaster Recovery (Maarek L313–385)
12.1 VPC Architecture & Networking Master
- CIDR Block: อยู่ระหว่าง
/16 (65,536 IPs) ถึง /28 (16 IPs)
- Reserved IPs: ในทุกๆ Subnet จะมี 5 IP Addresses ที่ AWS ยึดไว้ใช้งานเสมอ (เช่น ใน Subnet
/24 จะมี 256 - 5 = 251 IPs ที่ใช้ได้จริง)
- NAT Gateway vs NAT Instance:
- NAT Gateway จัดการโดย AWS, รองรับ 5-100 Gbps, มี HA ใน AZ อัตโนมัติ ไม่ต้องมี Security Group
- Security Group vs NACL:
- Security Group: Stateful, คุมระดับ Instance, มีแต่ ALLOW
- Network ACL (NACL): Stateless, คุมระดับ Subnet, เรียงตามเลข Rule, มีกฎ DENY บล็อกราย IP ได้
- VPC Endpoints:
- Gateway Endpoint: รองรับแค่ S3 และ DynamoDB เท่านั้น (ใช้งานฟรี! แก้ไขที่ Route Table)
- Interface Endpoint (PrivateLink): รองรับบริการอื่นๆ เกือบทั้งหมด (มีค่าใช้จ่าย, วาง ENI มี Private IP ใน Subnet)
- การเชื่อมต่อข้ามเครือข่าย (Hybrid Connectivity):
- VPC Peering: ต่อตรง 1-to-1 ห้ามมี CIDR ซ้ำกัน และไม่รองรับ Transitive Routing (A ต่อ B, B ต่อ C ไม่ได้แปลว่า A ต่อ C)
- Site-to-Site VPN: ติดตั้งเร็ว วิ่งผ่านเน็ต เข้ารหัส IPsec (VGW ฝั่ง AWS + CGW ฝั่งลูกค้า)
- Direct Connect (DX): เดินสายไฟเบอร์เฉพาะ ไม่ผ่านเน็ต แบนด์วิธสูง ความเร็วสม่ำเสมอ
- Transit Gateway (TGW): โครงข่ายแบบ Hub-and-Spoke เชื่อมต่อหลายร้อย VPC, Direct Connect, และ VPN เข้าด้วยกันในจุดเดียว
12.2 Disaster Recovery 4 ระดับ (RPO/RTO)
[ถูกสุด / ช้าสุด] [แพงสุด / เร็วสุด]
Backup & Restore ---> Pilot Light ---> Warm Standby ---> Multi-Site Active-Active
(RPO/RTO: Hours) (RPO/RTO: ~10s Min) (RPO/RTO: Minutes) (RPO/RTO: ~0 Real-time)
- Backup and Restore: สำรอง Snapshot ข้าม Region พังแล้วค่อยไปกู้คืน (ถูกสุด ช้าสุด)
- Pilot Light: Core DB ซิงค์ข้าม Region ตลอดเวลา แต่ Web/App servers ปิดหมด มีแค่ AMI สำรองไว้
- Warm Standby: ย่อส่วนระบบทั้งหมด (Minimal capacity) รันทำงานจริง 24/7 ในอีก Region พังปุ๊บสั่ง ASG ขยายเต็ม 100%
- Multi-Site Active-Active: รันระบบเต็มรูปแบบ 100% ใน 2 Region พร้อมกัน กระจายโหลดผ่าน Route 53 ไม่มี Downtime