keepalive單主雙主模型的配置
一 環境:
關閉防火墻, iptables -A OUTPUT -d 224.100.120.18 -j REJECT 或添加a記錄
關閉selinux,
同步時間 timedatectl set-timezone Asia/Shanghai
間 timedatectl set-timezone Asia/Shanghai
二 步驟:
1 yum install keepalived #安裝高可用軟件
2 cd /etc/keepalived/
3 cp keepalived.conf keepalived.conf.bak #備份
4 vim keepalived.conf #編輯配置文件如下圖
5 主機的配置和備的配置一樣,只是有些地方需要保持一致。
6 systemctl restart keepalived.service 可以看到虛擬ip生效了
7 tcpdump -nn -i ens34 host 224.24.24.18 使用命令查看廣播信息
172.16.253.95 主機通過224.24.24.18向外發送vrrp廣播,vrid為1 優先級為100,字節長度為20,簡單認證方式,每隔1秒發送一次
測試宕機時的效果
1 當systemctl stop keepalived.service 主機192.168.111.1時,可以看到共用虛擬ip從master主機漂移到了備主機192.168.111.2上
當systemctl restart keepalived.service 主機192.168.111.1時,可以看到共用虛擬ip從upback主機漂移到了master主機192.168.111.1上,這master就說明了故障切回的功能。但是,vrrp默認在搶占模式,當upback的優先級高於master時,就切不回來了,upback就成了master。一般情況下不需要這樣配置upback優先級高於master,這樣搶占模式也搶不回來
三 :總結
配置好實驗環境 ,在兩臺主機上裝keepalive軟件,按要求配置一個主一個備。然後實驗查看故障時,vip是否轉移。非常簡單。因為只有他們是共用一個vip的情況下才能進行故障轉移。
環境:
如果做了單住模式配置,就先停掉兩臺機器,在逐一配置。兩臺機器,分別在同一臺上配置一主一備
1 vim keepalived.conf #編輯配置文件,如下圖 相當於增加了一臺備虛擬路由
2 當兩臺同時啟動時,可以看到master和backup的vip如圖
測試宕機時的效果
1 當停掉master主機時,查看backup主機,此時ip轉移到備份主機,如圖。因為在backup上優先級高於v1所以先獲取vip2
2 當backup主機停掉時,查看master主機,此時ip漂移到了master主機,如圖。
通知功能的實現
說明:通知功能就是當vip切換的時候發送通知。
步驟 :
1 調用腳本在到主備服務器的/etc/keepalived/這個文件夾裏,腳本名notify.sh
通知腳本的使用方式:
示例通知腳本:
#/bin/bash
contact=‘root@localhost‘
notify() {
local mailsubject="$(hostname) to be $1, vip floating"
local mailbody="$(date +‘%F %T‘): vrrp transition, $(hostname) changed to be $1"
echo "$mailbody" | mail -s "$mailsubject" $contact
}
case $1 in
master)
notify master
;;
backup)
notify backup
;;
fault)
notify fault
;;
*)
echo "Usage: $(basename $0) {master|backup|fault}"
exit 1
;;
esac
此腳本不用任何改動,直接復制粘貼即可
2 此時要註意之前設置的郵箱警報地址,以及郵件發送地址。一般都是本機。
chmod+ x notify.sh給腳本加執行權限,然後使用bash -n notify檢查語法
3 當master節點宕機時,在備節點可以收到郵件,使用mail查看 如圖
keepalive單主雙主模型的配置