K8s的网络

K8s的网络

      • [1. 节点网络(Node Network)](#1. 节点网络(Node Network))
      • [2. Pod网络(Pod Network)](#2. Pod网络(Pod Network))
      • [3. 服务网络(Service Network)](#3. 服务网络(Service Network))
      • [4. 外部网络(External 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-Pod Flannel、Calico、Cilium
服务网络 Service-to-Pod kube-proxy、CoreDNS
外部网络 外部到集群 Ingress、LoadBalancer
相关推荐
我是小bā吖41 分钟前
阿里云服务网格ASM实践
网络·阿里云·云计算·服务发现
吴free1 小时前
mac电脑wireshark快速实现http接口抓包
网络·测试工具·http·wireshark
艾希逐月2 小时前
TCP数据的发送和接收
服务器·网络·tcp/ip
D-海漠5 小时前
Modbus_TCP_V4 客户端
网络
虚!!!看代码6 小时前
【Sentinel学习】
网络·sentinel
liulilittle6 小时前
VGW 虚拟网关用户手册 (PPP PRIVATE NETWORK 基础设施)
开发语言·网络·c++·网关·智能路由器·路由器·通信
网硕互联的小客服6 小时前
服务器如何配置防火墙规则以阻止恶意流量和DDoS攻击?
服务器·网络·ddos
Qiq9226 小时前
怎么分析内网ipv6和ipv4流量占比?
网络
数通Dinner6 小时前
P/A初始化协商
网络
网安小白的进阶之路6 小时前
A模块 系统与网络安全 第三门课 网络通信原理-3
网络·windows·安全·web安全·系统安全