CentOS 6.3下部署LVS(NAT)+keepalived實現高效能高可用負載平衡

來源:互聯網
上載者:User

一、簡介

VS/NAT原理圖:

二、系統內容

實驗拓撲:

系統平台:CentOS 6.3

Kernel:2.6.32-279.el6.i686

LVS版本:ipvsadm-1.26

keepalived版本:keepalived-1.2.4

三、安裝

0、安裝LVS前系統需要安裝popt-static,kernel-devel,make,gcc,openssl-devel,lftp,libnl*,popt*

1、在兩台Director Server上分別配置LVS+Keepalived

LVS install -------------

[root@CentOS-LVS_MASTER ~]# wget http://www.linuxvirtualserver.org/software/kernel-2.6/ipvsadm-1.26.tar.gz

[root@CentOS-LVS_MASTER ~]# ln -s /usr/src/kernels/2.6.32-279.el6.i686//usr/src/linux/

[root@CentOS-LVS_MASTER ~]# tar zxvf ipvsadm-1.26.tar.gz

[root@CentOS-LVS_MASTER ~]# cd ipvsadm-1.26

[root@CentOS-LVS_MASTER ipvsadm-1.26]# make && make install

Keepalived install -------------

[root@CentOS-LVS_MASTER ~]# wget http://www.keepalived.org/software/keepalived-1.2.4.tar.gz

[root@CentOS-LVS_MASTER ~]# tar zxvf keepalived-1.2.4.tar.gz

[root@CentOS-LVS_MASTER ~]# cd keepalived-1.2.4

[root@CentOS-LVS_MASTER keepalived-1.2.4]# ./configure && make && make install

######### 將keepalived做成啟動服務,方便管理##########

[root@CentOS-LVS_MASTER ~]# cp /usr/local/etc/rc.d/init.d/keepalived /etc/init.d/

[root@CentOS-LVS_MASTER ~]# cp /usr/local/etc/sysconfig/keepalived /etc/sysconfig/

[root@CentOS-LVS_MASTER ~]# mkdir /etc/keepalived/

[root@CentOS-LVS_MASTER ~]# cp /usr/local/etc/keepalived/keepalived.conf /etc/keepalived/

[root@CentOS-LVS_MASTER ~]# cp /usr/local/sbin/keepalived /usr/sbin/

[root@CentOS-LVS_MASTER ~]# service keepalived start | stop

2、開啟路由轉寄

[root@CentOS-LVS_MASTER ~]# vim /etc/sysctl.conf
net.ipv4.ip_forward = 1
[root@CentOS-LVS_MASTER ~]# sysctl -p

3、配置Keepalived

[root@CentOS-LVS_MASTER ~]# less /etc/keepalived/keepalived.conf

! Configuration File for keepalivedglobal_defs {   router_id LVS_MASTER            #BACKUP上修改為LVS_BACKUP}vrrp_instance VI_1 {    state MASTER                   #BACKUP上修改為BACKUP    interface eth0    virtual_router_id 51    priority 100                   #BACKUP上修改為80    advert_int 1    authentication {        auth_type PASS        auth_pass 1111    }    virtual_ipaddress {        10.0.0.227    }}vrrp_instance LAN_GATEWAY {    state MASTER                   #BACKUP上修改為LVS_BACKUP    interface eth1    virtual_router_id 52    priority 100                   #BACKUP上修改為80    advert_int 1    authentication {        auth_type PASS        auth_pass 1111    }    virtual_ipaddress {        192.168.10.10    }}virtual_server 10.0.0.227 80 {    delay_loop 6    lb_algo rr    lb_kind NAT#   persistence_timeout 5    protocol TCP    real_server 192.168.10.4 80 {        weight 3        TCP_CHECK {            connect_timeout 3            nb_get_retry 3            delay_before_retry 3            connect_port 80        }    }        real_server 192.168.10.5 80 {        weight 3        TCP_CHECK {            connect_timeout 3            nb_get_retry 3            delay_before_retry 3            connect_port 80        }    }}

BACKUP伺服器同上配置,先安裝lvs再安裝keepalived,然後配置/etc/keepalived/keepalived.conf,只需將批註部分改一下即可。

4、分別在2台Real Server上面設定網關

把網關都設定成:192.168.10.10

5、在2台RealServer中分別配置HTTP

[root@WEB1 ~]# yum -y install httpd
[root@WEB1 ~]# cd /var/www/html/
[root@WEB1 html]# cat index.html
<h1>WEB1/192.168.10.4</h1>
[root@WEB1 html]# /etc/init.d/httpd start
另一台機器配置一樣,過程略。

6、分別在CentOS-LVS_MASTER、CentOS-LVS_BACKUP上執行service keepalived start啟動keepalived就可實現負載平衡及高可用叢集了;

[root@CentOS-LVS_MASTER keepalived]# service keepalived start

四、測試

####高可用性測試####

類比故障,將CentOS-LVS_MASTER上的keepalived服務停掉,然後觀察CentOS-LVS_BACKUP上的日誌,資訊如下

從日誌中可知,主機出現故障後,備機立刻檢測到,此時備機變為MASTER角色,並且接管了主機的虛擬IP資源,最後將虛擬IP綁定在etho裝置上。

將CentOS-LVS_MASTER 上的keepalived服務開啟後,CentOS-LVS_BACKUP的日誌狀態。

從日誌可知,備機在檢測到主機重新恢複正常後,釋放了虛擬IP資源重新成為BACKUP角色

####故障切換測試####

故障切換是測試當某個節點出現故障後,Keepalived監製模組是否能及時發現然後屏蔽故障節點,同時將伺服器轉移到正常節點來執行。

將WEB2節點服務停掉,假設這個節點出現故障,然後主、備機日誌資訊如下

從以上可以看出,Keepalived監控模組檢測到192.168.10.5這台主機出現故障後,將WEB2從叢集系統中剔除掉了。 此時訪問http://10.0.0.227隻能看到WEB1了)

重新啟動WEB2節點的服務,日誌資訊如下:

Keepalived監控模組檢測到192.168.10.5這台主機恢複正常後,又將此節點加入叢集系統中,再次訪問就可以訪問到WEB2頁面了)

 

 

RHEL 5.4下部署LVS(DR)+keepalived實現高效能高可用負載平衡

http://www.cnblogs.com/mchina/archive/2012/05/23/2514728.html

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.