部署metrics-server时,pod能正常启动,但是不能正常使用 k8s版本1.22 metrics版本0.4.2

#使用命令报无法处理连接错误


kubectl top node
Error from server (ServiceUnavailable): the server is currently unable to handle the request (get nodes.metrics.k8s.io)

#pod正常启动
kubectl get pod -n kube-system  | grep metrics
metrics-server-7b868c5f96-mrpq5      1/1     Running            0               24m

#pod的日志信息
kubectl logs -f metrics-server-7b868c5f96-mrpq5 -n kube-system

E0113 07:56:56.708714       1 storage.go:123] duplicate node k8s-node2 received
E0113 07:56:56.708732       1 storage.go:134] duplicate pod kube-system/kube-flannel-ds-db5xf received
E0113 07:56:56.708740       1 storage.go:134] duplicate pod kube-system/metrics-server-7b868c5f96-mrpq5 received
E0113 07:56:56.708744       1 storage.go:134] duplicate pod kube-system/kube-flannel-ds-amd64-zbsvf received
E0113 07:56:56.708750       1 storage.go:134] duplicate pod kube-system/kube-proxy-ckgvd received
E0113 07:56:56.708755       1 storage.go:134] duplicate pod default/test received
E0113 07:57:56.718595       1 server.go:132] unable to fully scrape metrics: unable to fully scrape metrics from node k8s-master: unable to fetch metrics from node k8s-master: Get "https://10.0.24.13:10250/stats/summary?only_cpu_and_memory=true": dial tcp 10.0.24.13:10250: i/o timeout


#yaml配置信息

- args:
        - --cert-dir=/tmp
        - --secure-port=4443
        - --kubelet-preferred-address-types=InternalIP,Hostname,InternalDNS,ExternalDNS,ExternalIP
        - --kubelet-use-node-status-port
        - --kubelet-insecure-tls
        image: registry.cn-guangzhou.aliyuncs.com/mgpublic/metrics-server:v0.4.2

#在启动metrics这个pod前,我这边还得先启动kube-apiserver

kubectl get pod -n kube-system
NAME                                 READY   STATUS             RESTARTS        AGE
coredns-7f6cbbb7b8-b5dlw             1/1     Running            0               8d
coredns-7f6cbbb7b8-ncwd9             1/1     Running            0               8d
etcd-k8s-master                      1/1     Running            0               43d
kube-apiserver                       0/1     CrashLoopBackOff   1 (16s ago)     17s
kube-apiserver-k8s-master            1/1     Running            0               19m
kube-controller-manager-k8s-master   1/1     Running            4 (99m ago)     43d
kube-flannel-ds-amd64-6759h          1/1     Running            0               8d
kube-flannel-ds-amd64-hszcc          1/1     Running            255 (42d ago)   43d
kube-flannel-ds-amd64-zbsvf          1/1     Running            1 (14d ago)     15d
kube-flannel-ds-d4mzc                1/1     Running            0               8d
kube-flannel-ds-db5xf                1/1     Running            1 (14d ago)     15d
kube-flannel-ds-v7z67                1/1     Running            0               42d
kube-proxy-6pv5k                     1/1     Running            4 (14d ago)     43d
kube-proxy-ckgvd                     1/1     Running            1 (14d ago)     15d
kube-proxy-kz959                     1/1     Running            0               43d
kube-scheduler-k8s-master            1/1     Running            4 (99m ago)     43d
metrics-server-7b868c5f96-72x78      1/1     Running            0               8s

kube-apiserver的日志信息

 kubectl logs kube-apiserver -n kube-system
I0113 09:04:44.114716       1 server.go:553] external host was not specified, using 152.136.134.149
Error: failed to parse service-account-issuer-key-file: open /etc/kubernetes/pki/sa.key: no such file or directory

道友求助!!!

加上下面的选项:

--enable-aggregator-routing = true

如有帮助,请采纳,多谢!

你的api启动都有问题,而且日志报错提示你,sa的证书有问题啊,如果证书没弄好,整个K8S是不能正常工作的。


先去处理好api的证书问题,再来考虑后续的。

服务内部报错了吧,导致pod无法启动,看看服务的报错日志排查一下。