gpt4 book ai didi

kubernetes - 为工作节点设置不同的内部IP

转载 作者:行者123 更新时间:2023-12-02 11:37:05 24 4
gpt4 key购买 nike

我想在本地设置一个kubernetes集群,我想拥有1个主节点和2个工作节点。我已经做到了,但是由于所有节点的内部IP地址都相同,所以我无法访问Pod或查看特定Pod的任何日志。

vagrant@k8s-head:~$ kubectl get nodes -o wide
NAME STATUS ROLES AGE VERSION INTERNAL-IP EXTERNAL-IP OS-IMAGE KERNEL-VERSION CONTAINER-RUNTIME
k8s-head Ready master 5m53s v1.15.0 10.0.2.15 <none> Ubuntu 16.04.6 LTS 4.4.0-151-generic docker://18.6.2
k8s-node-1 Ready <none> 4m7s v1.15.0 10.0.2.15 <none> Ubuntu 16.04.6 LTS 4.4.0-151-generic docker://18.6.2
k8s-node-2 Ready <none> 2m28s v1.15.0 10.0.2.15 <none> Ubuntu 16.04.6 LTS 4.4.0-151-generic docker://18.6.2

为了解决此问题,我发现应该执行以下操作:
-在/ etc / default / kubelet文件中添加 KUBELET_EXTRA_ARGS=--node-ip=<IP_ADDRESS>-通过运行 sudo systemctl daemon-reload && sudo systemctl restart kubelet重新启动kubelet

问题是此位置缺少/ etc / default / kubelet文件,并且我无法添加此附加参数。尝试手动创建文件,但是重新启动kubelet时似乎无法正常工作,IP地址仍然相同。

是否有人遇到缺少/ etc / default / kubelet文件的问题,或者是否还有另一种更简单的方法来设置不同的内部IP地址?

最佳答案

对于在VirtualBox上运行的Kubernetes群集,每个节点中的IP通常都是相同的,这是正常的,原因是它不是用于虚拟机之间通信的NAT newtork,访问外部环境时会对10.0.2.15 IP进行NAT。

下图显示了在VirtualBox顶部的Kubernetes群集中创建的网络,如您所见,每个节点的NAT newtork中具有相同的IP,但其他网络上的IP却不同:

Kubernetes Cluster Networks

为了访问POD,您可以使用NodePort和HOST ONLY网络。

查看完整的示例,然后从Building a Kubernetes Cluster with Vagrant and Ansible (without Minikube)下载代码。本教程介绍了如何使用Ansible剧本,Vagrant和VirtualBox启动Kubernetes集群。

它使用Calico进行网络连接,并且还包括另一个教程,用于在需要微服务网格时安装 Istio

关于kubernetes - 为工作节点设置不同的内部IP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56831417/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com