局域网与Kubernetes内部网络如何互通( 四 )

  • IPIP隧道模式的缺点:主要的问题因为要封包接包,性能低 。
  • 五、局域网与Kubernetes内部网络互通如果K8S集群就部署在局域网内或者部署在自己的数据中心,整个链路上的网关可配的话,用静态路由表是最简单的办法,其原理是作用在网络模型的第三层 网络层,直接告诉网关某些IP要发给谁 。
    通过上面的K8S网络小知识和执行命令看到的路由转发的截图,我们知道K8S-Node其实也是一个虚拟路由,只要请求被转发到K8S-Node,那么就可以访问到Pod 。
    举一个最简单的例子,某开发环境的K8S部署在和办公室同一个局域网,有下面两条线路可以打通网络,如下图:
    局域网与Kubernetes内部网络如何互通

    文章插图
    此时只需要公司的运维在网关路由器上添加静态路由规则,把属于K8S的Pod/Service CIDR的IP包全转给其中某个K8S节点,这样访问10.96.0.1这样的IP,网络包会到达某个集群物理节点,而集群内的物理节点或VM,一般K8S网络插件(CNI)都会做与Pod/Service CIDR的互通 。
    如果K8S部署的机器和公司办公室不在同一个网关下,或者部署在自建数据中心的,整个链路会多几个网关,链路上每个网关都需要配置路由表路由相应的CIDR到相邻的跃点,如果是办公网络到到达云上的K8S集群,也只需要从路由器经过VPN到达云上即可,如下图:
    局域网与Kubernetes内部网络如何互通

    文章插图




    推荐阅读