如何从状态 "False (MissingEndpoints)" 启用 kube-system/metrics-server?

How to enable kube-system/metrics-server from status "False (MissingEndpoints)"?

我的指标服务器突然不工作并得到以下信息:

$ kubectl get apiservices |egrep metrics
v1beta1.metrics.k8s.io kube-system/metrics-server False (MissingEndpoints)

我尝试在下面实现但仍然不行:

$ git clone https://github.com/kubernetes-incubator/metrics-server.git
$ cd metrics-server
$ kubectl apply -f deploy/1.8+/

请指教,谢谢

在这种情况下,解决方案是升级节点的 kubernetes 版本以重新应用指标服务器

此外,升级到 metrics-server 的最新 (0.4.1) 版本可能会修复类似的问题(如 False (MissingEndpoints)):

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

我通过以下方式解决了这个问题:

下载指标服务器:

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

删除指标服务器:

kubectl delete -f components.yaml  

编辑下载的文件并添加 - --kubelet-insecure-tls 标志:

labels:
    k8s-app: metrics-server
spec:
  containers:
  - args:
    - --cert-dir=/tmp
    - --secure-port=443
    - --kubelet-preferred-address-types=InternalIP,ExternalIP,Hostname
    - --kubelet-use-node-status-port
    - --metric-resolution=15s
    - --kubelet-insecure-tls

再次创建服务:

kubectl apply -f components.yaml