RHEL6.5 + Keepalived 實現雙機熱備

 

RHEL6.5 + Keepalived 實現雙機熱備

 

 

 

 

 

 

 


 

目錄:

一、工作原理................................................................................................................... 2

二、安裝環境規劃:........................................................................................................ 2

三、操作系統安裝.......................................................................................................... 3

3.1 配置/etc/hosts文件........................................................................................ 3

3.2 Master/slaver分別配置防火牆........................................................................ 3

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

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

3.3.2 掛載DVD至本地新建目錄......................................................................... 4

3.3.3 備份yum源配置文件................................................................................ 4

3.3.4 修改yum源配置文件................................................................................ 4

3.3.5 清除舊的緩存數據................................................................................... 5

3.3.6 配置本地yum源完成................................................................................ 5

四、keepalived安裝:.................................................................................................... 5

4.1 開始安裝.......................................................................................................... 5

4.2 配置文件整理:................................................................................................ 5

4.3 修改master配置文件:.................................................................................... 6

4.4 修改slaver配置文件....................................................................................... 7

五、keepalived管理命令................................................................................................. 8

六、測試.......................................................................................................................... 8

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

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

6.3 停掉master的master網絡/keepalived........................................................... 9

6.4 重啓master網絡/keepalived服務................................................................. 10

七、測試http服務......................................................................................................... 11

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

7.2 創建測試頁面................................................................................................. 11

7.3 Master正常情況訪問測試............................................................................... 11

7.4 Master宕機或者keepalived服務異常............................................................ 12

八、總結........................................................................................................................ 12

 

 

 

 

 

 

 

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

wKioL1arPUejfj9cAAHKfUWAtKE471.jpg

 

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服務。


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