kubernetes - Metrics-Server:节点没有匹配类型的地址 [InternalIP]
问题描述
我正在使用 Rancher 2.5.8 来管理我的 Kubernetes 集群。今天,我创建了一个新集群,一切都按预期工作,除了指标服务器。指标服务器的状态始终为“CrashLoopBackOff”,日志告诉我以下内容:
E0519 11:46:39.225804 1 server.go:132] unable to fully scrape metrics: [unable to fully scrape metrics from node worker1: unable to fetch metrics from node worker1: unable to extract connection information for node "worker1": node worker1 had no addresses that matched types [InternalIP], unable to fully scrape metrics from node worker2: unable to fetch metrics from node worker2: unable to extract connection information for node "worker2": node worker2 had no addresses that matched types [InternalIP], unable to fully scrape metrics from node worker3: unable to fetch metrics from node worker3: unable to extract connection information for node "worker3": node worker3 had no addresses that matched types [InternalIP], unable to fully scrape metrics from node main1: unable to fetch metrics from node main1: unable to extract connection information for node "main1": node main1 had no addresses that matched types [InternalIP]]
I0519 11:46:39.228205 1 requestheader_controller.go:169] Starting RequestHeaderAuthRequestController
I0519 11:46:39.228222 1 shared_informer.go:240] Waiting for caches to sync for RequestHeaderAuthRequestController
I0519 11:46:39.228290 1 configmap_cafile_content.go:202] Starting client-ca::kube-system::extension-apiserver-authentication::client-ca-file
I0519 11:46:39.228301 1 shared_informer.go:240] Waiting for caches to sync for client-ca::kube-system::extension-apiserver-authentication::client-ca-file
I0519 11:46:39.228310 1 configmap_cafile_content.go:202] Starting client-ca::kube-system::extension-apiserver-authentication::requestheader-client-ca-file
I0519 11:46:39.228314 1 shared_informer.go:240] Waiting for caches to sync for client-ca::kube-system::extension-apiserver-authentication::requestheader-client-ca-file
I0519 11:46:39.229241 1 secure_serving.go:197] Serving securely on [::]:4443
I0519 11:46:39.229280 1 dynamic_serving_content.go:130] Starting serving-cert::/tmp/apiserver.crt::/tmp/apiserver.key
I0519 11:46:39.229302 1 tlsconfig.go:240] Starting DynamicServingCertificateController
I0519 11:46:39.328399 1 shared_informer.go:247] Caches are synced for client-ca::kube-system::extension-apiserver-authentication::requestheader-client-ca-file
I0519 11:46:39.328428 1 shared_informer.go:247] Caches are synced for client-ca::kube-system::extension-apiserver-authentication::client-ca-file
I0519 11:46:39.328505 1 shared_informer.go:247] Caches are synced for RequestHeaderAuthRequestController
有谁知道我如何解决这个问题,以便指标服务器不再崩溃?
这是 的输出kubectl get nodes worker1 -oyaml
:
status:
addresses:
- address: worker1
type: Hostname
- address: 65.21.<any>.<ip>
type: ExternalIP
解决方案
问题出在指标服务器上。
Metrics 服务器已配置为使用kubelet-preferred-address-types=InternalIP
,但工作节点未列出任何 InternalIP:
$ kubectl get nodes worker1 -oyaml:
[...]
status:
addresses:
- address: worker1
type: Hostname
- address: 65.21.<any>.<ip>
type: ExternalIP
解决方案是--kubelet-preferred-address-types=ExternalIP
在指标服务器部署 yaml 中设置。
但可能更好的解决方案是将其配置为官方指标服务器部署 yaml ( source ):
- --kubelet-preferred-address-types=InternalIP,ExternalIP,Hostname
正如metrics-server 配置文档中的状态:
--kubelet-preferred-address-types - 确定连接到特定节点的地址时使用的节点地址类型的优先级(默认 [Hostname,InternalDNS,InternalIP,ExternalDNS,ExternalIP])
推荐阅读
- c++ - 是否可以在恒定时间内交换 std::array ?
- reinforcement-learning - 将 ERL 和 EA 视为 RL 有什么区别?
- r - 在 R 中有条件地标记具有不同维度字形的散点图
- reactjs - Antd Design【表格】如何在列中点击展开行
- c# - c#使用system.drawing,改变颜色
- winapi - 我的 windows-rs 脚本不渲染位图(或不创建位图)但也不会崩溃,谁能帮我查明问题?
- javascript - iframe 平滑重新加载/刷新
- python - 如何让 ARIMA 预测的不是下一个观测值而是第 n 个观测值?
- facebook - SwiftUI Facebook SDK:找不到应用 ID。将带有您的应用 ID 的字符串值添加到 Info.plist 中以获取关键 FacebookAppID
- javascript - 数组在异步函数中将元素推入其中后打印为空