文檔需要---記一次keepalived 測試

LVS+Keepalived

image.png

實(shí)驗環(huán)境:

1.Win10下的VMware 的虛擬機(jī)

2.網(wǎng)絡(luò)鏈接模式:橋接

3.系統(tǒng):centos7最小化安裝

4.nginx服務(wù)也是設(shè)置在lvs上

基礎(chǔ)準(zhǔn)備工作:

1) 綁定靜態(tài)IP地址/設(shè)定主機(jī)名 重啟服務(wù)后ping下百度以及下面看是否通了

192.168.1.232 lvs-master

192.168.1.231 lvs-slave

2) IP地址與主機(jī)名的綁定 /etc/hosts

3) 關(guān)閉防火墻 service iptables stop(有就關(guān))

配置兩臺Web服務(wù)器

  1. 安裝nginx

快速安裝方式:登陸官網(wǎng)<u>http://nginx.org/en/linux_packages.html#stable</u>

image.png

Vim /etc/yum.repos.d/nginx.repo

[nginx]

name=nginx repo

baseurl=http://nginx.org/packages/centos/7/$basearch/

gpgcheck=0

enabled=1

保存后 yum install nginx 即可。

啟動服務(wù):nginx -c 到配置文件 這里 nginx –c /etc/nginx/nginx.conf

即可看到:為了區(qū)別兩臺nginx 可在html下的index 進(jìn)行修改

image.png

設(shè)置VIP

1、 分別在backup lvs和master lvs上安裝lvs

2、

安裝方式1:直接yum install ipvsadm

安裝方式 2:源碼包安裝

  1. wget <u>http://www.linuxvirtualserver.org/software/kernel-2.6/ipvsadm-1.26.tar.gz</u>

安裝依賴:yum groupinstall 'Development tools' -y

yum install libnl* popt* -y

解壓tar包

Make make install 就好了

3.安裝好ipvsadm后

①進(jìn)入指定文件夾:cd /etc/init.d/

②編輯腳本文件:vim realserver.sh


SNS_VIP=192.168.1.230

/etc/rc.d/init.d/functions

case "$1" in

start)

       ifconfig lo:0 $SNS_VIP netmask 255.255.255.255 broadcast $SNS_VIP

       /sbin/route add -host $SNS_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 "RealServer Start OK"

       ;;

stop)

       ifconfig lo:0 down

       route del $SNS_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 "RealServer Stoped"

       ;;

*)

       echo "Usage: $0 {start|stop}"

       exit 1

esac

exit 0

這里我們設(shè)置vip為1.230

chmod 755 realserver 修改權(quán)限后 我們執(zhí)行改腳本即可。

/這個腳本之前需要 安裝下ifconfig 不然無法使用 yum install net-tools 最小化安裝無ifconfig。

配置主負(fù)載服務(wù)器

(1) 安裝Keepalived相關(guān)包:yum install -y keepalived 源碼包安裝同上

(2) 編輯keepalived.conf配置文件

①進(jìn)入keepalived.conf所在目錄:cd /etc/keepalived


global_defs {

   notification_email {

         edisonchou@hotmail.com

   }

   notification_email_from sns-lvs@gmail.com

   smtp_server 192.168.80.1

   smtp_connection_timeout 30

   router_id LVS_DEVEL  # 設(shè)置lvs的id,在一個網(wǎng)絡(luò)內(nèi)應(yīng)該是唯一的

}

vrrp_instance VI_1 {

    state MASTER   #指定Keepalived的角色,MASTER為主,BACKUP為備

    interface eno16777736  #這個是出口網(wǎng)卡與外網(wǎng)相連的網(wǎng)卡一致。 

    virtual_router_id 51  #虛擬路由編號,主備要一致

    priority 100  #定義優(yōu)先級,數(shù)字越大,優(yōu)先級越高,主DR必須大于備用DR

    advert_int 1  #檢查間隔,默認(rèn)為1s

    authentication {

        auth_type PASS

        auth_pass 1111

    }

    virtual_ipaddress {

        192.168.1.230  #定義虛擬IP(VIP)為192.168.2.33,可多設(shè),每行一個

    }

}

# 定義對外提供服務(wù)的LVS的VIP以及port

virtual_server 192.168.1.230 80 {

    delay_loop 6 # 設(shè)置健康檢查時間,單位是秒

    lb_algo wrr # 設(shè)置負(fù)載調(diào)度

    lb_kind DR # 設(shè)置LVS實(shí)現(xiàn)負(fù)載的機(jī)制,有NAT、TUN、DR三個模式

    nat_mask 255.255.255.0

    persistence_timeout 0

    protocol TCP

    real_server 192.168.1.232 80 {  # 指定real server1的IP地址

        weight 3   # 配置節(jié)點(diǎn)權(quán)值,數(shù)字越大權(quán)重越高

        TCP_CHECK {

        connect_timeout 10

        nb_get_retry 3

        delay_before_retry 3

        connect_port 80

        }

    }

    real_server 192.168.1.231 80 {  # 指定real server2的IP地址

        weight 3  # 配置節(jié)點(diǎn)權(quán)值,數(shù)字越大權(quán)重越高

        TCP_CHECK {

        connect_timeout 10

        nb_get_retry 3

        delay_before_retry 3

        connect_port 80

        }

     }

}

啟動keepalived:service keepalived start

配置完成后:ip a 虛擬ip必須在你對外網(wǎng)卡上才算成功。

image.png

配置從負(fù)載服務(wù)器:

從負(fù)載服務(wù)器與主負(fù)載服務(wù)器大致相同,只是在keepalived的配置文件中需要改以下兩處:

(1)將state由MASTER改為BACKUP

(2)將priority由100改為99

查看進(jìn)程是否完全啟動:

image.png

即可得到:

image.png
image.png
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容