通过 Metrics Server 查看 Kubernetes 资源指标

对于 Kubernetes,Metrics API 提供了一组基本的指标,以支持自动伸缩和类似的用例。 该 API 提供有关节点和 Pod 的资源使用情况的信息, 包括 CPU 和内存的指标。

README-2023-01-16-11-45-07

安装 Metrics Server

添加 metrics-server 仓库

helm repo add metrics-server https://kubernetes-sigs.github.io/metrics-server/
helm repo update

生成 values.yaml

helm show values metrics-server/metrics-server > values.yaml

修改 values.yaml

# metrics-server/values.yaml
defaultArgs:
  - --cert-dir=/tmp
  - --kubelet-preferred-address-types=InternalIP,ExternalIP,Hostname
  - --kubelet-use-node-status-port
  - --metric-resolution=15s
  - --kubelet-insecure-tls # 添加这行

如果想查看将要部署的资源清单,可以执行以下命令

helm template metrics-server metrics-server/metrics-server -n kube-system -f values.yaml > metrics-server.yaml

安装 metrics-server

helm install metrics-server metrics-server/metrics-server -n kube-system -f values.yaml

查看 metrics-server 服务状态

kubectl get pod -n kube-system | grep metrics-server

# metrics-server-5dbc5555f5-mwhnz      1/1     Running   0               4m14s

检查 API Server 是否可以连通 Metrics Server

kubectl describe svc metrics-server -n kube-system

README-2021-10-20-00-56-42

查看度量指标

kubectl top nodes

# NAME         CPU(cores)   CPU%   MEMORY(bytes)   MEMORY%
# k8s-master   617m         15%    1921Mi          12%
kubectl top pods

# NAME                      CPU(cores)   MEMORY(bytes)
# whoami-577f459d99-4nxcg   0m           2Mi
# whoami-577f459d99-g4bbw   0m           1Mi

Dashboard

在 Dashboard 上,也可以看到相关度量指标了

README-2021-10-18-16-13-25


参考:

上次更新: