天天看點

keepalived基于LVS實作高可用,實作web服務的高可用

VRRP:Virtual Routing Redundent Protocal   虛拟路由備援協定;能夠将兩個路由裝置組織成一個虛拟路由;将多台

實體裝置組合成一台虛拟路由

keepalived中的路由裝置有兩種工作模式:

                               搶占模式

                   非搶占模式

VRRP的主要目的:實作網關位址的漂移

現在流行的版本:VRRPv2 ARRPv3

一個備份組中,有一個主,master,多個從,slave

常用的是一主一從;當然可以實作一主多從的

master:

    選舉協定

一主多從的工作機制:

優先級:1-254

在VRRP中,每一個虛拟路由組都有路由組ID

VRRP的工作機制:

例子:當有三個路由器時:假如為Virtual router1 ,Virtual router2,Virtual router3

可以實作三個虛拟路由組:

1、Virtual router1為主,Virtual router2,Virtual router3為從

2、Virtual router2為主,Virtual router1,Virtual router3為從

3、Virtual router3為主,virtual router1,Virtual router3為從

如圖所示:

VRRP主要是實作位址漂移的

備份組;master   slave

在一個實體裝置上,可以配置多個組,靠組ID來差別不同的組

keepalived設計的最初目的就是為LVS提供高可用功能的;屬于多程序的工作模型

keepalived的功能:

            将IP位址轉移到另一個節點上

轉移ipvs規則(在另一個節點上重新生成并啟動ipvs規則)

健康狀況檢查

keepalived:

    IP:VRRP

    lvs

    health check

keepalived以VRRP的方式工作

在keepalived中:

       --enable-vrrp要啟用起來

--disabled-snmp要禁用

vrrp_instance:定義虛拟路由

安裝keepalived實作高可用功能:

1、準備兩個節點,在這兩個節點上安裝keepalived

從ftp上下載下傳keepalived-1.2.7-5.el5.i386.rpm

然後安裝:

# yum -y --nogpgcheck localinstall keepalived-1.2.7-5.el5.i386.rpm

keepalived基于LVS實作高可用,實作web服務的高可用

好了,安裝完成

2、實作LVS高可用

準備兩個RS

使用RS腳本實作

把VIP改成所需要的IP

keepalived基于LVS實作高可用,實作web服務的高可用

給一個執行權限;

# chmod +x startrs.sh

# ./startrs.sh

然後把腳本傳遞給另一個節點,其過程一樣;

配置realserver

改配置檔案:

改之前,如圖:

改之後,如圖:

修改URL,狀态碼,等等,修改前如圖:

keepalived基于LVS實作高可用,實作web服務的高可用

修改後:

keepalived基于LVS實作高可用,實作web服務的高可用

把realserver的位址改為自己需要用的位址

當然,有些修改可根據自己的需要;

另一個realserver的改法和第一個相似

把這個檔案複制到另一個節點一份:

# scp keepalived.conf node2:/etc/keepalived/

然後打開修改

改之前,如圖:

keepalived基于LVS實作高可用,實作web服務的高可用
keepalived基于LVS實作高可用,實作web服務的高可用

然後啟動keepalived,兩個都要啟動

# service keepalived start

3、實作web服務的高可用

首先先把keepalived停掉,這時就用不上realserver了,要用兩個節點

# service keepalived stop

# yum -y httpd

給兩個節點各添加一個頁面,并啟動httpd

# vim /var/www/html/index.html

# service httpd start

如圖所示可以通路:

然後配置keepalived

修改腳本名稱,修改前,如圖:

keepalived基于LVS實作高可用,實作web服務的高可用

修改後,如圖:

keepalived基于LVS實作高可用,實作web服務的高可用

然後啟動keepalived

# ifconfig

繼續閱讀