6. Cách cấu hình autoscale Kubernetes Cluster trên HI GIO Portal
Last updated
Last updated
Hướng dẫn từng bước về cách cấu hình tự động mở rộng cluster Kubernetes HI GIO.
Cài đặt tanzu-cli
Tạo cluster-autoscaler deployment từ tanzu package sử dụng tanzu-cli
Kích hoạt tự động mở rộng cho cluster của bạn
kiểm tra tự động mở rộng cluster
Xóa cluster-autoscaler deployment và dọn dẹp tài nguyên thử nghiệm.
Bastion Ubuntu có thể kết nối với Kubernetes cluster của bạn.
Có quyền truy cập vào Kubernetes cluster của bạn.
Bước 1: Cài đặt tanzu-cli
Để cài đặt tanzu-cli trên môi trường khác, tham khảo tài liệu dưới đây:
(Tùy chọn) Nếu bạn muốn định cấu hình hoàn thành tanzu, vui lòng chạy lệnh bên dưới và làm theo hướng dẫn đầu ra
tanzu completion --help
Bước 2: Tạo deployment cluster-autoscaler từ gói tanzu bằng tanzu-cli
Chuyển sang context Kubernetes của bạn
Liệt kê các phiên bản cluster-autoscaler có sẵn trong gói tanzu và ghi lại tên phiên bản
Tạo secret kubeconfig có tên cluster-autoscaler-mgmt-config-secret
trong namespace kube-system
Không thay đổi tên secret (cluster-autoscaler-mgmt-config-secret) và namespace (kube-system).
Tạo file cluster-autoscaler-values.yaml
Giá trị bắt buộc:
clusterName
: Tên cluster của bạn
clusterNamespace
: Tên cluster namespace của bạn
Cài đặt cluster-autoscaler
Cluster-autoscaler sẽ được triển khai vào namespace kube-system
.
Chạy lệnh dưới đây để xác minh việc triển khai cluster-autoscaler:
kubectl get deployments.apps -n kube-system cluster-autoscaler
Cấu hình số lượng node tối thiểu và tối đa trong cluster
Lấy tên và namespace của machinedeployments
Cấu hình cluster-api-autoscaler-node-group-min-size
and cluster-api-autoscaler-node-group-max-size
Bật cluster autoscale cho cluster của bạn
Vì bước này cần có sự cho phép của nhà cung cấp để thực hiện nên vui lòng thông báo cho cloud provider để thực hiện bước này.
Bước 3: Kiểm tra tự động mở rộng cluster
Lấy số lượng node hiện tại
kubectl get nodes
Hiện tại chỉ có một worker node.
Tạo file test-autoscale.yaml
Áp dụng file test-autoscale.yaml
để triển khai 2 replicas nginx pod trong namespace default (lệnh này sẽ kích hoạt tạo một worker node mới)
Kiểm tra deployment nginx
Bạn sẽ thấy một nginx pod mới với trạng thái Pending và các sự kiện hiển thị FailedScheduling
và TriggeredScaleUp
:
Chờ một chút và bạn sẽ thấy một worker node mới đã được cấp phát và nginx pod mới có trạng thái Running.
Dọn dẹp tài nguyên thử nghiệm
Sau khi xóa deployment nginx thử nghiệm, cluster sẽ chờ vài phút để xóa node không cần thiết (tham khảo giá trị scaleDownUnneededTime
trong file cluster-autoscaler-values.yaml
).
Xóa deployment cluster-autoscaler (Tùy chọn)
Nếu bạn không muốn cluster của mình tự động mở rộng nữa, có thể xóa deployment cluster-autoscaler bằng tanzu-cli: