高可用+LVS
heartbeat由兩個主機(節點組成),通過整合高可用heartbeat與LVS中的VS解決單點故障與負載均衡問題。
LVS沒有後臺健康檢查機制,通過ldirectord調度策略進行管控,即有了後臺健康檢查機制。
整合server1與server4爲高可用通過heartbeat解決VS的單點故障問題
集羣的資源交由集羣負責(此次集羣資源:vip,httpd,ld)
ldirectord
ldirectord安裝包:
ldirectord-3.9.5-3.1.x86_64.rpm
rpm -ivh ldirectord-3.9.5-3.1.x86_64.rpm ##安裝時若出現依賴性可通過yum install解決
配置
server1:
cp /usr/share/doc/ldirectord-3.9.5/ldirectory.cf /etc/ha.d/ldirectory.cf
vim /etc/ha.d/ldirectory.cf
virtual=172.25.36.100:80
real=172.25.36.2:80 gate ##管控36.2和36.3的健康檢查
real=172.25.36.3:80 gate
fallback=127.0.0.1:80 gate ##若兩臺RS停止服務則由本機接管
service=http ##通過http進行
scheduler=rr ##調度器爲輪詢rr模式
#persistent=600
#netmask=255.255.255.255
protocol=tcp ##協議tcp
checktype=negotiate ##檢查模式協商
checkport=80 ##檢查端口爲80
request="index.html"
#receive="Test Page"
#virtualhost=www.x.y.z
/etc/init.d/ldirectord.cf start
測試:
- 主機:curl 172.25.60.100
- server2:
/etc/init.d/httpd stop
在真機上curl 172.25.36.100,查看是否有健康檢查
curl 172.25.36.100
3. server2,server3:
/etc/init.d/httpd stop真機:curl 172.25.60.100,因爲兩臺RS停止運行服務,ld會訪問本機(VS)的界面
heartbeat+LVS+ldirectord
heartbeat與lvs
- heartbeat配置詳見:heartbeat
- lvs配置詳見:lvs(Linux Virtual Server)
ldirectory配置整合
server1與server4兩臺heartbeat主備機:
vim /etc/ha.d/haresources
server1 IPaddr::172.25.36.100/24/eth0 httpd ldirectord ##集羣資源加入ldirectord健康檢測
scp haresources ldirectord.cf root@172.25.36.4:/etc/ha.d/
/etc/init.d/heartbeat restart
測試:
- 真機:curl 172.25.36.100
- 熱備測試
server1:
/etc/init.d/heartbeat stop
真機:curl 172.25.36.100(得到結果mac地址已從server1的變爲server4備機的地址)