修改 LoadBalancer1 中的 Keepalived 配置文件:
vim /etc/keepalived/keepalived.conf
LoadBalancer1 作爲我們的主路由器,所以其配置文件爲:
#全局配置,在發現某個節點出故障的時候以郵件的形式通知管理員
global_defs {
notification_email { #設置報警郵件地址,可以設置多個
xxxx@localhost #每行一個,如果開啓郵件報警,需要開啓本機的 Sendmail 服務
[email protected]
}
notification_email_from root #設置郵件的發送地址
smtp_server 127.0.0.1 #設置 STMP 服務器地址
smtp_connect_timeout 30 #設置連接 SMTP 服務器的超時時間
router_id LVS_DEVEL #標識,發郵件時顯示在郵件主題中的信息
}
#配置 vrrp 實例
vrrp_instance VI_1 {
state MASTER #指定 Keepalived 角色, MASTER 表示此主機是主服務器,BACKUP 表示此主機是備用服務器
interface eth0 #指定 HA 檢測網絡的接口
virtual_router_id 51 #虛擬路由標識,這個標識是一個數字,同一個 vrrp_instance 下,MASTER 和BACKUP 必須是一致的
priority 101 #定義優先級,數字越大,優先級越高。在同一個 vrrp_instance 下,MASTER 的優先級必須大於 BACKUP 的優先級
advert_int 1 #設定 MASTER 與 BACKUP 負載均衡器之間同步檢查的時間間隔,單位是秒
authentication { #配置 vrrp 直接的認證
auth_type PASS #設定驗證類型和密碼,驗證類型分爲 PASS 和 AH 兩種
auth_pass 1111 #設置驗證密碼,在一個 vrrp_instance 下,MASTER 與 BACKUP 必須使用相同的密碼才能通信
}
virtual_ipaddress { #配置虛擬 IP,可以設置多個,每行一個
192.168.0.10
}
}
#配置虛擬服務器
virtual_server 192.168.0.10 80 { #配置虛擬服務器,需要指定虛擬 IP 地址和端口,IP 與端口用空格隔開
delay_loop 6 #設置運行情況檢查時間,單位是秒
lb_algo rr #設置負載調度算法,這裏設置爲 rr,即論叫算法
lb_kind DR #設置 LVS 實現負載均衡的機制,有 NAT,TUN,DR 三個模式可選,這裏選擇 DR
#persistence_timeout 50 會話保持時間,單位是秒,一般針對動態網頁很有用,這裏需要這個配置
protocol TCP #指定協議轉發類型,有 TCP 和 UDP 兩種。
real_server 192.168.0.4 80 { #配置 real server 的信息,服務節點1
weight 1 #配置該節點的權重,權值大小用數字表示,設置權值的大小可以分不同性能的服務器分配不同的負載,性能較低的方服務器,設置權值較低,這樣能合理地利用和分配系統資源
HTTP_GET { #設置健康檢查
url { #訪問這個地址,判斷狀態碼是否 200
path /
status_code 200
}
connect_timeout 3 #表示3秒無響應超時
nb_get_retry 3 #表示重試次數
delay_before_retry 3 #表示重試間隔
}
}
real_server 192.168.0.5 80 { #配置服務節點2
weight 1
HTTP_GET {
url {
path /
status_code 200
}
connect_timeout 3
nb_get_retry 3
delay_before_retry 3
}
}
}