真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網站制作重慶分公司

【轉載】IPVS-DR+HA+ldirectord高可用負載均衡集群-創(chuàng)新互聯(lián)

實驗平臺:virtualbox 4.12

創(chuàng)新互聯(lián)專注于企業(yè)營銷型網站建設、網站重做改版、拉薩網站定制設計、自適應品牌網站建設、H5響應式網站、成都做商城網站、集團公司官網建設、外貿營銷網站建設、高端網站制作、響應式網頁設計等建站業(yè)務,價格優(yōu)惠性價比高,為拉薩等各大城市提供網站開發(fā)制作服務。

操作系統(tǒng):RHEL5.4

實驗拓撲:

兩臺Directory都有兩塊網卡,都設置為靜態(tài)地址,其中eth0用于網絡間通信,eth1用于兩臺Directory監(jiān)測彼此心跳信息,所以使用獨立的網絡進行連接,在實際應用中可以使用串行線進行連接,這里由于使用虛擬機就采用intnet的內部網予以實現(xiàn)。     本實驗用到的軟件包有:     heartbeat-2.1.4-9.el5.i386.rpm  heartbeat-devel-2.1.4-9.el5.i386.rpm  heartbeat-gui-2.1.4-9.el5.i386.rpm  heartbeat-ldirectord-2.1.4-9.el5.i386.rpm  heartbeat-pils-2.1.4-10.el5.i386.rpm  heartbeat-stonith-2.1.4-10.el5.i386.rpm  libnet-1.1.4-3.el5.i386.rpm  perl-MailTools-1.77-1.el5.noarch.rpm     一.首先安裝軟件包    [root@DIR ~]# yum localinstall *.rpm --nogpgcheck -y     按照拓撲圖設置兩臺主機的IP地址和主機名     分別修改兩主機/etc/hosts文件,添加下面的內容       192.168.56.10   node1.a.org node1       192.168.56.30   node2.a.org node2       為兩主機設置免密碼ssh連接     首先在node1上:           [root@DIR ~]# ssh-keygen -t rsa  [root@DIR ~]# ssh-copy-id -i .ssh/id_rsa.pub root@node2      再在node2上:            [root@DIR2 ~]# ssh-keygen -t rsa  [root@DIR2 ~]# ssh-copy-id -i .ssh/id_rsa.pub root@node1      這樣就可以免輸密碼自由連接了。     可以將node1上的軟件包直接拷貝至node2上進行安裝:    [root@node1 ~]# scp *.rpm node2:/root/       然后同樣的安裝步驟:    [root@DIR2 ~]# yum localinstall -y *.rpm –nogpgcheck     準備工作基本結束,下面開始進行配置 二.配置Heartbeat    1.將heartbeat的配置文件拷貝到/etc/ha.d目錄下     [root@node1 ~]# cp /usr/share/doc/heartbeat-2.1.4/{ha.cf,haresources,authkeys} /etc/ha.d/  [root@node1 ~]#cp /usr/share/doc/heartbeat-ldirectord-2.1.4/ldirectord.cf /etc/ha.d/     2.首先編輯ha.cf    [root@node1 ha.d]# cd /etc/ha.d/    [root@node1 ha.d]# vim ha.cf     修改下面幾項:        logfile /var/log/ha-log     //打開日志  bcast eth1               //監(jiān)測心跳的網卡  node   node1.a.org  node   node2.a.org       //定義集群節(jié)點  respawn hacluster /usr/local/lib64/heartbeat/ipfail  apiauth ipfail gid=haclient uid=hacluster        //定義隨heartbeat一起啟動的進程  3.然后編輯authkeys
   [root@node1 ha.d]# vim authkeys
   修改文件最后幾行為
          auth 2              //這里是用來指定認證方式的
          2 sha1 e781edf0090887bee14405fd48768ac6(隨機數(shù))
   隨機數(shù)可以用下面的命令生成
   [root@node1 ~]# dd if=/dev//urandom bs=512 count=1 | md5sum
   修改該文件的權限為400或600    [root@node1 ha.d]# chmod 400 authkeys    4.接下來編輯haresources    [root@node1 ha.d]# vim haresources     在其中寫入:    node1.a.org 192.168.56.20/24/eth0/192.168.56.255 ipvs ldirectord     這條語句分別用來定義主節(jié)點,VIP,指定網卡,廣播地址和隨之啟動的服務     最后來配置ldirectord.cf     [root@node1 ~]# vim /etc/ha.d/ldirectord.cf      quiescent=yes     checktimeout=3                         //檢測存活的時間      checkinterval=1                        //查詢間隔      autoreload=yes                         //自動重讀配置文件      logfile="/var/log/ldirectord.log"      //日志目錄      logfile="local0"                 virtual=192.168.56.20:80   //虛擬主機地址          real=192.168.56.11:80 gate       //Realserver地址          real=192.168.56.12:80 gate          fallback=127.0.0.1:80 gate       //Realserver全部宕機時指向的地址          service=http                   //服務          request="test/index.html"       //測試存活與否所用的頁面          receive="ok"                    //檢測關鍵字          scheduler=wlc               //調度算法          protocol=tcp         checktype=negotiate          //檢測類型          checkport=80    5.拷貝配置文件至node2     由于兩臺主機的配置文件必須相同,這里直接將node1上編輯好的配置文件拷貝至node2    [root@node1 ha.d]# scp ha.cf haresources authkeys ldirectord.cf node2:/etc/ha.d/       首先來配置兩臺Directory和兩臺Realserver,分別安裝httpd服務,并添加測試頁     [root@R1 ~]#yum install httpd -y  [root@R1 ~]#echo '

Realserver1

 ' > /var/www/html/index.html  [root@R1 ~]# echo 'ok' > /var/www/html/test.html  [root@R2 ~]#yum install httpd -y  [root@R2 ~]#echo '

Realserver2

 ' > /var/www/html/index.html  [root@R2 ~]# echo 'ok' > /var/www/html/test.html  [root@node1 ~]# yum install httpd -y  [root@node1 ~]# echo '

web service is under maintenance,please weat...

   ' > /var/www/html/index.html  [root@node2 ~]# yum install httpd -y  [root@node2 ~]# echo '

web service is under maintenance,please weat...

  ' > /var/www/html/index.htm      下面是在兩臺HA上進行的配置:     在兩臺Directory上分別安裝ipvsadm     [root@node1 ~]# yum install ipvsadm -y  [root@node2 ~]# yum install ipvsadm -y        由于使用兩臺Directory搭建lvs,關于lvs的Directory的設置就必須依賴于腳本來實現(xiàn)了。先來編輯Directory腳本,該腳本用于在資源流向自己時自動設置自己為lvs的Directory,并在資源不屬于自己時取消關于lvs的各項設置     [root@node1 ~]#vim /etc/init.d/ipvs.sh     #!/bin/bash      . /etc/rc.d/init.d/functions      VIP=192.168.56.20      RIP1=192.168.56.11      RIP2=192.168.56.12      PORT=80 case "$1" in  start)             /sbin/ifconfig eth0:1 $VIP broadcast $VIP netmask 255.255.255.255 up   /sbin/route add -host $VIP dev eth0:1   echo 1 > /proc/sys/net/ipv4/ip_forward      //開啟本機路由轉發(fā)功能  # 清除已有的iptables配置   /sbin/iptables -F   /sbin/iptables -Z  # 清除已有的ipvsadm 規(guī)則   /sbin/ipvsadm -C    # 添加VIP   /sbin/ipvsadm -A -t $VIP:80 -s wlc  # 在Directory下添加Realserver   /sbin/ipvsadm -a -t $VIP:80 -r $RIP1 -g -w 1   /sbin/ipvsadm -a -t $VIP:80 -r $RIP2 -g -w 2   /bin/touch /var/lock/subsys/ipvsadm &> /dev/null  ;;  stop)   echo 0 > /proc/sys/net/ipv4/ip_forward     /sbin/ipvsadm -C   /sbin/ifconfig eth0:1 down   /sbin/route del $VIP   /bin/rm -f /var/lock/subsys/ipvsadm   echo "ipvs is stopped..."  ;;  status)     if [ ! -e /var/lock/subsys/ipvsadm ]; then      echo "ipvsadm is stopped ..."   else      echo "ipvs is running ..."      ipvsadm -L -n     fi  ;;  *)   echo "Usage: $0 {start|stop|status}"  ;;  esac    [root@node1 ~]#chmod a+x /etc/init.d/ipvs.sh  將配置好的腳本拷貝至node2上 [root@node1 ~]# scp /etc/init.d/ipvs node2:/etc/init.d/ 這里需要對haresources文件進行一下修改,將剛才的腳本設置為隨服務啟動 配置realservers的腳本(運行此腳本能夠實現(xiàn)快速配置realservers) #vim /etc/init.d/realserver.sh  #!/bin/bash  # Script to start LVS DR real server.  # description: LVS DR real server  . /etc/rc.d/init.d/functions  VIP=192.168.56.20  host=`/bin/hostname`  case "$1" in  start)         # Start LVS-DR real server on this machine.   /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)         /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  [root@R1 ~]# chmod a+x /etc/init.d/realserver.sh    [root@R1 ~]# scp /etc/init.d/rs.sh 192.168.56.12:/etc/init.d/ 啟動服務進行測試: [root@node1 ~]# /etc/init.d/heartbeat start  [root@node1 ~]# ssh node2 -- '/etc/init.d/heartbeat start'  [root@node1 ~]# /etc/init.d/ldirectord start  [root@node1 ~]# ssh node2 --'/etc/init.d/ldirectord start'  [root@node1 ~]# /etc/init.d/ipvs start  [root@R1 ~]# /etc/init.d/realserver.sh start  [root@R2 ~]# /etc/init.d/realserver.sh start  查看一下LVS信息 [root@node1 ~]# ipvsadm -L -n   說明服務已經正常啟動,在瀏覽器上測試一下   這時停掉node1上的heartbeat,看服務是否正常 [root@node1 ~]# service heartbeat stop 刷新頁面可以看到   依然可以正常訪問,在node2上查看一下ipvsdam的信息 [root@node2 ~]# ipvsadm -L -n  

把兩臺Realserver都停掉,刷新頁面可以看到

 

查看一下ipvs轉發(fā)信息 [root@node1 ~]# ipvsadm -L -n   

停掉主節(jié)點node1,刷新頁面  

[root@node2 ~]# ipvsadm -L -n 至此,配置完成。   不登高山,怎知天高;不臨深溪,焉知地厚!站在堅實的土地上,做著生命中最真實的事情;像一棵挺拔的大樹,認可自己的命運并敢于迎接屬于這一方天空的風風雨雨。
標題名稱:【轉載】IPVS-DR+HA+ldirectord高可用負載均衡集群-創(chuàng)新互聯(lián)
本文路徑:http://weahome.cn/article/dosjjh.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部