如何让Kubernetes Pod连接到只能通过节点子集访问的目标?

muf*_*fel 5 networking kubernetes

我有一个Kubernetes v1.13集群,Calico +法兰绒作为CNI.所有节点都有一个可公共路由的IP地址,并运行Ubuntu 16.04.

某些节点位于公司网络中,位于LAN和DMZ中,因此可以访问内部服务,同时仍可公开访问.其他人则是云提供商托管的虚拟机.

簇

考虑上面的简化示例.我想要一个Kubernetes Pod访问Internal Server C(它只是一个普通的服务器而不是集群的一部分).我可以强制要在内部调度Pod Node B,但由于连接只需要很少的延迟和带宽,并且有更多的资源Node A,我更愿意使用Node B某种网关.(考虑几个Node Bs,所以实际上没有SPOF).

我目前的方法是使用带有节点选择器的DaemonSet,其目标是所有内部(B)节点,定义HAProxy Pod.可以作为Kubernetes服务访问这些HAproxy实例,并将请求转发到内部目标服务.

您是否看到了更好或更直接的方式来实现从位于任何节点的Pod到只能通过节点子集到达的目标的连接?