Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/kubernetes/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
设置NAT后面的kubernetes工作节点_Kubernetes - Fatal编程技术网

设置NAT后面的kubernetes工作节点

设置NAT后面的kubernetes工作节点,kubernetes,Kubernetes,我已经使用kubeadm设置了一个kubernetes集群 环境 主节点安装在具有公共IP的PC中 NAT地址后面的工作节点(接口具有本地内部IP,但需要使用公共IP访问) 状态 工作节点能够加入集群并运行 kubectl get nodes 节点的状态为就绪 Kubernetes可以在该节点上部署和运行吊舱 问题 我遇到的问题是,我无法访问部署在该节点上的吊舱。例如,如果我跑步 kubectl logs <pod-name> 因为它试图使用本地IP 192.168.0.17,这

我已经使用kubeadm设置了一个kubernetes集群

环境

  • 主节点安装在具有公共IP的PC中
  • NAT地址后面的工作节点(接口具有本地内部IP,但需要使用公共IP访问)
  • 状态

    工作节点能够加入集群并运行

    kubectl get nodes
    
    节点的状态为就绪

    Kubernetes可以在该节点上部署和运行吊舱

    问题

    我遇到的问题是,我无法访问部署在该节点上的吊舱。例如,如果我跑步

    kubectl logs <pod-name>
    
    因为它试图使用本地IP 192.168.0.17,这是外部无法访问的

    我已经看到该节点具有以下注释:

    flannel.alpha.coreos.com/public-ip: 192.168.0.17
    
    因此,我尝试通过以下方式修改注释,设置外部IP:

    flannel.alpha.coreos.com/public-ip: <my_externeal_ip>
    
    flannel.alpha.coreos.com/public-ip:
    
    我看到该节点已正确注释,但它仍然使用192.168.0.17

    我还需要在worker节点或集群配置中设置其他内容吗?

    侧边栏中有大量相关问题,我大约90%确定这是一个常见问题,但不必费心对重复的问题进行分类

    是否需要在工作节点或集群配置中设置其他内容

    不,这种情况不是工作节点配置错误,也不是集群配置错误。这只是kubernetes处理以吊舱为中心的通信方式的副作用。这意味着,如果您选择继续进行该设置,您将无法使用
    kubectl exec
    kubectl日志
    (我认为
    port forward
    ),因为这些命令不会通过API服务器发送流量,相反,它直接联系节点上的
    kubelet
    端口,该节点承载与您交互的Pod。这主要是为了减轻通过API服务器传输的流量,但如果同时发生足够多的exec/log/port foward/etc命令,也可能是一个扩展问题,因为TCP端口不是无限的

    我认为从理论上讲,让您的工作站加入覆盖网络是可能的,因为从定义上讲,它与外部网络无关,但我没有太多的经验尝试让覆盖网络与NAT配合,所以这是“理论上”的部分

    我个人已经让Wireguard跨NAT工作,这意味着您可以将VPN接入节点的网络,但这是一个转折点,可能会带来更多的麻烦

    flannel.alpha.coreos.com/public-ip: <my_externeal_ip>