日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

LVS(DR) KeepAlived On CentOS6 安裝配置說明書

 Colin收藏 2012-02-17

LVS(DR)+ KeepAlived On CentOS6 安裝配置說明書

分類: 內(nèi)存數(shù)據(jù)庫移動互聯(lián)網(wǎng)電子商務應用開發(fā)數(shù)據(jù)庫群集云計算J2EE技術Java基礎技術203人閱讀評論(0)收藏舉報

目錄

 

一、要做那些事?... 3

二、環(huán)境:... 3

三、硬件IP:... 3

四、VIP:... 3

五、注意事項:... 4

六、網(wǎng)絡結構... 4

七、Master安裝步驟:... 5

1、安裝ipvsadm 和 KeepAlived for Master. 5

2、配置keepalived for Master. 6

3、配置ipvsadm for Master. 10

八、Backup安裝步驟:... 13

九、RealServer配置步驟:... 14

十、JBoss作為LVS的WebServer:... 15

 

一、要做那些事?

1、安裝ipvsadm(Master/Backup)

2、安裝keepalived(Master/Backup)

3、配置keepalived(Master/Backup)

4、配置ipvsadm(Master/Backup)

5、配置RealServer

 

二、環(huán)境:

CentOS6 (Linux Kernel 2.6.32-71.el6.i686)

ipvsadm 1.2.4

keepalived 1.1.17

 

三、IP

Master IP:192.168.20.100

Backup IP:192.168.20.101

RealServer IP:192.168.20.102、192.168.20.100(兼)、192.168.20.101(兼)

 

四、VIP

192.168.20.99

 

五、注意事項:

CentOS6 安裝選擇開發(fā)工作站模式

防火墻都關閉(因為業(yè)務機器前端有專用的防火墻,如果沒有,那么Master也可兼)

 

六、網(wǎng)絡結構

 


七、Master安裝步驟:

1、安裝ipvsadm 和 KeepAlived for Master

[root@RServer2 soft]#mkdir /soft
[root@RServer2 soft]#cd /soft
[root@RServer2 soft]# wget http://www./software/kernel-2.6/ipvsadm-1.24.tar.gz
[root@RServer2 soft]# wget http://www./software/keepalived-1.1.17.tar.gz
[root@RServer2 soft]#ln -s /usr/src/kernels/2.6.32-71.el6.i686/ /usr/src/linux
[root@RServer2 soft]# tar -zxvf ipvsadm-1.24.tar.gz
[root@RServer2 soft]# cd ipvsadm-1.24
[root@RServer2 ipvsadm-1.24]# make;make install
[root@RServer2 ipvsadm-1.24]# cd ..
[root@RServer2 soft]# tar -zxvf keepalived-1.1.17.tar.gz
[root@RServer2 soft]# cd keepalived-1.1.17
[root@RServer2 soft]# ./configure --prefix=/usr/local/keepalived
[root@RServer2 keepalived-1.1.17]# make;make install

順利的話就這些步驟了,如果出現(xiàn)錯誤提示,那么根據(jù)具體的錯誤具體處理,一般可能出現(xiàn)的錯誤:

1)、OpenSSL,提示可能如下

!!! OpenSSL is not properly installed on your system. !!!

!!! Can not include OpenSSL headers files.

解決方案:運行yum -y installopenssl-devel

2)、提示沒有gcc編譯器

解決方案:運行yum installncurses-devel gcc gcc-c++ make rpm-build

 

2、配置keepalived for Master

[root@RServer2 keepalived-1.1.17]# cp /usr/local/keepalived/etc/rc.d/init.d/keepalived /etc/init.d/keepalived
[root@RServer2 keepalived-1.1.17]# cp /usr/local/keepalived/sbin/keepalived /usr/sbin/
[root@RServer2 keepalived-1.1.17]# cp /usr/local/keepalived/etc/sysconfig/keepalived /etc/sysconfig/
[root@RServer2 keepalived-1.1.17]# mkdir -p /etc/keepalived/
[root@RServer2 keepalived-1.1.17]# cp /usr/local/keepalived/etc/keepalived/keepalived.conf /etc/keepalived/keepalived.conf
[root@RServer2 keepalived-1.1.17]# chmod +x /etc/init.d/keepalived
 
[root@RServer2 keepalived-1.1.17]# gedit /etc/keepalived/keepalived.conf
或是
[root@RServer2 keepalived-1.1.17]# vi /etc/keepalived/keepalived.conf

keepalived.conf文件如下:

#Master服務器上的配置 /etc/keepalived/keepalived.conf
global_defs {
   notification_email {
       likx@****.com #可以多個地址
   }
   notification_email_from likx@****.com
   smtp_server 192.168.0.**
   smtp_connect_timeout 30
   router_id LVS_DEVEL
}
#監(jiān)測ipvsadm進程狀態(tài),每3秒執(zhí)行一次
vrrp_script chk_ipvsadm{
    script "/usr/local/keepalived/chk_ipvsadm.sh"
    interval 3
    weight 3
}
vrrp_instance VI_1 {
    state MASTER #標示狀態(tài)為MASTER 備份機為BACKUP
    interface eth0
    virtual_router_id 51
    priority 100   #MASTER權重要高于BACKUP 比如BACKUP為99
    advert_int 5
    mcast_src_ip 192.168.20.101 #Master服務器IP,如果是備份機請?zhí)顚憘浞輽C的IP
 
    authentication {
        auth_type PASS #主從服務器驗證方式
        auth_pass 1111
    }
    virtual_ipaddress {
        192.168.20.99 #虛擬IP
    }
}
 
#虛擬服務器 21端口的配置
virtual_server 192.168.20.99 21 {
    delay_loop 10           #(每隔10秒查詢realserver狀態(tài))
    lb_algo rr              #(lvs 算法)
    lb_kind DR              #(Direct Route)
    persistence_timeout 60 #(同一IP的連接60秒內(nèi)被分配到同一臺realserver)
    protocol TCP         #(用TCP協(xié)議檢查realserver狀態(tài))
 
    #實際服務器的IP和端口
    real_server 192.168.20.102 21 {
        weight  5
        TCP_CHECK {
            connect_timeout 10
            connect_port 21
        }
    }
 
    #實際服務器的IP和端口
    real_server 192.168.20.100 21 {
        weight  5
        TCP_CHECK {
            connect_timeout 10
            connect_port 21
        }
    }
    #實際服務器的IP和端口
    real_server 192.168.20.101 21 {
        weight  5
        TCP_CHECK {
            connect_timeout 10
            connect_port 21
        }
    } 
}
 
#虛擬服務器 80端口的配置
virtual_server 192.168.20.99 80 {
    delay_loop 6
    lb_algo rr
    lb_kind DR
    protocol TCP
 
    real_server 192.168.20.102 80 {
        weight  5
        TCP_CHECK {
            connect_timeout 10
            connect_port 80
        }
    }
 
    real_server 192.168.20.100 80 {
        weight  5
        TCP_CHECK {
            connect_timeout 10
            connect_port 80
        }
    }
 
    real_server 192.168.20.101 80 {
        weight  5
        TCP_CHECK {
            connect_timeout 10
            connect_port 80
        }
    } 
}
 

keepAlived使用方式:

/etc/init.d/keepalived start|stop|restart

/usr/local/keepalived/chk_ipvsadm.sh文件內(nèi)容如下:

#!/bin/bash
#
# author: likexi
# description:
# 定時查看ipvsadm是否存在,如果不存在則啟動ipvsadm,
# 如果啟動失敗,則停止keepalived
#
status=$(ps aux|grep ipvsadm | grep -v grep | grep -v bash | wc -l)
if [ "${status}" = "0" ]; then
        service ipvsadm start
        status2=$(ps aux|grep ipvsadm | grep -v grep | grep -v bash |wc -l)
        if [ "${status2}" = "0"  ]; then
                /etc/init.d/keepalived stop
        fi
fi
 

3、配置ipvsadm for Master

把一下內(nèi)容保存成:lvs_server.sh,并放置在/etc/init.d目錄下

#!/bin/bash
#把一下內(nèi)容保存成:lvs_server.sh
#并放置在/etc/init.d目錄下
#如果想啟動LVS Server執(zhí)行:/etc/init.d/lvs_server.sh start
#如果想停止LVS Server執(zhí)行:/etc/init.d/lvs_server.sh stop
#如果想重啟LVS Server執(zhí)行:/etc/init.d/lvs_server.sh restart
 
VIP=192.168.20.99 #虛擬IP,更具具體情況而變
#有幾個輸入幾個,與下面的配置對應,同時必須與KeepAlived.config配置對應
RIP1=192.168.20.101 #實際的服務器IP
RIP2=192.168.20.100 #實際的服務器IP
RIP2=192.168.20.102 #實際的服務器IP
. /etc/rc.d/init.d/functions # 如果提示權限不夠,那么先在命令行執(zhí)行: chmod 777 /etc/rc.d/init.d/functions
case "$1" in
 
start)
        echo "啟動LVS服務器"
          #設置虛擬IP和同步參數(shù)
          /sbin/ifconfig eth0:0 $VIP broadcast $VIP netmask 255.255.255.255 up
          echo "1" >/proc/sys/net/ipv4/ip_forward 
          #清空 IPVS的內(nèi)存數(shù)據(jù) 
          /sbin/ipvsadm -C
 
          #設置LVS
          #開啟FTP 21 端口服務,并指向RIP1和RIP2的服務器
          /sbin/ipvsadm -A -t $VIP:21 -s rr
          /sbin/ipvsadm -a -t $VIP:21 -r $RIP1:21 -g
          /sbin/ipvsadm -a -t $VIP:21 -r $RIP2:21 -g
          /sbin/ipvsadm -a -t $VIP:21 -r $RIP3:21 -g
          #開啟WEB 80 端口服務,并指向RIP1和RIP2的服務器
          /sbin/ipvsadm -A -t $VIP:80 -s rr
          /sbin/ipvsadm -a -t $VIP:80 -r $RIP1:80 -g
          /sbin/ipvsadm -a -t $VIP:80 -r $RIP2:80 -g
          /sbin/ipvsadm -a -t $VIP:80 -r $RIP3:80 -g
          #運行LVS
          /sbin/ipvsadm -ln
          ;;
stop)
       echo "關閉LVS服務器"
       echo "0" >/proc/sys/net/ipv4/ip_forward
       /sbin/ipvsadm -C
       /sbin/ifconfig eth0:0 down
       ;;
 
restart)
       echo "關閉LVS服務器"
       echo "0" >/proc/sys/net/ipv4/ip_forward
       /sbin/ipvsadm -C
       /sbin/ifconfig eth0:0 down
 
      echo "啟動LVS服務器"
      #設置虛擬IP和同步參數(shù)
      /sbin/ifconfig eth0:0 $VIP broadcast $VIP netmask 255.255.255.255 up
      echo "1" >/proc/sys/net/ipv4/ip_forward 
      #清空 IPVS的內(nèi)存數(shù)據(jù) 
      /sbin/ipvsadm -C
 
      #設置LVS
      #開啟FTP 21 端口服務,并指向RIP1和RIP2的服務器
      /sbin/ipvsadm -A -t $VIP:21 -s rr
      /sbin/ipvsadm -a -t $VIP:21 -r $RIP1:21 -g
      /sbin/ipvsadm -a -t $VIP:21 -r $RIP2:21 -g
      /sbin/ipvsadm -a -t $VIP:21 -r $RIP3:21 -g
      #開啟WEB 80 端口服務,并指向RIP1和RIP2的服務器
      /sbin/ipvsadm -A -t $VIP:80 -s rr
      /sbin/ipvsadm -a -t $VIP:80 -r $RIP1:80 -g
      /sbin/ipvsadm -a -t $VIP:80 -r $RIP2:80 -g
      /sbin/ipvsadm -a -t $VIP:80 -r $RIP3:80 -g
      #運行LVS
      /sbin/ipvsadm -ln
      ;;
*)
       echo "Usage: $0 {start|stop}"
       exit 1
esac
 

/etc/init.d/lvs_server.sh使用方法

[root@RServer2 ~]# chmod 777 /etc/init.d/lvs_server.sh
[root@RServer2 ~]# chmod 777 /etc/rc.d/init.d/functions
[root@RServer2 ~]# /etc/init.d/lvs_server.sh start|stop|restart
 

到這里為止,Master配置完成。

八、Backup安裝步驟:

Backup的安裝和Master的安裝基本一致,只是一些參數(shù)略有變化。

變化的參數(shù)為止如下:

1、keepalived.conf文件中

原:state MASTER #標示狀態(tài)為MASTER 備份機為BACKUP
state BACKUP  #標示狀態(tài)改為BACKUP
 
原:priority 100   #MASTER權重要高于BACKUP 比如BACKUP為99
priority 99   #MASTER權重要高于BACKUP,MASTER為100,那么BACKUP略小于,比如99
 
原:mcast_src_ip 192.168.20.101 #Master服務器IP,如果是備份機請?zhí)顚憘浞輽C的IP
mcast_src_ip 192.168.20.100  #換成BACKUP服務器IP

九、RealServer配置步驟:

RealServer只需要在root目錄下創(chuàng)建lvs_real_server.sh文件,并執(zhí)行他一遍即可,lvs_real_server.sh的文件內(nèi)容如下:

#!/bin/bash
#把一下內(nèi)容保存成:lvs_real_server.sh
#并放置在root目錄下
#如果想啟動real Server執(zhí)行:/root/lvs_real_server.sh start
#如果想停止real Server執(zhí)行:/root/lvs_real_server.sh stop
 
CLUSTER_VIP=192.168.20.99 #虛擬IP,更具具體情況而變
. /etc/rc.d/init.d/functions # 如果提示權限不夠,那么先在命令行執(zhí)行: chmod 777 /etc/rc.d/init.d/functions
case "$1" in
start)
       /sbin/ifconfig lo:0 $CLUSTER_VIP netmask 255.255.255.255 broadcast $CLUSTER_VIP
       /sbin/route add -host $CLUSTER_VIP dev lo:0
       echo "1" >/proc/sys/net/ipv4/conf/lo/arp_ignore
       echo "2" >/proc/sys/net/ipv4/conf/lo/arp_announce
       echo "1" >/proc/sys/net/ipv4/conf/all/arp_ignore
       echo "2" >/proc/sys/net/ipv4/conf/all/arp_announce
       sysctl -p >/dev/null 2>&1
       echo "真實服務器啟動....." 
       ;;
stop)
       /sbin/ifconfig lo:0 down
       /sbin/route del $CLUSTER_VIP >/dev/null 2>&1
       echo "0" >/proc/sys/net/ipv4/conf/lo/arp_ignore
       echo "0" >/proc/sys/net/ipv4/conf/lo/arp_announce
       echo "0" >/proc/sys/net/ipv4/conf/all/arp_ignore
       echo "0" >/proc/sys/net/ipv4/conf/all/arp_announce
       echo "真實服務器停止....."
       ;;
*)
       echo "Usage: $0 {start|stop}"
       exit 1
esac
 

/root/lvs_real_server.sh使用方法

[root@RServer2 ~]# chmod 777 /root/lvs_real_server.sh
[root@RServer2 ~]# chmod 777 /etc/rc.d/init.d/functions
[root@RServer2 ~]# /root/lvs_real_server.sh start|stop|restart

十、JBoss作為LVS的WebServer:

Jboss作為LVS的WebServer時需要做一些簡單的配置

對于standalone運行模式的Jboss,只需在standalone.xml配置文件添加如下內(nèi)容:

<interfaces>
        <interface name="management">
            <inet-address value="${jboss.bind.address.management:192.168.20.101}"/>
        </interface>
        <interface name="public">
           <inet-address value="${jboss.bind.address:192.168.20.99}"/>
        </interface>
<interface name="any">
           <any-address/>
        </interface>
    </interfaces>
 
default-interface="any">
        <socket-binding name="http" port="80"/>
        <socket-binding name="https" port="443"/>
        <socket-binding name="jmx-connector-registry" interface="management" port="1090"/>
        <socket-binding name="jmx-connector-server" interface="management" port="1091"/>
        <socket-binding name="jndi" port="1099"/>
        <socket-binding name="osgi-http" interface="management" port="8090"/>
        <socket-binding name="remoting" port="4447"/>
        <socket-binding name="txn-recovery-environment" port="4712"/>
        <socket-binding name="txn-status-manager" port="4713"/>
    </socket-binding-group>

十一、LVS群集系統(tǒng)維護命令:

1、ipvsadm維護

啟動:/etc/init.d/lvs_server.sh start
停止:/etc/init.d/lvs_server.sh stop
重啟:/etc/init.d/lvs_server.sh restart

2、keepAlived維護

啟動:/etc/init.d/keepAlived start
停止:/etc/init.d/keepAlived stop
重啟:/etc/init.d/keepAlived restart

3、real server 維護

啟動:/etc/init.d/lvs_real_server.sh start
停止:/etc/init.d/lvs_real_server.sh stop

4、Jboss維護

后臺運行模式:/jboss/bin/standalone.sh & 
              exit(退出控制臺,但是Jboss繼續(xù)運行)
前臺運行模式:/jboss/bin/standalone.sh
關閉Jboss:ps aux | grep jboss
            kill 對應的線程號

    本站是提供個人知識管理的網(wǎng)絡存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權內(nèi)容,請點擊一鍵舉報。
    轉藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多