cloudpods
cloudpods copied to clipboard
[求助/Help] 高可用模式下安装异常。
ocboot在执行到 [get version tag] 这个task的时候,似乎会尝试通过SSH连接到controlplane_host,但是这个地址本来就是闲置用来给K8S的控制平面实现高可用的IP,为什么ocboot要连接到这个地址呢?
或者是不是我对文档内高可用安装一章的K8S_VIP变量理解有误?
相关task在 https://github.com/yunionio/ocboot/blob/release/3.10/onecloud/roles/common/tasks/debian.yml#L48
controlplane_host
@C4a15Wh controlplane_host 是k8s api_server的地址,默认是挂在 第一个节点上的网卡上,报错看着是无法ssh免密登陆,第一个节点是否可以免密登陆到其他两个节点
应该是当前cloudpods k8s架构与我理解的架构存在误差,导致错误理解了文档内高可用安装时指出的K8s VIP选项的含义。 我认为文档内高可用安装教程的内容可能存在误导,建议及时更正,目前参考多节点安装教程,成功启动了三个master节点。
应该是当前cloudpods k8s架构与我理解的架构存在误差,导致错误理解了文档内高可用安装时指出的K8s VIP选项的含义。 我认为文档内高可用安装教程的内容可能存在误导,建议及时更正,目前参考多节点安装教程,成功启动了三个master节点。
@C4a15Wh 收到,我们看一下,感谢
debian的安装逻辑也有问题,应该把https://github.com/yunionio/ocboot/blob/master/onecloud/roles/common/tasks/debian.yml#L50的controlplane_host更改为node_ip,因为get version tag时keepalived还没起来,这个时候根本没有节点持有controlplane_host这个ip。
这个问题将会导致debian场景下无法正常使用Keepalived VIP,请重视。
debian的安装逻辑也有问题,应该把https://github.com/yunionio/ocboot/blob/master/onecloud/roles/common/tasks/debian.yml#L50的controlplane_host更改为node_ip,因为get version tag时keepalived还没起来,这个时候根本没有节点持有controlplane_host这个ip。
@zhasm 看下这个地方的代码,确实有问题,version_tag 不应该从 k8s 里面获取,ocboot 部署脚本能知道安装或者升级指定的版本。
@zexi @C4a15Wh 多谢反馈建议。我更新一下这里的逻辑。