当前位置: 代码迷 >> 综合 >> Kubernetes Metrics Server组件与K8S Dashboard
  详细解决方案

Kubernetes Metrics Server组件与K8S Dashboard

热度:99   发布时间:2024-01-06 05:29:18.0

Kubernetes Metrics Server

  • Metrics-server原理介绍
  • Metrics-server安装
  • 编辑metrics-server-deployment.yaml
  • 发布命令
  • Kubernetes-dashboard

Metrics-server原理介绍

启动metrics server组件之后:

#可以使用下面命令查看pod资源使用情况。
kubectl top po
#可以使用下面命令查看node资源使用情况。
kubectl top no

metrics-server是K8S所支持的一个监控度量组件,目前metrics-server还不是K8S的正式组件,需要作为Add-on单独启用。

启用之后,metrics-server可以通过cAdvisor,kubelet等组件定期去抓取pod, node上的资源,使用的metrics。并且通过metrics API 暴露这些metrics,然后我们就可以通过kubectl访问这些metrics。

另外,K8S所支持的HPA(POD自动伸缩功能)也依赖于metrics API。

除了metrics-server之外,业界用于K8S监控的主流方案是Prometheus。
在这里插入图片描述

Metrics-server安装

Github地址:https://github.com/kubernetes-sigs/metrics-server

从Github下载metrics-server的文件,并且阅读Readme文档。

下载好的目录文件,进入目录deploy。

cd deploy/1.8+
ls

目录内所有文件都需要发布。

编辑metrics-server-deployment.yaml

找到metrics-server-deployment.yaml文件。
默认metrics-server在抓metrics的时候是有安全限制的,我们要暂时把安全限制放开。

如果不禁用安全限制,在本地环境会抓不到metrics。

编辑该文件。

containers下面,imagePullPolicy下面,与imagePullPolicy同级,加上command:

command:- /metrics-server- --kubelet-insecure-tls

找到文件中,imagePullPolicy: Always, 这个表示,yaml文件始终到dockerhub中去抓取镜像。这样会比较慢,如果本地有缓存,可以注释掉该行。

发布命令

在metrics-server-deployment.yaml所在目录执行。

kubectl apply -f .

metrics-server是发布到kube-system命名空间下面。可以看到多了一个metrics-server的pod。

kubectl get po -n kube-system

运行资源查询命令。metrics-server刚刚安装还没有收集节点数据,需要等待一段时间。

kubectl top no

发布一个微服务应用,再查看pod资源。

kubectl top po

Kubernetes-dashboard

查看kubernetes-dashboard namespace。

kubectl get ns

登录kubernetes-dashboard需要token,获取token。先找到kubernetes-dashboard命名空间下的token。

kubectl get secret -n kubernetes-dashboard

查看详情。可以看到token。

kubectl describe secret kubenetes-dashboard-token-******* -n kubernetes-dashboard

仅复制token。

启动Kubernetes dashboard。查看github readme。
Github地址:https://github.com/kubernetes/dashboard

kubectl proxy

粘贴token登录。

  相关解决方案