作用:
健康檢查對企業而言也是由為重要,在生活中,有時候訪問網頁訪問不到,就會跳出來一些圖形告訴你訪問失敗,這就是健康檢查的作用,當服務器都掛掉的時候,告訴你暫時訪問不了。
ldirectord是后端做檢查的一個工具。
服務搭建:
1 . 調度器yum源設置,添加高可用部分
[HighAvailability]
name=HighAvailability
baseurl=http://192.168.13.250/rhel7/addons/HighAvailability
gpgcheck=0
2 . 下載lvs管理工具ipvsadm
yum install ipvsadm -y # 安裝工具
3 . 下載ldirectord安裝包并進行安裝
安裝包可以網上進行下載
yum install ldirectord-3.9.5-3.1.x86_64.rpm -y # 安裝軟件
4 設置ldirectord配置文件
cp /usr/share/doc/ldirectord-3.9.5/ldirectord.cf /etc/ha.d/ # 復制過來配置文件
checktimeout=3 #后端服務器健康檢查等待時間
checkinterval=1 #兩次檢查間隔時間
autoreload=yes #自動添加或者移除真實服務器
quiescent=no #故障時移除服務器的時候中斷所有連接virtual=192.168.13.100:80 VIPreal=192.168.13.112:80 gate real=192.168.13.113:80 gate 添加真實服務器fallback=127.0.0.1:80 gate 兩個rs都掛了,就訪問調度器自己的80端service=http 指定服務scheduler=rr 指定調度算法#persistent=600#netmask=255.255.255.255protocol=tcp 端口checktype=negotiate 健康檢查方式checkport=80 檢查的端口
改好之后啟動服務
systemctl start ldirectord
systemctl enable ldirectord
5 . 調度器以及真實服務器添加VIP
ip addr add 192.168.13.100/24 dev ens33
6 . 調度器安裝httpd服務
同時配置文件中指定,調度器本機作為一個備用服務器,所以本機也需要安裝httpd服務并且設置共享頁面。
如果客戶訪問的是本機的服務,說明所有的后端服務器都已經癱瘓
7 . 所有的真實服務器設置arptable策略
yum install arptables -y # 安裝管理工具
arptables -A INPUT -d 192.168.13.100 -j DROP # 設置不回應對自己VIP的請求
arptables -A OUTPUT -s 192.168.13.100 -j mangle --mangle-ip-s 192.168.13.112
測試:
1 當啟動Ldirectord 之后,該服務會根據后端服務器的健康情況以及配置文件中設置好的自動身成負載均衡策略:
客戶端訪問測試
2 . 關閉真實服務器的httpd服務,
systemctl stop httpd
查看調度器策略,已經將該異常服務器移除
客戶端測試:只能訪問到正常的后端服務器
當異常的后端服務器恢復正常的時候,調度器會根據恢復情況自動添加該服務器
systemctl start httpd
客戶端測試:
3 關閉所有的后端服務器,測試時候會啟動本機作為備用的服務
查看調度器的策略:
客戶端測試:將訪問本機的服務內容