我在私有云(OpenStack)上有一些VM。尝试在主节点上创建集群时,默认情况下,它将在其专用IP上启动集群。当我尝试使用主控节点的公共IP初始化群集时,使用--apiserver-advertise-address=publicIP
标志,它会显示错误。
启动阶段如下停止:
[wait-control-plane]等待kubelet启动控件 在目录“ / etc / kubernetes / manifests”中将其作为静态Pod。这个 最多可能需要4m0s [kubelet-check]超过40s的初始超时时间。
我注意到我没有从其内部看到VM的公共IP(运行“ ip addr”),但是可以通过其公共IP访问VM。
是否有办法在节点的“公共IP”之上设置Kubernetes集群?
答案 0 :(得分:1)
私有IP地址用于实例之间的通信,公共地址用于与云外部的网络(包括Internet)进行通信。因此,建议仅在私有地址上设置群集。
启动实例时,会自动为其分配一个私有IP地址,该地址将保持不变,直到您明确终止该实例为止。重新启动实例不会影响私有IP地址。
OpenStack Compute中提供了由云管理员配置的浮动IP地址池。项目配额定义了可以分配给项目的最大浮动IP地址数。
此错误可能是由以下原因引起的:
如果您使用的是systemd驱动的系统,则可以尝试使用以下命令对错误进行故障排除:
尝试将计算机的浮动IP添加到要从其部署群集并再次运行安装的主节点上的 / etc / hosts 文件中。