Metrics部署在新版的Kubernetes中,系统资源的采集使用Metrics-server,可以通过Metrics采集节点和Pod的内存、磁盘、CPU和网络的使用率。

本文将介绍如何在 Kubernetes 集群上部署 Metrics Server,并使用它来监控集群中各种资源的使用情况。

1. 前提条件

  • Kubernetes 集群已经运行,并且 kubectl 工具已经正确配置。
  • Metrics Server 的版本符合 Kubernetes 版本要求。例如,如果 Kubernetes 版本为 1.28,则应使用与之对应的 Metrics Server 版本。

Kubernetes系统资源的采集Metrics-server部署_K8S Metrics-server

k8S master可以访问github则执行下面的命令

  1. 部署 Metrics Server

2.1下载 Metrics Server 的部署文件:

$ wget https://github.com/kubernetes-sigs/metrics-server/releases/download/v0.6.4/components.yaml

2.2编辑下载的部署文件,并添加 --kubelet-insecure-tls 参数,以便 Metrics Server 可以使用不安全的 TLS 连接与 kubelet 通信。

vim components.yaml

如果不能访问google,把此文件中Metrics Server镜像地址更新为阿里云

image: registry.aliyuncs.com/google_containers/metrics-server:v0.6.4

Kubernetes系统资源的采集Metrics-server部署_K8S Metrics-server_02

2.3 部署 Metrics Server:

$ kubectl apply -f components.yaml

2.4 等待 Metrics Server 部署完成:

$ kubectl get deployment metrics-server -n kube-system

Kubernetes系统资源的采集Metrics-server部署_K8S Metrics-server_03

3. 使用 Metrics Server

现在,Metrics Server 已经在 Kubernetes 集群中部署成功。可以使用 kubectl 命令来获取集群中的度量指标。

3.1 获取节点的 CPU 使用情况:

$ kubectl top node

3.2 获取命名空间中的 Pod 的 CPU 和内存使用情况:

kubectl top pod -n <namespace>

总结

在 Kubernetes 集群中部署 Metrics Server 可以实现对集群中各种资源的实时监控和度量指标收集,从而帮助管理员和开发人员更好地管理和优化 Kubernetes 应用程序的性能和可靠性。通过本文步骤,可以轻松部署 Metrics Server 并使用它来监控 Kubernetes 集群中的资源使用情况。