设置 kubernetes 自动发现提供程序时出错:由于 kubernetes 错误,无法发现 kubernetes 节点

问题描述 投票:0回答:1

我们正在使用几个应用程序将 EKS 集群从 1.24 升级到 1.25。

配置新工作节点时,新节点立即处于 NotReady 状态并出现错误 (aws-node pod)

failed to connect service :50051

挖掘了一下,它似乎与 EKS 的 CNI 插件有关(当时我们还没有安装它)。我们按照docs安装了它,并且节点按预期启动了。

过了一会儿,我们注意到节点正在重新启动,即开始重置的节点是持有 filebeat 的节点,并出现以下错误

instance/beat.go:1015    Exiting: error in autodiscover provider settings: 
error setting up kubernetes autodiscover provider: 
couldn't discover kubernetes node due to error kubernetes: 
Node could not be discovered with any known method. Consider setting env var NODE_NAME

即使很严重,错误也建议修复,这似乎在这里提到过,GitHub问题上的讨论让我想到这可能与CNI本身阻止与Kubernetes API服务器的filebeat通信有关。

支持我信念的另一个事实是,我们有另一个集群在 1.25 以上的版本上运行,其 filebeat 部署与我们的设置相同(正在迁移到 1.25)。

任何有关这一发现的线索都非常感谢

amazon-eks filebeat
1个回答
0
投票

该问题实际上是在一次更新期间暗示的,其中正在启动的 aws-node pod 无法连接到 API 服务器。 事实证明,在升级集群时,EKS 不会自动为您更新插件,因此我们升级了 kube-proxy 插件,一切又恢复正常运行

© www.soinside.com 2019 - 2024. All rights reserved.