溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

centos6.8 x64安裝keepalived-1.3.5+lvs

發(fā)布時(shí)間:2020-07-28 17:10:32 來源:網(wǎng)絡(luò) 閱讀:1754 作者:lcpljc 欄目:建站服務(wù)器


CentOS release 6.8 x64 (Final)2.6.32-642.4.2.el6.x86_64 安裝keepalived-1.3.5+lvs

============

一、環(huán)境安裝:

============

   1.依賴安裝

yum install -y openssl-devel libnl3-devel ipset-devel iptables-devel libnfnetlink-devel popt*
 
   增加軟連接
   ln -s /usr/src/kernels/`uname -r` /usr/src/linux

   2.5臺機(jī)器IP設(shè)置

     LVS1: 172.16.0.100

     LVS2: 172.16.0.101

      VIP: 172.16.0.150

      WEB: 172.16.0.102

      WEB2:172.16.0.103

      web3:172.16.0.104(windows客戶端IIS)

   3.關(guān)閉selinux  

   修改/etc/selinux/config文件中設(shè)置SELINUX=disabled ,然后重啟服務(wù)器

   4.關(guān)閉iptables,如果不關(guān)的話,需更具情況增加開放端口。

   #iptables -I INPUT -p tcp --dport 80 -j ACCEPT
   #iptables -I INPUT -p icmp -j ACCEPT
   #service iptables save

二、安裝步驟(在LVS1.LVS2上安裝):   

============

  1)安裝lvs管理工具

  1.tar zxvf ipvsadm-1.26.tar.gz 
  2.cd ipvsadm-1.26
  3.'make'
  4.'make install'
  5.#ipvsadm
  6.lsmod | grep ip_vs

  

  2)安裝keepalived軟件

  1. tar zxvf keepalived-1.3.5.tar.gz 
  2. cd ikeepalived-1.3.5
  3. ./configure --prefix=/usr/local/keepalived --with-init=SYSV   
  #注:(upstart|systemd|SYSV|SUSE|openrc) 
  #根據(jù)系統(tǒng)選擇對應(yīng)的啟動方式
  4. 'make'
  5. 'make install'.

  6.配置keepalived文件的路徑

     cp /usr/local/keepalived/etc/rc.d/init.d/keepalived /etc/init.d/
     cp /usr/local/keepalived/etc/sysconfig/keepalived /etc/sysconfig/
     mkdir /etc/keepalived
     cp /usr/local/keepalived/etc/keepalived/keepalived.conf /etc/keepalived/
     cp /usr/local/keepalived/sbin/keepalived /usr/sbin/

  7.配置文件(vim /etc/keepalived/keepalived.conf)

     #這里是全局定義部分

global_defs {
   notification_email {
    root@local   #設(shè)置報(bào)警郵件單個或多個地址
  
   }
   notification_email_from server@local #郵件的發(fā)送地址
   smtp_server 127.0.0.1 #smtp 地址
   smtp_connect_timeout 30 #連接smtp服務(wù)器超時(shí)的實(shí)際
   router_id LVS_ONE   #路由ID兩臺機(jī)器不能相同。LVS2更改為不同
  vrrp_skip_check_adv_addr
    # vrrp_strict  #嚴(yán)格執(zhí)行VRRP協(xié)議規(guī)范,此模式不支持節(jié)點(diǎn)單播.
    #且重啟keepalived服務(wù),會自動啟動iptables,原計(jì)劃打算關(guān)閉iptables,
    #但測試發(fā)現(xiàn),多次(通過命令service iptables stop且chkconfig iptables off,)
    #將iptables關(guān)閉后,但啟動或重啟keepalived服務(wù)后,自動又啟動起來iptables,
    #且自加了一條把VIP地址DROP掉的規(guī)則。導(dǎo)致VIP查不到,ping不通.默認(rèn)安裝時(shí)自帶配置
    #含有此選項(xiàng)。所以建議禁用此選項(xiàng)。
    vrrp_garp_interval 0
    vrrp_gna_interval 0
   
   
   
   
}
#vrrp 實(shí)例定義部分
vrrp_instance VI_1 {
    state MASTER  #keepalived 的角色 MASTER 表示主服務(wù)器。LVS2更改為:BACKUP
    interface eth0 #指定監(jiān)測網(wǎng)卡
    virtual_router_id 51 #虛擬路由標(biāo)示,相同實(shí)例,需相同標(biāo)示。
    priority 150 #優(yōu)先級 數(shù)字越大 優(yōu)先級越高 MASTER的優(yōu)先級高于BACKUP優(yōu)先級(如master 150,backup 100)
    advert_int 1 #設(shè)定主備之間檢查時(shí)間 單位s
    authentication {  #設(shè)定驗(yàn)證類型和密碼
        auth_type PASS
        auth_pass 1111
    }
    virtual_ipaddress { #設(shè)定虛擬IP地址 可以設(shè)置多個 每行一個
       172.16.0.150/24 brd 172.16.0.255 dev eth0 label eth0:0 
    }
}
#虛擬服務(wù)器部分
virtual_server 172.16.0.150 80 {
    delay_loop 6 #設(shè)定運(yùn)行情況檢查時(shí)間 單位s
    lb_algo rr #負(fù)載調(diào)度算法 rr即輪叫算法
    lb_kind DR #設(shè)置LVS負(fù)載機(jī)制 NAT TUN DR 三種模式可選
    persistence_timeout 0  #會話時(shí)間
                            #會話保持在某個服務(wù)節(jié)點(diǎn)
                            #用戶在動態(tài)頁面50s內(nèi)沒有任何動作,那么后面就會被分發(fā)到其他節(jié)點(diǎn)
                            #用戶一直動作,不受50s限制
    protocol TCP  #使用協(xié)議
    #以下為real_server部分
    real_server 172.16.0.102 80 {
        weight 1  #服務(wù)節(jié)點(diǎn)權(quán)值,數(shù)字越大,權(quán)值越高
                  #權(quán)值的大小可以為不同性能的服務(wù)器分配不同的負(fù)載
                  #這樣才能有效合理的利用服務(wù)器資源
        TCP_CHECK {  #狀態(tài)檢查部分    
          connect_timeout 3 #3s無響應(yīng)超時(shí)                                                     
          nb_get_retry 3  #重試次數(shù)
          delay_before_retry 3   #重試間隔
          connect_port 80 #連接端口                                                    
        }  
    }
    real_server 172.16.0.103 80 {
        weight 1  
        TCP_CHECK {  
          connect_timeout 3                                                  
          nb_get_retry 3  
          delay_before_retry 3   
          connect_port 80                                                 
        }  
    }
     real_server 172.16.0.104 80 {
        weight 1  
        TCP_CHECK {     
          connect_timeout 3                                                   
          nb_get_retry 3  
          delay_before_retry 3   
          connect_port 80                                                     
        }  
    }
}

三、客戶端設(shè)置(web1,web2配置)

   1.增加啟動關(guān)閉腳本,并chmod執(zhí)行權(quán)限

 

 #!/bin/bash  
#   
# Script to start LVS DR real server.   
# description: LVS DR real server   
#   
.  /etc/rc.d/init.d/functions
VIP=172.16.0.150 #修改相應(yīng)的VIP  
host=`/bin/hostname`
case "$1" in  
start)   
       # 啟動 LVS-DR 模式,real server on this machine. 關(guān)閉ARP沖突檢測。
        /sbin/ifconfig lo down   
        /sbin/ifconfig lo up   
        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
        /sbin/ifconfig lo:0 $VIP broadcast $VIP netmask 255.255.255.255 up  
        /sbin/route add -host $VIP dev lo:0
;;  
stop)
        #停止LVS-DR real server loopback device(s).  
        /sbin/ifconfig lo:0 down   
        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
;;  
status)
        # Status of LVS-DR real server.  
        islothere=`/sbin/ifconfig lo:0 | grep $VIP`   
        isrothere=`netstat -rn | grep "lo:0" | grep $VIP`   
        if [ ! "$islothere" -o ! "isrothere" ];then   
            # Either the route or the lo:0 device   
            # not found.   
            echo "LVS-DR real server Stopped!"   
        else   
            echo "LVS-DR real server Running..."   
        fi   
;;   
*)   
            # Invalid entry.   
            echo "$0: Usage: $0 {start|status|stop}"   
            exit 1   
;;   
esac

  2.增加web http服務(wù),使用80端口可以打開網(wǎng)站。

  3.測試服務(wù)器相互之間是否可以PING通。

  4.windows客戶端增加VIP事項(xiàng)(web3機(jī)器):

  win2003地址設(shè)置方法:控制面板->添加硬件->添加新的硬件->手動安裝硬件-》網(wǎng)絡(luò)適配器

  centos6.8 x64安裝keepalived-1.3.5+lvs

  重命名為VIP,增加IP地址172.16.0.104,掩碼255.255.255.0

  打開regedit,編輯:subnetMask為255.255.255.255

      HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Tcpip\Parameters\Interfaces

  centos6.8 x64安裝keepalived-1.3.5+lvs

  

  Win2008地址設(shè)置方法:控制面板-硬件和打印機(jī)->新增硬件

  找到新增的環(huán)回連接,重命名為VIP, 右鍵VIP連接屬性,開始設(shè)置TCP/IP

        172.16.0.104  255.255.255.255.255 保存

        運(yùn)行CMD執(zhí)行:

    netsh interface ipv4 set interface "VIP" weakhostreceive=enabled
    netsh interface ipv4 set interface "VIP" weakhostsend=enabled
    netsh interface ipv4 set interface "LAN" weakhostreceive=enabled
    netsh interface ipv4 set interface "LAN" weakhostsend=enabled

 

四、測試檢查keepalived+lvs問題

   

   1、 查看系統(tǒng)日志 /var/log/messages 

   2、 檢查負(fù)載均衡器的網(wǎng)絡(luò)連通狀況(ping命令或arping)。

   3、 檢查 keepalived 的運(yùn)行情況。ps -aux | grep keepalived查看是否進(jìn)程啟動。lsmod | grep ip_vs,檢查ipvs 模塊是否被加載到系統(tǒng)的內(nèi)核,vip 是否被綁定到網(wǎng)絡(luò)接口,ipvsadm 是否有輸出。

   4、 檢查 keepalived 的配置文件書寫是否正確。

   5、 檢查負(fù)載均衡器是否啟用防火墻規(guī)則。

   6、 realserver的web是否正常

  

推薦文檔:http://www.keepalived.org/pdf/sery-lvs-cluster.pdf


向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI