Việc quản lý tất cả nhiều thành phần trong ứng dụng của bạn có thể là một thách thức nếu bạn đang sử dụng Kubernetes, như bạn có thể biết rõ. Đó là nơi Helm đến; đó là một giải pháp giúp bạn quản lý các ứng dụng Kubernetes của mình đơn giản hơn.
Bạn có thể xác định và cài đặt ứng dụng của mình cũng như từng thành phần của nó bằng cách sử dụng tính năng “biểu đồ” của Helm.
Trong bài viết này, tôi sẽ hướng dẫn bạn cách sử dụng biểu đồ Helm. Bạn sẽ có thể sử dụng chúng cho mình. Ngay cả khi bạn là người mới sử dụng Kubernetes, tôi tin rằng bạn sẽ được hưởng lợi từ hướng dẫn này trong việc cải thiện hiệu quả và khả năng quản lý của các triển khai Kubernetes của bạn.
Tổng quan về Helm
Quản lý là trình quản lý gói Kubernetes giúp việc quản lý và triển khai ứng dụng trở nên đơn giản hơn. Việc sử dụng “biểu đồ” cho phép người dùng tạo, cài đặt và nâng cấp các ứng dụng Kubernetes tinh vi. Một tập hợp các tài nguyên và cấu hình Kubernetes có thể được chia sẻ dễ dàng.
Các tài nguyên này có thể được sử dụng lại trên một số ứng dụng và chúng được xác định bằng các biểu đồ, hoạt động như các mẫu. Helm là một công cụ quan trọng để triển khai Kubernetes. Nó cũng có một số chức năng khác bao gồm khôi phục, lập phiên bản và quản lý phụ thuộc.
Biểu đồ điều khiển
Biểu đồ trợ giúp là các gói tài nguyên Kubernetes được cấu hình sẵn. Chúng có thể được cài đặt và thay đổi đơn giản với Helm. Biểu đồ bao gồm một số thành phần, bao gồm mẫu, tệp giá trị và tệp siêu dữ liệu chỉ định các tài nguyên khác nhau bao gồm biểu đồ.
Biểu đồ trợ giúp có thể được lưu trong kho lưu trữ biểu đồ, đây là tập hợp các biểu đồ có thể được chia sẻ và phân phối trên nhiều môi trường. Helm cũng hỗ trợ tạo phiên bản, cho phép người dùng theo dõi nhiều phiên bản biểu đồ của họ.
Vì vậy, họ có thể chỉ cần quay lại các phiên bản trước nếu cần.
Biểu đồ lái xe và các thành phần của chúng
Biểu đồ trợ giúp được tạo thành từ một tập hợp các tệp chỉ định tài nguyên Kubernetes bao gồm một ứng dụng. Các tệp này cung cấp các mẫu chỉ định nhiều tài nguyên Kubernetes bao gồm biểu đồ, chẳng hạn như triển khai, dịch vụ và nhóm.
Người dùng có thể chỉnh sửa các mẫu này và chỉ định các tham số cụ thể cho các tình huống khác nhau bằng các tệp giá trị. Các tệp siêu dữ liệu, chẳng hạn như Đồ thị. khoai mỡ, bao gồm thông tin về biểu đồ, chẳng hạn như tên, phiên bản và các thành phần phụ thuộc của biểu đồ.
Kho lưu trữ biểu đồ và lập phiên bản
Kho lưu trữ biểu đồ có thể được lưu trữ trên nhiều trang web, bao gồm GitHub, GitLabvà Amazon S3và có thể được thêm vào Helm bằng lệnh helm repo add.
Helm cũng hỗ trợ lập phiên bản, cho phép người dùng theo dõi nhiều phiên bản biểu đồ của họ và chỉ cần quay lại các phiên bản trước nếu cần.
Điều này giúp đơn giản hóa việc quản lý và triển khai một số phiên bản của ứng dụng trong các cài đặt khác nhau như phát triển, dàn dựng và sản xuất.
Lợi ích của việc sử dụng biểu đồ Helm
Biểu đồ trợ giúp có một số lợi thế để kiểm soát các ứng dụng Kubernetes. Đối với người mới bắt đầu, biểu đồ cho phép người dùng nhanh chóng trao đổi và sử dụng lại các thiết lập trên một số ứng dụng, tiết kiệm thời gian và công sức khi quản lý các cài đặt phức tạp.
Các biểu đồ cũng có thể được tạo phiên bản và lưu trong kho lưu trữ biểu đồ, cho phép phân phối và bảo trì đơn giản nhiều phiên bản của một ứng dụng.
Các tệp giá trị có thể được sử dụng để điều chỉnh biểu đồ, giúp việc triển khai cùng một ứng dụng cho nhiều cài đặt với các cấu hình khác nhau trở nên đơn giản. Nhìn chung, biểu đồ Helm đơn giản hóa và mở rộng quy mô quản lý các thiết lập Kubernetes phức tạp.
Tạo biểu đồ Helm
Biểu đồ Helm có thể được thực hiện trong một vài bước đơn giản. Để bắt đầu, bạn phải cài đặt Helm CLI trên máy tính cục bộ của mình. Sau đó, bạn có thể bắt đầu phát triển biểu đồ của mình.
Hướng dẫn từng bước để tạo biểu đồ Helm
Chạy lệnh helm create để tạo một biểu đồ mới. Thao tác này sẽ tạo một thư mục mới có tên biểu đồ đã chọn, bao gồm các tệp cần thiết cho biểu đồ của bạn.
Bạn có thể đặt siêu dữ liệu về biểu đồ của mình trong tệp Chart.yaml, chẳng hạn như tên, phiên bản và mô tả của chúng.
Cài đặt mặc định cho biểu đồ của bạn được xác định trong tệp value.yaml. Khi biểu đồ được cài đặt, các cài đặt này có thể được sửa đổi, cho phép cá nhân hóa.
Thư mục mẫu/ bao gồm các tệp YAML chỉ định tài nguyên Kubernetes sẽ được tạo khi bạn cài đặt biểu đồ. Các tệp này có thể được tùy chỉnh để đáp ứng các yêu cầu riêng của ứng dụng của bạn.
Sau khi bạn hoàn thành việc tạo biểu đồ của mình, hãy sử dụng lệnh gói helm để đóng gói biểu đồ. Thao tác này sẽ tạo tệp a.tgz, tệp này có thể được lưu vào kho lưu trữ biểu đồ và được cài đặt bằng lệnh helm install.
Các thành phần khác nhau của biểu đồ Helm, chẳng hạn như các tệp mẫu và giá trị
Khi xây dựng biểu đồ Helm, bạn sẽ cần làm quen với một vài thành phần riêng biệt.
Bạn có thể nhập siêu dữ liệu về biểu đồ của mình trong tệp Chart.yaml, chẳng hạn như tên, phiên bản và mô tả của chúng. Đối với tất cả các biểu đồ, tệp này là cần thiết.
Cài đặt mặc định cho biểu đồ của bạn được xác định trong tệp value.yaml. Khi biểu đồ được cài đặt, các cài đặt này có thể được sửa đổi, cho phép cá nhân hóa. Tất cả các biểu đồ cũng yêu cầu tệp này.
Thư mục mẫu/ bao gồm các tệp YAML chỉ định tài nguyên Kubernetes sẽ được tạo khi bạn cài đặt biểu đồ. Các tệp này có thể được tùy chỉnh để đáp ứng các yêu cầu riêng của ứng dụng của bạn.
Các ví dụ thực tế để giúp người dùng tạo biểu đồ Helm của họ
Có nhiều ví dụ biểu đồ Helm có thể truy cập trực tuyến có thể được sử dụng làm điểm khởi đầu để phát triển biểu đồ của bạn. Tài liệu Helm và kho lưu trữ biểu đồ Helm chính thức đều đưa ra một số ví dụ.
Tạo biểu đồ Helm cho ứng dụng Node.js cơ bản là một ví dụ thực tế. Sơ đồ sẽ cần kết hợp các tài nguyên Kubernetes như Deployment, Service và ConfigMap. Để xác định hình ảnh ứng dụng, cổng và bất kỳ biến môi trường nào, hãy sử dụng tệp value.yaml.
Người dùng có thể chỉ cần phát triển biểu đồ Helm của riêng họ cho các ứng dụng Kubernetes của họ bằng cách làm theo các phương pháp được chỉ ra ở trên và sử dụng các ví dụ thực tế làm tài liệu tham khảo.
Cài đặt và nâng cấp với Helm
Bạn có thể sử dụng biểu đồ Helm của mình để cài đặt và quản lý các ứng dụng Kubernetes sau khi đã phát triển chúng. Để cài đặt biểu đồ, hãy sử dụng helm install
lệnh, theo sau là tên của biểu đồ và bất kỳ cài đặt nào khác.
Để nâng cấp một biểu đồ hiện có, hãy sử dụng helm upgrade
lệnh thay thế bản phát hành cũ bằng bản phát hành mới. Mũ bảo hiểm cũng có một helm rollback
lệnh có thể được sử dụng để hoàn tác nâng cấp.
Các tính năng nâng cao của Helm
Helm cũng có một số khả năng bổ sung có thể hỗ trợ bạn quản lý các ứng dụng Kubernetes của mình. Một trong những ưu điểm này là khả năng sử dụng các biến môi trường để sửa đổi biểu đồ Helm của bạn.
Biến môi trường có thể được sử dụng để lưu trữ dữ liệu nhạy cảm mà bạn không muốn đưa vào mã của mình, chẳng hạn như mật khẩu hoặc thông tin đăng nhập API.
Một khía cạnh phức tạp khác của Helm là khả năng tương thích với quy trình công việc CI/CD. Điều này có thể hỗ trợ bạn trong việc tự động hóa việc triển khai ứng dụng của mình và đảm bảo tính nhất quán trên tất cả các môi trường.
Để sử dụng Helm với quy trình CI/CD, hãy viết tập lệnh cài đặt hoặc nâng cấp biểu đồ của bạn bằng cách sử dụng helm
chỉ huy.
Tùy chỉnh biểu đồ Helm với các biến môi trường
Bạn có thể xác định các biến trong tệp value.yaml có trong biểu đồ để thêm các biến môi trường vào biểu đồ Helm của mình. Sau đó, các biến trong mẫu biểu đồ của bạn có thể được tham chiếu bằng cú pháp {{ .Values.variableName }}.
Sử dụng Helm với đường dẫn CI/CD
Trước tiên, bạn phải viết một kịch bản sử dụng helm
lệnh để cài đặt hoặc nâng cấp biểu đồ của bạn nếu bạn muốn sử dụng Helm với quy trình làm việc CI/CD.
Khi bạn muốn triển khai phiên bản mới của ứng dụng, bạn có thể đưa tập lệnh này vào quy trình của mình và gọi nó.
Kết luận
Biểu đồ Helm cung cấp một cách thiết thực để đóng gói và phân phối tài nguyên Kubernetes và Helm là một công cụ mạnh mẽ để quản lý các ứng dụng Kubernetes.
Giờ đây, bạn đã nắm vững cách phát triển, cài đặt và quản lý biểu đồ Helm sau khi làm theo hướng dẫn được cung cấp trong bài viết này.
Helm có thể làm cho việc triển khai Kubernetes của bạn trở nên đơn giản hơn và các ứng dụng của bạn dễ quản trị hơn, cho dù bạn là nhà phát triển hay nhà phát triển. quản trị hệ thống.
Bình luận