0

Phần 7 - DevOps & GitOps

Chia sẻ
  • 18 0
 Xuất bản Thứ Năm, 3:45 CH 18 0 0 5
  • 18 0

Khi mới học Kubernetes, bạn thường triển khai ứng dụng bằng các file YAML và chạy:

kubectl apply -f .

Nhưng khi số lượng YAML ngày càng nhiều, việc quản lý và triển khai trở nên phức tạp. Đây là lúc các công cụ sau phát huy tác dụng:

  • Helm: Đóng gói và tái sử dụng nhiều file YAML bằng template.
  • Kustomize: Dùng chung một bộ YAML cho nhiều môi trường (Dev, Staging, Production) bằng mô hình Base + Overlay.
  • GitOps: Biến Git thành nguồn sự thật duy nhất, mọi thay đổi đều được quản lý qua Git.
  • ArgoCD: Theo dõi Git và tự động đồng bộ thay đổi xuống Kubernetes.
  • CI/CD: Tự động hóa toàn bộ quy trình từ build, test đến triển khai.

Toàn bộ quy trình có thể hình dung như sau:

Developer
    │
    ▼
Push Code lên Git
    │
    ▼
CI/CD (Build → Test → Build Image)
    │
    ▼
Cập nhật GitOps Repository
    │
    ▼
ArgoCD đồng bộ Kubernetes
    │
    ▼
Application Running

Tóm lại, Helm và Kustomize giúp quản lý cấu hình, GitOps và ArgoCD giúp triển khai tự động, còn CI/CD tự động hóa toàn bộ pipeline, tạo nên một quy trình triển khai Kubernetes hiện đại, nhất quán và dễ kiểm soát.

Chia sẻ
Viblo
Hãy đăng ký một tài khoản Viblo để nhận được nhiều bài viết thú vị hơn.
Đăng kí