keepalived配置雙機冗餘功能

Keepalived實現雙機熱備

一、工作原理

首先有一個虛擬ip暴露給客戶端,虛擬ip對應的mac地址爲一臺真實服務器,即用戶向虛擬ip發送一個請求,該請求會被分發到真實服務器上。

現在有2臺真實服務器,一臺master,一臺backup,master和backup上都運行着keepalived,當master掛了的時候,backup檢測之後,自己成爲master,且arp緩存虛擬ip對應的mac地址將變爲backup的mac地址,這樣請求虛擬ip的報文會被髮送到backup。

架構圖如下:

wKiom1arPGCRI88fAAB-Cp9f34g933.png

二、安裝環境規劃:

主機:192.168.1.171

備機:192.168.1.172

虛擬ip:192.168.1.173

操作系統:RedHat Enterprise Linux 6.5 x86_64

三、操作系統安裝

操作系統安裝過程網上安裝文檔較多,此過程省略。

3.1 配置/etc/hosts文件

分別在master和slaver主機寫入

#vim /etc/hosts

192.168.1.171 rhelha01.site

192.168.1.172 rhelha02.site

wKiom1arPIKCbUTvAABhwkfJtsM497.png

3.2 Master/slaver分別配置防火牆

關閉防火牆

#serviceiptables stop

#vim/etc/selinux/config

SELINUX=disabled

wKiom1arPM2xgpZXAAA6mkDDhUI941.png

3.3 配置RHEL6.5本地鏡像yum源

利用RHEL6.5操作系統光盤製作一個本地yum源,具體配置步驟如下:

3.3.1 爲本地鏡像創建掛載目錄

#mkdir /media/mnt

3.3.2掛載DVD至本地新建目錄

#mount /dev/cdrom /media/mnt

3.3.3 備份yum源配置文件

#cp /etc/yum.repos.d/rhel-source.repo/etc/yum.repos.d/rhel-source.repo.backup

3.3.4 修改yum源配置文件

#vim /etc/yum.repos.d/rhel-source.repo

刪除原有內容,添加如下:

[RHEL-Source]
name=local ios
baseurl=file:///media/mnt/
enabled=1
gpgcheck=0
gpgkey=file:///media/mnt/RPM-GPG-KEY-redhat-release

3.3.5清除舊的緩存數據

yum clean all

yum makecache

yum list

3.3.6配置本地yum源完成

四、keepalived安裝:

下載:keepalived-1.2.16.tar.gz

http://www.keepalived.org/download.html

4.1 開始安裝

tar zxf keepalived-1.2.16.tar.gz

cd keepalived-1.2.16

#./configure --disable-fwmark--prefix=/usr/local/keepalived

#make && make install

4.2 配置文件整理:

mkdir/etc/keepalived/

cp/usr/local/keepalived/etc/keepalived/keepalived.conf /etc/keepalived/

cp/usr/local/keepalived/etc/rc.d/init.d/keepalived /etc/init.d/

cp /usr/local/keepalived/etc/sysconfig/keepalived/etc/sysconfig/

ln -s/usr/local/keepalived/sbin/keepalived /sbin/

4.3 修改master配置文件:

vi /etc/keepalived/keepalived.conf

###############################################

Maste! Configuration File forkeepalived

global_defs {

notification_email {

[email protected]

[email protected]

[email protected]

}

notification_email_from [email protected]

smtp_server 192.168.200.1

smtp_connect_timeout 30

router_id LVS_DEVEL

}

vrrp_instance VI_1 {

state MASTER

interface eth0

virtual_router_id 51

priority 100

advert_int 1

authentication {

    auth_typePASS

    auth_pass1111

}

virtual_ipaddress {

    192.168.1.173

}

}

######################################################

4.4 修改slaver配置文件

vi /etc/keepalived/keepalived.conf

Backup 和master一樣,只要修改如下地方:

vrrp_instance VI_1 {

state BACKUP

interface eth0

virtual_router_id 51

priority 99 # 這裏改爲99,master優先級是100

advert_int 1

authentication {

    auth_typePASS

    auth_pass1111

}

virtual_ipaddress {

    192.168.1.173

}

}

五、keepalived管理命令

停止

service keepalived stop

啓動

service keepalived start

重啓

service keepalived restart

查看狀態

service keepalived status

六、測試

6.1 在本機上查看虛擬ip狀態

ip add

6.2 在同一網段的其他機器上查詢arp緩存

#arp -a

wKioL1arPXaTZxyFAAA7G1DiLn8272.png

這裏的1.73對應的mac地址6a:c7(即master的MAC地址)。

6.3 停掉master的master網絡/keepalived

#servicekeepalived stop

wKioL1arPaDhduHwAAAOd2N85_c656.png

在同一網段的其他機器上查詢arp緩存

#arp �a

wKiom1arPXKiRnuWAAA9H3T21nI380.png

發現1.173的mac地址已經變爲5a:7c(即slave的mac地址)。

在同一網段的其他機器上,測試連接1.173,發現成功切換到ha02(1.172)主機。

wKiom1arPY7h6QfNAABB4tAmM9o277.png

6.4 重啓master網絡/keepalived服務

wKioL1arPg2gPhiJAABCK06ecY4865.png

arp -a

wKiom1arPgqydfQCAAAz-qEx4Bc687.png

這裏的1.73重新對應的mac地址6a:c7(即master的MAC地址)。

wKiom1arPijA0QnHAAA9jvsviKE740.png

在同一網段的其他機器上,測試連接1.173,發現成功切換到ha01(1.171)主機。

那麼主備雙機熱備就完成了!

七、測試http服務

7.1 (master/slave)分別安裝http服務:

#cd/media/mnt/Packages/

#yum install -yhttpd*

#service httpdstart

#chkconfighttpd on

7.2 創建測試頁面

Master:

#echo"redhat-ha-master-server01">>/var/www/html/index.html

Slaver:

#echo"redhat-ha-master-server02">>/var/www/html/index.html

7.3 Master正常情況訪問測試

wKioL1arPo7xruKOAABLUFKUtRM128.png

7.4 Master宕機或者keepalived服務異常

wKiom1arPmCwt4mwAAA0WLgV6nQ729.png

wKioL1arPsHjwFrNAABR9vgvQvc421.png

可以看到服務已經由redhat-ha-master-server01自動轉換至redhat-ha-master-server02.

八、總結

1.master主機掛了,或者master 上keepalived掛了之後,可以切換到slave

2.在主機宕機或斷網後可能需要重啓keepalived服務。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章