我在裸机本地节点上有一个Kubernetes集群设置(所有节点都可以通过公共网络和私有网络访问)。 我想向该群集添加一个EC2节点。 我有四个节点,分别为 MASTER,WORKER-1,WORKER-2,EC2-NODE。
MASTER,WORKER-1,WORKER-2 具有通过公用和专用网络的完全连接。 但是 EC2-NODE 仅可从任何节点在公共网络上访问。
我尝试将EC2节点加入群集,并给--node-ip = $ public_ip_of_ec2_node, EC2节点已成功加入并标记为就绪,但是服务无法从其他节点到达EC2节点。它加入专用网络接口(eth0),并将EC2节点的专用IP暴露给群集。
在Kubernetes中,要求所有节点之间的私有或公共节点都具有完整的Internet连接。这是什么意思? 节点之间是否必须具有单个网络接口?
任何帮助都会很好。
谢谢。
系统信息:
Kuberenetes版本:1.16.2
Pod网络:法兰绒
答案 0 :(得分:0)
让我们从理解how to implement the Kubernetes networking model开始:
可以使用多种方法来实现此网络模型。 本文档不是对各种方法的详尽研究,但是 希望可以作为各种技术的介绍并 作为出发点。
您可以在其中找到联网选项的列表。其中有Flannel:
Flannel是一个非常简单的覆盖网络,可以满足Kubernetes的需求。 要求。许多人报告说Flannel和 Kubernetes。
Flannel负责在两层之间提供第3层IPv4网络 集群中的多个节点。法兰绒不控制容器的方式 被网络连接到主机,只有流量如何在主机之间传输 主机。但是,法兰绒确实为Kubernetes提供了CNI插件, 与Docker集成的指南。
您已经在使用Flannel作为CNI插件。
如果上述信息对您有帮助,请告诉我。