我正在尝试使用VM(主)和3个裸机服务器(都运行Ubuntu 14.04)设置一个小型Kubernetes集群。我正在关注Kubernetes install tutorial for Ubuntu。如果我使用4个节点(VM +服务器)作为小兵,一切正常。但是当我尝试将VM用作主设备时,它无法访问Flannel网络。我可以创建pod,服务等,但如果我尝试从主节点(VM)访问服务,它就找不到Flannel的IP。
我可以在Kubernetes的内部网络(在这种情况下是法兰绒的网络)中包含一个仅限主节点吗?如果没有,有关如何从主节点访问Kubernetes UI和其他服务的任何建议?
答案 0 :(得分:1)
要让主节点访问群集网络,您可以在主节点上运行flanneld
和kube-proxy
。这应该为您提供所需的访问权限。
但是,在使用kube-up.sh
方法的上下文中添加这些组件可能有点牵扯。看起来你可能有一些选择,同时主要保留在该教程的框架内:
kube-up.sh
脚本并进行更改,以便在主节点上安装和配置kube-proxy
和flanneld
,而不是kubelet
。随着时间的推移,这可能很难维持。kubectl patch nodes $NODENAME -p '{"spec": {"unschedulable": true}}'
),如概述here所示。主服务器仍将显示在节点列表等中,但它不应该安排任何pod,并且应该具有对集群的完全网络访问权。kubelet
。这实际上与上述类似,除了主节点不会显示在节点列表中(尽管您在移除kubelet时可能必须将其删除(kubectl delete node $NODENAME
)。可能还有其他选择(总有!),但希望这些可以让你开始。