专栏名称: CloudMan
云计算深度实践者;定期发布《每天5分钟玩转OpenStack》教程;让 OpenStack 不再难学!
目录
相关文章推荐
环球物理  ·  【物理金句】2025年一大波物理金句来袭 ·  2 天前  
环球物理  ·  【物理试卷】2025央视春晚隐藏的物理考点 ·  3 天前  
环球物理  ·  【物理笔记】2025八下力学手写笔记 ·  4 天前  
中科院物理所  ·  村口张婶说的八卦,到底哪句是真,哪句是假? ·  5 天前  
环球物理  ·  【物理课件】2025高三开学第一课(物理篇) ·  5 天前  
51好读  ›  专栏  ›  CloudMan

Service IP 原理 - 每天5分钟玩转 Docker 容器技术(137)

CloudMan  · 公众号  ·  · 2018-03-05 06:16

正文

第137篇

Service IP 原理

Service Cluster IP 是一个虚拟 IP,是由 Kubernetes 节点上的 iptables 规则管理的。

可以通过 iptables-save 命令打印出当前节点的 iptables 规则,因为输出较多,这里只截取与 httpd-svc Cluster IP 10.99.229.179 相关的信息:

这两条规则的含义是:

  1. 如果 Cluster 内的 Pod(源地址来自 10.244.0.0/16)要访问 httpd-svc,则允许。

  2. 其他源地址访问 httpd-svc,跳转到规则 KUBE-SVC-RL3JAE4GN7VOGDGP

KUBE-SVC-RL3JAE4GN7VOGDGP 规则如下:

  1. 1/3 的概率跳转到规则 KUBE-SEP-C5KB52P4BBJQ35PH

  2. 1/3 的概率(剩下 2/3 的一半)跳转到规则 KUBE-SEP-HGVKQQZZCF7RV4IT

  3. 1/3 的概率跳转到规则 KUBE-SEP-XE25WGVXLHEIRVO5

上面三个跳转的规则如下:

即将请求分别转发到后端的三个 Pod。通过上面的分析,我们得到如下结论:

iptables 将访问 Service 的流量转发到后端 Pod,而且使用类似轮询的负载均衡策略

另外需要补充一点:Cluster 的每一个节点都配置了相同的 iptables 规则,这样就确保了整个 Cluster 都能够通过 Service 的 Cluster IP 访问 Service。





请到「今天看啥」查看全文