ข้ามไปเนื้อหาหลัก
คอนเทนเนอร์· ~14 นาที

GitOps ด้วย ArgoCD

ใช้ Git เป็นแหล่งความจริงเดียว คลัสเตอร์ sync ตามอัตโนมัติ

เปรียบเทียบให้เห็นภาพ

GitOps เหมือนให้ Git เป็น "รีโมตต้นฉบับ" ของคลัสเตอร์ — อยากเปลี่ยนอะไรก็แก้ที่ Git แล้วมีตัวช่วย (ArgoCD) คอยเทียบว่าคลัสเตอร์ตรงกับ Git ไหม ถ้าไม่ตรงก็ดึงให้ตรง — เหมือน reconciliation loop แต่ระดับ "ทั้งระบบ"

แนวคิด GitOps: เก็บ manifest/Helm/Kustomize ทั้งหมดใน Git เป็น single source of truth · เครื่องมืออย่าง ArgoCD (หรือ Flux) เฝ้า repo แล้ว sync คลัสเตอร์ให้ตรงกับ Git อัตโนมัติ

Git เป็น source of truth · ArgoCD sync เข้าคลัสเตอร์

Developerpush / PR
Git repomanifests (ต้นฉบับ)
เฝ้า+เทียบ
ArgoCDsync ถ้าไม่ตรง
Cluster

แก้ที่ Git เท่านั้น · drift ในคลัสเตอร์ถูกดึงกลับให้ตรง Git

นักพัฒนา push → Git (source of truth) → ArgoCD เทียบและ sync เข้าคลัสเตอร์ต่อเนื่อง
  • ตรวจสอบย้อนหลังได้ — ทุกการเปลี่ยนคือ commit มีคนอนุมัติผ่าน pull request
  • ย้อนกลับง่ายgit revert แล้วคลัสเตอร์กลับสภาพเดิม
  • กัน drift — ถ้ามีใครไปแก้คลัสเตอร์ตรง ๆ ArgoCD เห็นว่า "ไม่ตรง Git" แล้วดึงกลับ
  • ไม่ต้องแจก credential คลัสเตอร์ ให้ CI — ArgoCD ดึงจาก Git เข้าไปเอง (ปลอดภัยกว่า push)

สรุป Key Takeaways

  • GitOps = Git เป็น source of truth เดียว, ArgoCD/Flux sync คลัสเตอร์ให้ตรงอัตโนมัติ
  • ได้ audit trail, rollback ด้วย git revert, กัน config drift
  • ปลอดภัยกว่าเพราะ pull-based (ไม่ต้องแจก credential ให้ CI)
อ่านจบแล้วอย่าลืมทำเครื่องหมาย