TOS Master 启动失败apiserver容器报错”unable to find suitable address error”

  其他常见问题
内容纲要

概要描述

在安装TOS的时候,偶发性出现单个节点TOS Master启动失败的多网卡环境。apiserver报错

Unable to find suitable network address error='unable to select an IP from default routes'.'Try to set the AdvertiseAddress directly or provide a valid BindAddress to fix this.

本文描述出现上述问题的解决方法

详细描述

故障描述

客户多网卡环境下TOS Master偶发性会启动失败
查看pod启动状态,可以看到是apiserver启动失败

kubectl get pods -n kube-system

file

去对应节点查看找到container id

docker ps -a | grep apiserver

根据上面执行的结果找到对应的container id,查看日志

docker logs [container-id]

以下是报错的截图信息

file

故障原因

集群服务器有多块网卡,tos-market 通过终端访问容器时,terminal应用的apiserver IP配置未及时更新导致无法通过此方式访问应用

解决方法

确定tos的版本
新版本的TOS已经独立出Manager了,所以用下面的方法确认tos的版本

docker images | grep tos

如果非新版本,tos的版本即manager的版本,确认manager的版本即可

docker images | grep manager

备份tos-apiserver.manifest

cp /var/lib/transwarp-manager/master/content/meta/services/TOS/[版本]/templates/tos-apiserver.manifest /var/lib/transwarp-manager/master/content/meta/services/TOS/[版本]/templates/tos-apiserver.manifest.init

修改tos-apiserver.manifest

vim /var/lib/transwarp-manager/master/content/meta/services/TOS/[版本]/templates/tos-apiserver.manifest

对文件做如下修改,主要将两个bind-address 从127.0.0.1 改成0.0.0.0
添加一行 –advertise-address=${localIp}
修改成如下格式

file

TOS 配置服务,重启对应节点的tos master服务即可。

这篇文章对您有帮助吗?

平均评分 0 / 5. 次数: 0

尚无评价,您可以第一个评哦!

非常抱歉,这篇文章对您没有帮助.

烦请您告诉我们您的建议与意见,以便我们改进,谢谢您。