LVS-NAT集羣環境實現
同步集羣環境所有服務器的時間:(時間必須同步,注意防火牆和SELinux狀態)
LVS服務器配置:
安裝包chrony
修改配置文件vim /etc/chrony.conf添加下面配置
server 172.18.0.1 iburst (同步172.18.0.1服務器的時間) allow 192.168.205.0/24 (允許同步本服務器時間的IP網段) local stratum 10 (當LVS無法同步172.18.0.1服務器的時間時,允許的主機仍可以同步本機時間)
systemctl restart chronyd
RS1服務器配置:
安裝包chrony
修改配置文件vim /etc/chrony.conf添加下面配置
server 192.168.205.132 iburst (同步LVS服務器的時間) systemctl restart chronyd
RS2服務器配置:
安裝包chrony
修改配置文件vim /etc/chrony.conf添加下面配置
server 192.168.205.132 iburst (同步LVS服務器的時間)
systemctl restart chronyd
搭建網絡環境:
LVS服務器有兩個網卡,一個配置私網IP一個配置公網IP(LVS服務器需要開啓IP轉發功能)
echo net.ipv4.ip_forward=1 >> /etc/sysctl.conf
sysctl -p
RS1和RS2默認網關指向LVS的私網IP
nmcli connection modify ens33 ipv4.gateway 192.168.205.132
客戶端的網關指向LVS的公網IP
nmcli connection modify ens37 ipv4.gateway 172.18.205.166
此時客戶端和RS服務器就可以ping通了
在RS服務器上佈置httpd服務調度實現(LVS服務器上安裝ipvsadm包)
在LVS服務器上添加集羣:
ipvsadm -A -t 172.18.205.166:80 -s rr
在集羣中添加RS服務器:
ipvsadm -a -t 172.18.205.166:80 -r 192.168.205.100 -m
ipvsadm -a -t 172.18.205.166:80 -r 192.168.205.160 -m
查看LVS集羣和RS服務器:
ipvsadm -ln(選項順序不能變)
客戶端訪問:(訪問LVS的公網IP)
curl 172.18.205.166
由於指定的調度算法是rr(輪詢),如果只有一臺機器測試,則看到的結果是兩臺RS服務器輪流響應
調度算法可以修改爲別的調度算法
ipvsadm -E -t 172.18.205.166:80 -s wrr(默認權重都爲1)
修改RS服務器權重
ipvsadm -e -t 172.18.205.166:80 -r 192.168.205.160:80 -w 3 -m
LVS-NAT支持端口映射:
ipvsadm -e -t 172.18.205.166:80 -r 192.168.205.160:8080 -w 3 -m
LVS-NAT實現http和https的分開調度(即在不同的集羣):
1、RS服務器上安裝mod_ssl,實現https
2、添加新的集羣
ipvsadm -A -t 172.18.205.166:443 (默認調度算法wlc)
3、添加RS服務器
ipvsadm -a -t 172.18.205.166:443 -r 192.168.205.100:443 -m
ipvsadm -a -t 172.18.205.166:443 -r 192.168.205.160:443 -m
4、客戶端訪問
curl -k https://172.18.205.166
負載均衡集羣設計時要注意的問題
(1) 是否需要會話保持
(2) 是否需要共享存儲
共享存儲:NAS, SAN, DS(分佈式存儲)
數據同步:
LVS-NAT:
設計要點:
(1) RIP與DIP在同一IP網絡, RIP的網關要指向DIP
(2) 支持端口映射
(3) Director要打開核心轉發功能