Tiếp nối phần 1, việc viết các file yaml và quản lý nó sẽ trở lên phức tạp nếu app của bạn có nhiều các thành phần khác nhau. Trong bài viết này, chúng ta sẽ tìm hiểu cách triển khai và quản lý các ứng dụng trên Kubernetes bằng Helm.
Giới thiệu về Helm
Helm là một công cụ quản lý gói cho Kubernetes. Nó cho phép người dùng đóng gói các ứng dụng thành các gói có thể triển khai trên Kubernetes và quản lý chúng dễ dàng. Helm sử dụng các “chart” để đóng gói các ứng dụng, mỗi chart bao gồm một tập hợp các tài nguyên Kubernetes như deployment, service, config map, secret, … Với Helm, việc triển khai các ứng dụng trên Kubernetes trở nên dễ dàng và đơn giản hơn rất nhiều.
Các lợi ích của việc sử dụng Helm bao gồm:
- Quản lý dependencies: Helm giúp quản lý các dependencies của ứng dụng một cách dễ dàng hơn bằng cách đóng gói chúng vào các chart và triển khai chúng một cách tự động.
- Đơn giản hóa quá trình triển khai: Helm giúp đơn giản hóa quá trình triển khai ứng dụng trên Kubernetes bằng cách đóng gói các thành phần của ứng dụng vào các chart. Bạn chỉ cần cài đặt các chart này trên Kubernetes cluster của mình, và ứng dụng sẽ được triển khai một cách nhanh chóng và dễ dàng.
- Quản lý version: Helm giúp quản lý các version của ứng dụng một cách dễ dàng hơn bằng cách sử dụng các release. Bạn có thể quay lại các version trước đó của ứng dụng một cách dễ dàng để khắc phục các vấn đề xảy ra trong quá trình triển khai.
- Đóng gói và chia sẻ ứng dụng: Helm cho phép bạn đóng gói và chia sẻ ứng dụng của mình dưới dạng các chart, giúp cho việc chia sẻ ứng dụng giữa các thành viên trong team dev trở nên dễ dàng hơn.
Các bước triển khai ứng dụng trên Kubernetes bằng Helm
Bước 1: Cài đặt Helm
Trước khi sử dụng Helm, bạn cần cài đặt Helm trên máy tính của mình. Bạn có thể tải Helm từ trang web chính thức của Helm tại địa chỉ https://helm.sh/docs/intro/install/. Sau khi cài đặt Helm, bạn có thể sử dụng các lệnh của Helm từ bất kỳ terminal nào.
Bước 2: Tạo chart
Sau khi cài đặt Helm, bạn có thể tạo một chart mới bằng cách sử dụng lệnh helm create, ví dụ:
helm create mychart
Lệnh này sẽ tạo một chart mới có tên là mychart và tạo một số file mẫu như values.yaml
, Chart.yaml
, templates/deployment.yaml
, templates/service.yaml
, … Bạn có thể chỉnh sửa các file này để cấu hình ứng dụng của mình.
Bước 3: Triển khai chart
Sau khi đã chỉnh sửa các file cấu hình, bạn có thể triển khai chart bằng lệnh helm:
helm install <tên-release> <đường-dẫn-đến-chart>
Ví dụ:
helm install myapp mychart
Lệnh này sẽ triển khai chart mychart với tên release là myapp trên Kubernetes cluster của bạn.
Bước 4: Quản lý chart
Sau khi triển khai chart, bạn có thể quản lý chart bằng các lệnh của Helm. Ví dụ:
- Kiểm tra các release đang chạy trên Kubernetes cluster:
helm list
- Xem chi tiết về release:
helm status <tên-release>
- Xóa release:
helm delete <tên-release>
- Cập nhật chart:
helm upgrade <tên-release> <đường-dẫn-đến-chart>
- Rollback:
helm rollback <tên-release> <version>
Bước 5: Sử dụng Helm repo
Helm repo là một kho lưu trữ các chart. Bạn có thể sử dụng các chart có sẵn trên Helm repo thay vì tạo chart mới. Ví dụ:
- Thêm repo:
helm repo add stable https://charts.helm.sh/stable
- Cập nhật repo:
helm repo update
- Tìm kiếm chart:
helm search repo <tên-chart>
- Triển khai chart từ repo:
helm install myapp stable/<tên-chart>
Kết luận
Trên đây là các bước triển khai và quản lý các ứng dụng trên Kubernetes bằng Helm. Sử dụng Helm sẽ giúp việc triển khai và quản lý các ứng dụng trên Kubernetes trở nên dễ dàng hơn rất nhiều. Chúc các bạn thành công!