Kubernetes
Cài đặt Metric Agent tại Kubernetes Cluster
Bạn có thể cài đặt vMonitor Platform Metric Agent vào Kubernetes Cluster để thu thập và đẩy metric về vMonitor Platform site, sau đó sử dụng các tính năng tại vMonitor Platform để quản lý tập trung tài nguyên và theo dõi hoạt động bất thường của Kubernetes Cluster.
Cài đặt Metric Agent sử dụng Helm
Các bước chuẩn bị trước khi cài đặt
1. Kiểm tra bạn đã có Metric Quota và quota chưa chạm mức giới hạn, nếu chưa có bạn cần thực hiện mua Quota Metric tại đây.
2. Tạo Service Account và gắn policy: vMonitorMetricPush để có đủ quyền đẩy Metric về vMonitor Platform. Để tạo service account bạn truy cập tại đây, sau đó thực hiện các bước sau:
Chọn "Create a Service Account", điền tên cho Service Account và nhấn Next Step để gắn quyền cho Service Account
Tìm và chọn Policy: vMonitorMetricPush, sau đó nhấn "Create a Service Account" để tạo Service Account, Policy: vMonitorMetricPush do VNG Cloud tạo ra chỉ chứa chính xác quyền đẩy metric về hệ thống
Sau khi tạo thành công bạn cần phải lưu lại Client_ID và Secret_Key để thực hiện bước tiếp theo.
Cài đặt helm tại Debian/Ubuntu server
1. Bạn cần cài đặt Helm trên server có kubeconfig chứa đủ quyền để tương tác Kubernetes Cluster.
Kiểm tra quyền bằng command kubectl:
Nếu kết quả các command trên là YES thì bạn đã đủ quyền.
2. Tiến hành cài đặt Helm
Thực hiện những command sau:
Kiểm tra Helm đã cài đặt thành công
Để cài đặt Helm tại các hệ điều hành khác, vui lòng tham khảo hướng dẫn cài đặt tại đây: Install Helm Through Package Managers.
3. Một số lưu ý thêm về Helm: (tham khảo chi tiết tại: helm docs)
Helm sẽ dùng kubeconfig để tương tác với cluster, mặc định helm sẽ dùng config ở đường dẫn: "~/.kube/config"
Nếu cần thay đổi đường dẫn tới kubeconfig ta có thể sử dụng 2 cách:
Với mỗi command helm bạn có thể thêm option --kubeconfig: ví dụ helm install --kubeconfig <path_to_kubeconfig>
Khai báo biến môi trường: KUBECONFIG
Cài đặt Metric Agent
Mặc định khi cài đặt vMonitor Platform Metric Agent sẽ có 2 thành phần:
Deployment Agent kube-state-metrics: thu thập metric từng resource của k8s cluster (pod, daemonset, deployment, replicaset, ....)
Daemonset Agent: thu thập metrics từng node k8s cluster (CPU, Memory usage, ...)
1. Thêm Helm vMonitor Platform Repo theo lệnh
2. Cài đặt chart
Cài đặt tại namespace default (thêm cờ -n <namespace_chỉ_định> để cài đặt agent tại namespace khác)
Trong đó:
<YOUR_CLIENT_ID_XXXXXXXXXXXXXXXXXXX>, <YOUR_CLIENT_SECRET_XXXXXXXXXXXXXXX>: Thông tin service account đã tạo ở bước chuẩn bị
<CLUSTER_NAME>: Thông tin này sẽ dùng để lọc các host của k8s cluster trong trường hợp có nhiều cluster để theo dõi
Kiểm tra việc install agent thành công qua lệnh
Sau khi cài đặt hoàn tất, metric theo dõi kubernetes đã được đẩy về vMonitor Platform site , bạn có thể tiến hành lên vMonitor Platform để vẽ các dashboard, widget.
Gỡ cài đặt Metric Agent
Thực hiện command sau để xóa các k8s resources liên quan đã cài đặt:
Cài đặt Metric Agent không sử dụng kube-state-metrics
Cài đặt tại namespace default (thêm cờ -n <namespace_chỉ_định> để cài đặt agent tại namespace khác)
Monitor Kubernetes (K8S) tại vMonitor Platform
Để thực hiện monitor Kubernetes (K8S) tại vMonitor Platform, vui lòng thực hiện theo hướng dẫn bên dưới:
Bước 1: Cài đặt helm từ API đối với hệ điều hành Debian/Ubuntu, bạn nên cài đặt Helm trên máy có kubeconfig và có đủ quyền để truy cập lên Kubernetes Cluster bạn cần theo dõi
Thực hiện những command sau
Đối với những hệ điều hành khác có thể tham khảo hướng dẫn cài đặt tại đây: Install Helm Through Package Managers
Kiểm tra helm đã được cài đặt thành công bằng lệnh
Bước 2: Kiểm tra quyền tương tác với cluster k8s
Một số lưu ý về helm: (tham khảo chi tiết tại: helm docs)
Helm sẽ dùng kubeconfig để tương tác với cluster, mặc định helm sẽ dùng config ở đường dẫn: "~/.kube/config"
Nếu cần thay đổi đường dẫn tới kubeconfig ta có thể sử dụng 2 cách:
Với mỗi command helm ta thêm option --kubeconfig: ví dụ helm install --kubeconfig <path_to_kubeconfig>
Khai báo biến môi trường: KUBECONFIG
Kiểm tra quyền:
Sử dụng command kubectl:
Nếu kết quả các command trên ra YES thì bạn đã đủ quyền để thực hiện các bước tiếp theo
Bước 3: Cài đặt kube-state-metrics bằng helm
Kiểm tra install kube-state-metrics thành công
Chú ý:
Hiện tại vMonitor metric agent chỉ hỗ trợ kube-state-metrics version <= v2.7.0.
Bước 4: Cài đặt vmonitor metric agent bằng helm
Mặc định, vMonitor metric agent sẽ có 2 thành phần: deployment dùng để thu thập kube-state-metrics và thành phần daemonset để thu thập metrics từng node k8s
Thêm vMonitor helm repository
Cài đặt vmonitor-metric-agent từ helm repository, mặc định sẽ được cài đặt ở namespace:default, nếu bạn muốn cài ở namespace khác, thì thêm option –n ở command bên dưới, bạn có thể thay đổi tên vng-vmonitor-metric-agent thành bất kì tên nào bạn muốn và đổi k8s-cluster-name thành tên Kubernetes Cluster của bạn
Kiểm tra việc install agent thành công
Bước 5: sau khi cài đặt xong tất cả metric theo dõi kubernetes đã được đẩy về, bạn có thể tiến hành lên vMonitor để vẽ các dashboard, widget.
Nếu không còn nhu cầu sử dụng vmonitor metric agent bạn có thể thực hiện gỡ cài đặt bằng command bên dưới
Chú ý:
Khi monitor Kubernetes với vMonitor Platform, hiện tại bạn chỉ bị tính tiền số lượng Host vào Quota, số lượng Host sẽ được tính bằng số lượng kubelet worker node bạn đang có cộng thêm 1. Số lượng Container trên mỗi Host sẽ chưa được tính vào thời điểm này.
Last updated