问题描述
新建的集群里使用 kubectl top node 时报错:
[root@beta-test-v4-dubbo02 ~]# kubectl top nodeError from server (NotFound): the server could not find the requested resource (get services http:heapster:)
复制代码
问题分析
根据错误检索了下信息,是因为没有缺少 heapster。常用来收集指标信息的插件有 metrics-server 和 heapster 。都说 k8s 版本再 1.8 之后由 metrics-server 替代了。这是一个 K8S 的资源监控工具,监控 CPU 和内存的使用情况。他是一款必须安装的组件,因为有其他许多组件依赖他,比如 HPA,scheduler,kubectl top 。那下面就开始安装 metrics-server 了。
问题解决
下载安装
wget https://github.com/kubernetes-sigs/metrics-server/archive/v0.3.6.tar.gztar -zxvf v0.3.6.tar.gzcd metrics-server-0.3.6/deploy/1.8+/# 添加配置,见下图vi metrics-server-deployment.yamlkubectl apply -f ./
复制代码
metrics-server-deployment.yaml 添加的配置如下:
image: rancher/metrics-server:v0.3.6 #修改镜像 imagePullPolicy: Always command: # 添加这几行 - /metrics-server - --metric-resolution=30s - --kubelet-insecure-tls - --kubelet-preferred-address-types=InternalIP,Hostname,InternalDNS,ExternalDNS,ExternalIP volumeMounts: - name: tmp-dir mountPath: /tmp
复制代码
由于网络原因,导致默认配置中的镜像版本 k8s.gcr.io/metrics-server-amd64:v0.3.6 拉取失败,故修改镜像地址为 rancher/metrics-server:v0.3.6 。
问题验证
[root@beta-test-v4-dubbo02 1.8+]# kubectl top nodeNAME CPU(cores) CPU% MEMORY(bytes) MEMORY% beta-autoceshi-1 3134m 78% 2110Mi 13% beta-test-v4-dubbo02 310m 31% 1814Mi 47% beta-vediocloud2-1 235m 5% 1437Mi 9% beta-vediocloud2-2 186m 4% 818Mi 5% beta-vediocloud2-3 270m 6% 3147Mi 19% beta-vediocloudddd-1 208m 5% 1522Mi 9% beta-vediocloudddd-2 228m 5% 3867Mi 24% beta-vediocloudddd-3 270m 6% 2171Mi 13% beta-vediocloudddd-4 190m 4% 1436Mi 9% beta-vediocloudddd-5 3578m 89% 2378Mi 14% beta-vediocloudddd-6 228m 5% 2011Mi 12% beta-vediocloudddd-7 191m 4% 2139Mi 13% beta-vediocloudddd-9 150m 3% 1822Mi 11%
复制代码
大功告成!!
评论