kubernetes1.11.0安裝教程,開啟ipvs時代
阿新 • • 發佈:2018-06-28
我們 The .html size log onf system wrr 連接
包地址:http://sealyun.com/pro/products/
- master上: cd shell && sh init.sh && sh master.sh
- node上:cd shell && sh init.sh
- 在node上執行master輸出的join命令即可 (命令忘記了可以用這個查看,kubeadm token create —print–join-command)
本次包更新內容,增加了crictl,否則無法使用kubeadm安裝集群
新增ipvs 模式,打開方式:
kubernetes啟用ipvs
確保內核開啟了ipvs模塊
[root@k8s ~]# lsmod|grep ip_vs ip_vs_sh 12688 0 ip_vs_wrr 12697 0 ip_vs_rr 12600 16 ip_vs 141092 23 ip_vs_rr,ip_vs_sh,xt_ipvs,ip_vs_wrr nf_conntrack 133387 9 ip_vs,nf_nat,nf_nat_ipv4,nf_nat_ipv6,xt_conntrack,nf_nat_masquerade_ipv4,nf_conntrack_netlink,nf_conntrack_ipv4,nf_conntrack_ipv6 libcrc32c 12644 3 ip_vs,nf_nat,nf_conntrack
沒開啟加載方式:
modprobe -- ip_vs
modprobe -- ip_vs_rr
modprobe -- ip_vs_wrr
modprobe -- ip_vs_sh
modprobe -- nf_conntrack_ipv4
1.10以上版本,使用kubeadm安裝的,直接修改kube-proxy configmap即可
kubectl edit configmap kube-proxy -n kube-system
ipvs: minSyncPeriod: 0s scheduler: "" syncPeriod: 30s kind: KubeProxyConfiguration metricsBindAddress: 127.0.0.1:10249 mode: "ipvs" # 加上這個 nodePortAddresses: null
看到pod如下信息表明成功
[root@k8s ~]# kubectl logs kube-proxy-72lg9 -n kube-system I0530 03:38:11.455609 1 feature_gate.go:226] feature gates: &{{} map[]} I0530 03:38:11.490470 1 server_others.go:183] Using ipvs Proxier. W0530 03:38:11.503868 1 proxier.go:304] IPVS scheduler not specified, use rr by default I0530 03:38:11.504109 1 server_others.go:209] Tearing down inactive rules. I0530 03:38:11.552587 1 server.go:444] Version: v1.10.3
安裝ipvsadm工具
yum install -y ipvsadm
檢查service ipvs配置:
[root@k8s ~]# ipvsadm -ln
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
TCP 172.31.244.239:32000 rr
-> 192.168.77.9:8443 Masq 1 0 0
TCP 172.31.244.239:32001 rr
-> 192.168.77.8:3000 Masq 1 0 0
TCP 10.96.0.1:443 rr persistent 10800
-> 172.31.244.239:6443 Masq 1 0 0
TCP 10.96.0.10:53 rr
-> 192.168.77.7:53 Masq 1 0 0
-> 192.168.77.10:53 Masq 1 0 0
TCP 10.96.82.0:80 rr
-> 192.168.77.8:3000 Masq 1 0 0
TCP 10.96.152.25:8086 rr
-> 192.168.77.12:8086 Masq 1 0 0
TCP 10.96.232.136:6666 rr
可以看到我們的dashboard dns什麽的都已經配置了,可以驗證一下:
[root@k8s ~]# wget https://172.31.244.239:32000 --no-check-certificate
--2018-05-30 16:17:15-- https://172.31.244.239:32000/
正在連接 172.31.244.239:32000... 已連接。
警告: 無法驗證 172.31.244.239 的由 “/CN=.” 頒發的證書:
出現了自己簽名的證書。
警告: 證書通用名 “.” 與所要求的主機名 “172.31.244.239” 不符。
已發出 HTTP 請求,正在等待回應... 200 OK
長度:990 [text/html]
正在保存至: “index.html”
100%[=======================================================================================================================================================>] 990 --.-K/s 用時 0s
2018-05-30 16:17:15 (16.3 MB/s) - 已保存 “index.html” [990/990])
是通的,完全ok
這裏十分推薦大家使用ipvs模式,iptables出了問題不好調試,而且規則一多性能顯著下降,我們甚至出現規則丟失的情況,ipvs穩定很多
kubernetes1.11.0安裝教程,開啟ipvs時代