【问题标题】:metrics-server:v0.4.2 cannot scrape metrics inside AWS kubernetes cluster environment (cannot validate certificate, doesn't contain any IP SANs)metrics-server:v0.4.2 无法在 AWS kubernetes 集群环境中抓取指标(无法验证证书,不包含任何 IP SAN)
【发布时间】:2021-07-14 18:00:51
【问题描述】:

情况: 度量服务器部署映像为:k8s.gcr.io/metrics-server/metrics-server:v0.4.2 我已经使用kops 工具将 kubernetes 集群部署到一个 AWS 账户中。

错误和失败的原因,由 kubectl -n kube-system logs metrics-server-bcc948649-dsnd6

 unable to fully scrape metrics: [unable to fully scrape metrics from node ip-10-33-47-106.eu-central-1.compute.internal: unable to fetch metrics from node ip-10-33-47-106.eu-central-1.compute.internal: Get "https://10.33.47.106:10250/stats/summary?only_cpu_and_memory=true": x509: cannot validate certificate for 10.33.47.106 because it doesn't contain any IP SANs, unable to fully scrape metrics from node ip-10-33-50-109.eu-central-1.compute.internal: unable to fetch metrics from node ip-10-33-50-109.eu-central-1.compute.internal: Get "https://10.33.50.109:10250/stats/summary?only_cpu_and_memory=true": x509: cannot validate certificate for 10.33.50.109 because it doesn't contain any IP SANs]

我可以通过修改 metrics-server 部署模板并添加参数来轻松解决这个问题 - --kubelet-insecure-tls 到容器 args,但似乎不是生产解决方案。

我想问和在这里学习的是,我怎样才能以正确的方式解决这个问题而不失去安全性?

【问题讨论】:

    标签: amazon-web-services kubernetes metrics-server


    【解决方案1】:

    由 kOps 创建的 Kubelet 证书在其 SAN 中仅包含节点主机名,而使用默认清单部署的指标服务器正在尝试使用节点私有 IP 进行抓取。更改 kubelet-preferred-address-types 参数可解决此问题:

    - --kubelet-preferred-address-types=Hostname
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-01-10
      • 2019-04-06
      • 2022-08-09
      • 2021-08-26
      • 2013-05-17
      相关资源
      最近更新 更多