1. 程式人生 > >centos7下kubernetes(13。kubernetes-探討service IP)

centos7下kubernetes(13。kubernetes-探討service IP)

spec 每一個 uap 5.1 ffi 概率 uber session .com

service cluster IP是一個虛擬IP,是由kubernetes節點上的iptables規則管理的

通過iptables-save | grep 10.105.215.156看到與cluster IP 10.105.215.156相關的的信息:

技術分享圖片

這兩條規則的含義是:

1.如果 Cluster 內的 Pod(源地址來自 10.244.0.0/16)要訪問 httpd-svc,則允許

2.其他源地址訪問 httpd-svc,跳轉到規則 KUBE-SVC-RL3JAE4GN7VOGDGP

我們查看一下KUBE-SVC-RL3JAE4GN7VOGDGP的規則

技術分享圖片

1.1/3的概率跳轉到規則KUBE-SEP-743ZVF7RHRJGVII6

2.1/3的概率跳轉到規則 KUBE-SEP-GXPZJNJOCY6I42DY

3.1/3的概率跳轉到規則KUBE-SEP-ZRTKM6VWDCK7UAPS

上面三個的跳轉規則如下:

技術分享圖片

技術分享圖片

技術分享圖片

將請求分別轉發到後端三個pod

結論:

iptables將訪問service的流量轉發到後端pod,使用的是類似輪詢的負載均衡策略。Cluster 的每一個節點都配置了相同的 iptables 規則,這樣就確保了整個 Cluster 都能夠通過 Service 的 Cluster IP 訪問 Service。

Service 默認輪詢,也可以使用 spec.sessionAffinity: ClientIP 保持回話

centos7下kubernetes(13。kubernetes-探討service IP)