K8S数据采集组件metrics-server安装

概述

metrics-server 是一个集群范围内的资源数据集和工具,同样的,metrics-server 也只是显示数据,并不提供数据存储服务,主要关注的是资源度量 API 的实现,比如 CPU、文件描述符、内存、请求延时等指标,metric-server 收集数据给 k8s 集群内使用,如 kubectl,hpa,scheduler 等

安装metrics-server可能会遇到很多坑,下面步骤教你一步步走出深坑

一、安装metrics-server

kubectl apply -f https://github.com/kubernetes-sigs/metrics-server/releases/latest/download/components.yaml

K8S数据采集组件metrics-server安装_第1张图片

二、通过Deployment工作负载安装,查看安装状态

 1、这里很清楚看到metrics并没有reday,继续通过查看pod信息确定是哪里问题

kubectl get deploy -A

2、出现ErrImagePull 基本判定是镜像问题,进入到pod继续查看信息

kubectl get pods -n kube-system | grep metrics

3、通过describe event可以确定是镜像拉取失败

kubectl describe pod/metrics-server-847dcc659d-gvv7z -n kube-system

Back-off pulling image "k8s.gcr.io/metrics-server/metrics-server:v0.6.1" Failed to pull image "k8s.gcr.io/metrics-server/metrics-server:v0.6.1": rpc error: code = Unknown desc = Error response from daemon: Get "https://k8s.gcr.io/v2/": net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)

K8S数据采集组件metrics-server安装_第2张图片

 三、手动下载docker镜像源

1、登录dockerhub搜索metrics-server:v0.6.1

Docker Hubicon-default.png?t=M666https://hub.docker.com/

K8S数据采集组件metrics-server安装_第3张图片

 

K8S数据采集组件metrics-server安装_第4张图片

 2、到服务器docker pull

docker pull cnbugs/metrics-server

K8S数据采集组件metrics-server安装_第5张图片

四、更改服务器deployment

1、通过edit deployment找到image位置改成上面下载的镜像

kubectl edit deployment metrics-server -n kube-system

K8S数据采集组件metrics-server安装_第6张图片

K8S数据采集组件metrics-server安装_第7张图片

 2、再次查看metrics-server状态,发现还是有问题

虽然是running,但是存活数为0

K8S数据采集组件metrics-server安装_第8张图片

 3、再次通过describe event查看问题

 Readiness probe failed: HTTP probe failed with statuscode: 500

可见是权限验证(证书)出了问题

 4、通过edit编辑

kubectl edit deployment metrics-server -n kube-system

添加- --kubelet-insecure-tls 

kubelet 的 10250 端口使用的是 https 协议,连接需要验证 tls 证书。--kubelet-insecure-tls 不验证客户端证书。

K8S数据采集组件metrics-server安装_第9张图片

 5、再次查看deployment中的metrics-server和pod都已经正常K8S数据采集组件metrics-server安装_第10张图片

五、测试 

使用kubectl top pod -A查看组件状态        

K8S数据采集组件metrics-server安装_第11张图片

K8S数据采集组件metrics-server安装_第12张图片 

你可能感兴趣的:(k8s,kubernetes,docker,容器)