Kubernetes ---- Service更改工作模式爲ipvs

Service更改工作模式爲ipvs

轉載至:https://www.jianshu.com/p/d1ba8b910085

當我的集羣搭建完成之後,service使用的默認工作模式爲iptables,當我查看的時候,IPtables又不太方便查看,排版、內容看起來都比較複雜,所以我嘗試使用ipvs,更改Service現在工作模式

而且IPvS有以下好處:

  • IPVS爲大型集羣提供了更好的可擴展性和性能。
  • IPVS支持比iptables更復雜的負載平衡算法(最小負載,最少連接,位置,加權等)。
  • IPVS支持服務器健康檢查和連接重試等。

kube-proxy開啓ipvs的前置條件

1. 安裝IPvS

# yum -y install ipvsadm ipvsset

ipvs需要加載一些內核模塊

  • ip_vs
  • ip_vs_rr
  • ip_vs_wrr
  • ip_vs_sh
  • nf_conntrack_ipv4

2. 在各個節點執行以下腳本:

# cat > /etc/sysconfig/modules/ipvs.modules <<EOF
modprobe -- ip_vs
modprobe -- ip_vs_rr
modprobe -- ip_vs_wrr
modprobe -- ip_vs_sh
modprobe -- nf_conntrack_ipv4
EOF
#
chmod 755 /etc/sysconfig/modules/ipvs.modules && bash /etc/sysconfig/modules/ipvs.modules && lsmod | grep -e ip_vs -e nf_conntrack_ipv4

3. kube-proxy開啓ipvs並重啓kube-proxy

$ kubectl edit configmap -n kube-system
....
mode: "ipvs"
....
$ kubectl get pod -n kube-system | grep kube-proxy | awk '{system("kubectl delete pod "$1" -n kube-system")}'

4. 此時再像往常一樣創建Deployment、Pod、Service之後查看就有ipvs規則了。

 

cat > /etc/sysconfig/modules/ipvs.modules <<EOF
modprobe -- ip_vs
modprobe -- ip_vs_rr
modprobe -- ip_vs_wrr
modprobe -- ip_vs_sh
modprobe -- nf_conntrack_ipv4
EOF
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章