DR的HA實際上是經過VRRP來實現的算法
在Linux上實現VRRP功能的程序叫作keepalived,keepalived可以根據配置文件中的定義自動生成ipvs規則,並可以對各RS的健康狀態進行檢測。keepalived也支持vrrp_script,keepalived利用vrrp_scripts完成輔助的其餘高可用的功能,keepalived利用vrrp_track調用vrrp_script完成vrrp_script對服務的跟蹤後端
安裝keepalived程序服務器
如今這樣規劃 10.0.1.11和12 是DR真實IP 10.0.1.13是VRRP虛IP負載均衡
先設置主VRRP的運行參數ide
開啓主DR的keepalived的服務oop
systemctl start keepalived.service
測試
notification_email 通告給誰server
notification_email_from 用哪一個郵箱通告圖片
smtp_server 指定郵件服務器ip
RID 這個參數兩個DR須要一致
vrrp_garp_interval 免費ARP的通告間隔用於IPV4
vrrp_gna_interval 免費NA的通告間隔用於IPV6
再設置備DR的VRRP參數
爲了讓VRRP狀態切換更直觀一些,咱們來作個郵件通知腳本
郵件腳本調用位置
測試效果
定義虛擬主機
delay_loop 定義服務輪詢時間
lb_kind 定義部署模式
persistence_timeout 會話保持時間
lb_algo 負載均衡算法 調度算法
HTTP_GET是檢測後端服務器是否正常
nb_get_retry 嘗試次數
connect_timeout 每次嘗試的超時時間
delay_before_retry 每次嘗試的時間間隔
從新啓動keepalived而後查看ipvsadm -Ln
ipvsadm會本身從keepalived的配置文件中讀取相關信息並自動添加虛擬服務以及真實服務器信息
客戶端測試
如今把DR1失效再測試
仍是能夠正常訪問
再加個小功能 Sorry_server
當後端服務器都失效了,keepalived能夠將用戶請求發送到指定服務器,由臨時服務器響應客戶請求
用戶端測試