欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 健康 > 美食 > K8s的网络

K8s的网络

2025/5/6 21:51:26 来源:https://blog.csdn.net/u010230019/article/details/146511286  浏览:    关键词:K8s的网络

K8s的网络

      • 1. 节点网络(Node Network)
      • 2. Pod网络(Pod Network)
      • 3. 服务网络(Service Network)
      • 4. 外部网络(External Network)
      • 网络分层流量示例
      • 关键总结

K8s有几层网络呢?

Kubernetes(K8s)的网络模型可以分为 四层,每一层解决不同的网络通信需求。以下是详细的分层说明:


1. 节点网络(Node Network)

  • 作用:物理或虚拟主机(节点)之间的底层网络通信。
  • 实现:依赖底层基础设施(如云厂商VPC、物理交换机、Flannel的Host-GW等)。
  • 关键点
    • 确保所有节点(Master和Worker)能通过IP相互通信。
    • 通常是宿主机网络(如eth0网卡)。

2. Pod网络(Pod Network)

  • 作用:实现同一集群内Pod-to-Pod的直接通信(无论Pod是否在同一节点)。
  • 核心要求
    • 每个Pod拥有唯一IP(IP-per-Pod模型)。
    • Pod IP跨节点互通(无需NAT)。
  • 常见实现
    • Overlay网络(如Flannel/VXLAN、Calico/IPIP):通过隧道封装跨节点流量。
    • Underlay网络(如Calico/BGP、MetalLB):直接利用底层网络路由。
    • CNI插件:负责Pod网络的配置(如分配IP、设置路由等)。

3. 服务网络(Service Network)

  • 作用:通过虚拟IP(VIP)和负载均衡暴露一组Pod,实现服务发现和稳定访问。
  • 核心组件
    • Service:通过kube-proxy维护的iptables/IPVS规则将VIP流量转发到后端Pod。
    • DNS(CoreDNS):为Service提供集群内域名解析(如my-svc.default.svc.cluster.local)。
  • 类型
    • ClusterIP(默认)、NodePort、LoadBalancer等。

4. 外部网络(External Network)

  • 作用:将集群内服务暴露到外部(如公网或企业内网)。
  • 实现方式
    • Ingress:基于HTTP/HTTPS的路由(如Nginx Ingress Controller)。
    • LoadBalancer:云厂商提供的负载均衡器(如AWS ALB)。
    • ExternalIP或NodePort:直接通过节点IP和端口访问。

网络分层流量示例

  1. 外部用户Ingress(外部网络)
  2. IngressService(服务网络)
  3. ServicePod(Pod网络)
  4. Pod另一节点上的Pod(经过节点网络)。

关键总结

层级通信实体典型技术
节点网络节点之间VPC、BGP、物理交换机
Pod网络Pod-to-PodFlannel、Calico、Cilium
服务网络Service-to-Podkube-proxy、CoreDNS
外部网络外部到集群Ingress、LoadBalancer

在这里插入图片描述

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词