Skip to content

Kubernetes

ส่วนหนึ่งของ Beginner Book | ต้องผ่าน Docker Book ก่อน

Kubernetes (เรียกย่อ ๆ ว่า K8s — อ่านว่า "เค-เอทส์") = ระบบจัดการ container ข้ามหลายเครื่อง — มาตรฐานของอุตสาหกรรมในการรัน container ที่ scale จริง

💡 ทำไม "K8s"? มาจากการเอา K กับ s ที่ต้นกับปลายของ Kubernetes มาคั่นด้วยเลข 8 (จำนวนตัวอักษรตรงกลาง ubernete) — รายละเอียดเต็มอยู่ที่บท 00

📌 เวอร์ชันที่หนังสือเล่มนี้อ้างอิง (ณ มิ.ย. 2026) — Kubernetes 1.33 เป็น current GA (ออก เม.ย. 2026); รุ่นที่ยัง supported = 1.30, 1.31, 1.32, 1.33 — ดูรุ่นล่าสุดที่ kubernetes.io/releases

หนังสือเล่มนี้พาคุณไปถึงไหน

อ่านจบ + ทำ checkpoint หมด คุณจะ:

  • เข้าใจว่าทำไม Docker Compose ไม่พอ และ K8s แก้ปัญหาอะไร
  • เข้าใจ architecture ของ K8s (control plane, node, etcd, ...)
  • เขียน YAML manifest เป็น — Pod, Deployment, Service, Ingress
  • จัดการ config, secret, storage
  • ทำ health check, auto-scaling, rolling update
  • เข้าใจ StatefulSet, DaemonSet, Job, CronJob
  • ใช้ Helm จัดการ application
  • ทำ deployment strategy (rolling, canary, blue-green)
  • monitor + debug K8s ใน production

ก่อนเริ่ม — ต้องรู้อะไรก่อน

Docker — ทั้ง 6 บท (docker/) — โดยเฉพาะ image, container, network, volume ✅ Linux พื้นฐาน — command line (cd, ls, cat, ดู process, แก้ไฟล์ด้วย nano/vim) ✅ YAML — รู้ว่าเยื้องด้วย space (ห้ามใช้ Tab), key-value, list (ดู docker/04 §3) ✅ HTTP / network พื้นฐาน — รู้จัก method GET/POST และ status code 200/404/500

บทเรียน

ระดับ: 🌱 = พื้นฐาน · 🌿 = ระดับกลาง · 🌳 = ระดับสูง (ดู rubric เพิ่มเติมที่ CONTRIBUTING.md §3)

#บทระดับเวลาโดยประมาณสอนอะไร
0K8s คืออะไร + Architecture🌱 พื้นฐาน2-3 ชม.ปัญหาที่ K8s แก้, control plane, node, etcd, kubectl
1Pod🌱 พื้นฐาน1-2 ชม.หน่วยเล็กที่สุด, multi-container pod, lifecycle
2Deployment + ReplicaSet🌿 ระดับกลาง2 ชม.จัดการ pod หลายตัว, rolling update, rollback
3Service + Networking🌿 ระดับกลาง2-3 ชม.ClusterIP, NodePort, LoadBalancer, DNS, network model
4ConfigMap + Secret🌿 ระดับกลาง1-2 ชม.แยก config ออกจาก image, จัดการความลับ
5Storage (PV/PVC)🌿 ระดับกลาง2-3 ชม.persistent volume, storage class, StatefulSet storage
6Ingress🌿 ระดับกลาง1-2 ชม.เปิดบริการสู่ภายนอก, routing, TLS
7Health Check + Autoscaling🌿 ระดับกลาง2 ชม.probe, HPA, resource request/limit
8StatefulSet + DaemonSet + Job🌳 ระดับสูง2-3 ชม.workload type ทุกชนิด
9Helm + Deployment Strategy🌳 ระดับสูง2-3 ชม.package manager, canary, blue-green, GitOps
10Observability + Production🌳 ระดับสูง3 ชม.logging, monitoring, debug, security, production checklist

⚠️ เกี่ยวกับระดับ "สูง" ในหมวดนี้: บท 08-10 เป็น introduction tier ของหัวข้อระดับสูง — เกริ่นแนวคิด + ตัวอย่างพื้นฐาน + checklist สำหรับ junior/mid ขึ้น production crystal-clear ในระดับเข้าใจภาพรวม. ทีม ops จริง / senior ที่ต้องดูแล cluster production ยังต้องอ่าน official docs + run-book ของ cloud provider เพิ่ม โดยเฉพาะเรื่อง:

  • etcd backup/restore (เอ็ต-ซีดี) — สำรอง/กู้คืนฐานข้อมูลของ cluster
  • multi-AZ topology (มัลติ-เอ-แซด โท-โพ-โล-จี) — กระจาย node ข้าม availability zone (AZ = เขตพื้นที่ datacenter) เพื่อทนเครื่อง/ศูนย์ข้อมูลล่ม
  • RBAC governance (อาร์-แบค = Role-Based Access Control) — กำหนดสิทธิ์ผู้ใช้/บริการแบบละเอียด
  • GitOps workflow (กิต-ออปส์) — deploy ด้วยการ push Git แทนการรัน kubectl ตรง ๆ (เครื่องมือ เช่น Argo CD, Flux)
  • Pod Security Admission (PSA) (พ็อด ซิ-คิว-ริ-ตี แอด-มิส-ชัน) — มาตรฐาน security policy ระดับ namespace (แทน PodSecurityPolicy เดิมที่ถูกถอดออกใน K8s 1.25)

เครื่องมือที่จะใช้

💡 แนะนำเริ่มต้น: ใช้แค่ kubectl + minikube ก็พอ — บทที่ 00 จะพาติดตั้งทีละขั้น เครื่องมืออื่น ๆ ทยอยรู้จักเมื่อถึงบทที่ใช้

  • kubectl — คำสั่งหลักในการคุยกับ K8s (ติดตั้ง)
  • minikube — รัน K8s 1 node ใน VM/Docker บนเครื่องเรา (ติดตั้ง) — ตัวเริ่มต้นที่แนะนำ
  • kind — รัน K8s ใน Docker container (ติดตั้ง) — เบา/เร็วกว่า minikube
  • k3d — K3s (K8s รุ่นเล็ก) ใน Docker (ติดตั้ง) — สำหรับเครื่อง resource น้อย
  • Helm — package manager ของ K8s (ติดตั้ง) — ใช้บท 09
  • k9s (เสริม) — UI ใน terminal สำหรับดู cluster (ติดตั้ง)

วิธีอ่านที่แนะนำ

  1. ติดตั้ง minikube/kind ตั้งแต่บท 00 — ลองทุก example
  2. อ่านเรียงทีละบท — concept ต่อยอดกัน
  3. เขียน YAML เอง — อย่า copy-paste อย่างเดียว
  4. K8s มี concept เยอะ — อย่ารีบ อ่านช้า ๆ คิดตาม

← กลับสารบัญหลัก | ➡️ บทที่ 00: K8s คืออะไร


Glossary: ../glossary.md · Style guide: ../CONTRIBUTING.md