【问题标题】:Kubeadm Setting up cluster on AWSKubeadm 在 AWS 上设置集群
【发布时间】:2019-11-28 01:45:33
【问题描述】:

我正在尝试在 AWS 上设置 kubernetes 集群。 我安装了 docker、kubelet、kubectl 和 kubeadm。

我创建了 3 个 EC2 实例并为一个虚拟机分配了一个弹性 IP。

在主节点(具有弹性 IP)上,我运行以下命令:

sudo kubeadm init --pod-network-cidr=10.244.0.0/16 --apiserver-advertise-address=3.18.117.205

在初始化过程中,它停留在初始化并返回超时错误。以下是 Kubelet 的日志:

Jul 19 05:11:29 ip-172-31-16-195 kubelet[17171]: E0719 05:11:29.511349   17171 reflector.go:125] k8s.io/kubernetes/pkg/kubelet/config/apiserver
Jul 19 05:11:29 ip-172-31-16-195 kubelet[17171]: E0719 05:11:29.513005   17171 reflector.go:125] k8s.io/kubernetes/pkg/kubelet/kubelet.go:453: 
Jul 19 05:11:29 ip-172-31-16-195 kubelet[17171]: E0719 05:11:29.516066   17171 reflector.go:125] k8s.io/client-go/informers/factory.go:133: Fai
Jul 19 05:11:29 ip-172-31-16-195 kubelet[17171]: E0719 05:11:29.537776   17171 reflector.go:125] k8s.io/kubernetes/pkg/kubelet/kubelet.go:444: 
Jul 19 05:11:29 ip-172-31-16-195 kubelet[17171]: E0719 05:11:29.601084   17171 kubelet.go:2248] node "ip-172-31-16-195" not found
Jul 19 05:11:29 ip-172-31-16-195 kubelet[17171]: E0719 05:11:29.701293   17171 kubelet.go:2248] node "ip-172-31-16-195" not found
Jul 19 05:11:29 ip-172-31-16-195 kubelet[17171]: E0719 05:11:29.801496   17171 kubelet.go:2248] node "ip-172-31-16-195" not found
Jul 19 05:11:29 ip-172-31-16-195 kubelet[17171]: E0719 05:11:29.901732   17171 kubelet.go:2248] node "ip-172-31-16-195" not found
Jul 19 05:11:30 ip-172-31-16-195 kubelet[17171]: E0719 05:11:30.001992   17171 kubelet.go:2248] node "ip-172-31-16-195" not found
Jul 19 05:11:30 ip-172-31-16-195 kubelet[17171]: E0719 05:11:30.102215   17171 kubelet.go:2248] node "ip-172-31-16-195" not found

如果我使用以下命令:

sudo kubeadm init --pod-network-cidr=10.244.0.0/16

然后初始化成功,我得到加入网络的命令。

join 命令包含虚拟机的私有 IP 地址。

因此,如果我使用上述加入命令并使用它创建集群,那么在任何情况下,如果我重新启动主节点,那么它是否会影响集群,例如更改机器的私有 IP?

如果不是,那Elastic IP有什么用?

任何帮助,将不胜感激。

谢谢

【问题讨论】:

    标签: amazon-web-services docker kubernetes kubeadm kubelet


    【解决方案1】:

    我重新启动主节点,然后它会像变化一样影响集群 在机器的私有 IP 中?

    重启 EC2 实例不会更改实例的私有 IP 地址;它只会更改公共地址(除非它是弹性 IP)。

    所以你不必担心。而且您不需要弹性 IP 将 apiserver 通告给集群中的其余节点。事实上,作为最佳实践,您希望实例通过私有 IP 进行通信。

    如果不是,那Elastic IP有什么用?

    没有用。设置指南是否告诉您需要弹性 IP?

    在不了解您的网络设置的情况下,我无法告诉您更多关于为什么弹性 IP 会导致问题的信息。

    如果您需要进一步的故障排除帮助,您可以尝试重新运行 kubeadm init 并显示日志详细程度 -v=2 并在此处发布输出。

    Or you could try using the --apiserver-cert-extra-sans=<public ip address> instead of --apiserver-advertise-address

    【讨论】:

      猜你喜欢
      • 2018-09-18
      • 2020-03-16
      • 2017-09-12
      • 1970-01-01
      • 1970-01-01
      • 2020-08-05
      • 2019-10-12
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多