LVS 同网段搭建keeplive+lvs
單點(diǎn)LVS搭建詳細(xì)請點(diǎn)擊查看
LVS??DR搭建
前期準(zhǔn)備工作--ip規(guī)劃
DR主:192.168.31.35? ?主調(diào)度器
DR從:192.168.31.38? ?從調(diào)度器
VIP:192.168.31.100???VIP地址
RS1:192.168.31.36???后端真實(shí)web服務(wù)器
RS2:192.168.31.37???后端真實(shí)web服務(wù)器
前期準(zhǔn)備工作--應(yīng)用安裝
調(diào)度器:yum install -y ipvsadm keepalived
后臺web:? yum install -y httpd
前期準(zhǔn)備工作--端口設(shè)置以及查詢命令
systemctl stop firewalld???或者
firewall-cmd --permanent --zone=public --add-port=80/tcp?
firewall-cmd --reload
查看連接數(shù)和狀態(tài)以及轉(zhuǎn)發(fā):ipvsadm??-lnc?
查看LVS設(shè)置:ipvsadm
由于keepalive中配置了VIP等,所以不需要再去重復(fù)配置VIP等。
keeplive主腳本:192.168.31.35
vi /etc/keepalived/keepalived.conf //配置keepalived和DR global_defs {router_id VIP #服務(wù)器名字 }vrrp_instance VI_1 {state MASTER #配置主備,備用機(jī)此配置項(xiàng)為BACKUPinterface ens192 #指定接口virtual_router_id 51 #指定路由ID,主備必須一樣priority 101 #設(shè)置優(yōu)先級,主略高于備份advert_int 1 #設(shè)置檢查時間authentication {auth_type PASS #設(shè)置驗(yàn)證加密方式auth_type 1234 #設(shè)置驗(yàn)證密碼}virtual_ipaddress {192.168.31.100} }virtual_server 192.168.31.100 80 {delay_loop 15 #健康檢查時間lb_algo rr #LVS調(diào)度算法lb_kind DR #LVS工作模式!persistence 60 #是否保持連接,!不保持protocol TCP #服務(wù)采用TCP協(xié)議real_server 192.168.31.36 80 {weight 1 #權(quán)重TCP_CHECK { #TCP檢查connect_port 80 #檢查端口80connect_timeout 3 #超時時間3秒nb_get_retry 3 #重試次數(shù)3次delay_before_retry 4 #重試間隔4秒}}real_server 192.168.31.37 80 {weight 1TCP_CHECK {connect_port 80connect_timeout 3nb_get_retry 3delay_before_retry 4}} }keeplive從腳本:192.168.31.38
vi /etc/keepalived/keepalived.conf //配置keepalived和DR global_defs {router_id VIP2 #服務(wù)器名字 }vrrp_instance VI_1 {state BACKUP #配置主備,備用機(jī)此配置項(xiàng)為BACKUPinterface ens192 #指定接口virtual_router_id 51 #指定路由ID,主備必須一樣priority 100 #設(shè)置優(yōu)先級,主略高于備份advert_int 1 #設(shè)置檢查時間authentication {auth_type PASS #設(shè)置驗(yàn)證加密方式auth_type 1234 #設(shè)置驗(yàn)證密碼}virtual_ipaddress {192.168.31.100} }virtual_server 192.168.31.100 80 {delay_loop 15 #健康檢查時間lb_algo rr #LVS調(diào)度算法lb_kind DR #LVS工作模式!persistence 60 #是否保持連接,!不保持protocol TCP #服務(wù)采用TCP協(xié)議real_server 192.168.31.36 80 {weight 1 #權(quán)重TCP_CHECK { #TCP檢查connect_port 80 #檢查端口80connect_timeout 3 #超時時間3秒nb_get_retry 3 #重試次數(shù)3次delay_before_retry 4 #重試間隔4秒}}real_server 192.168.31.37 80 {weight 1TCP_CHECK {connect_port 80connect_timeout 3nb_get_retry 3delay_before_retry 4}} }RS腳本:192.168.31.36/37 創(chuàng)建rs.sh? 并寫入以下內(nèi)容
#!/bin/bash # # Script to start LVS DR real server. # description: LVS DR real server # . /etc/rc.d/init.d/functionsVIP=192.168.31.100 host=`/bin/hostname`case "$1" in start) # 關(guān)閉 ARP 應(yīng)答和響應(yīng)#arp_ignore: 定義接收到ARP請求時的響應(yīng)級別;1表示僅在請求的目標(biāo)地址配置請求到達(dá)的接口上的時候,才給予響應(yīng)#arp_announce:定義將自己地址向外通告時的通告級別:2表示僅向與本地接口上地址匹配的網(wǎng)絡(luò)進(jìn)行通告;/sbin/ifconfig lo down/sbin/ifconfig lo upecho 1 > /proc/sys/net/ipv4/conf/lo/arp_ignoreecho 2 > /proc/sys/net/ipv4/conf/lo/arp_announceecho 1 > /proc/sys/net/ipv4/conf/all/arp_ignoreecho 2 > /proc/sys/net/ipv4/conf/all/arp_announce# 把 VIP 配置在 lo:0 接口 防止和其他主機(jī)溝通 掩碼32 只廣播給自己/sbin/ifconfig lo:0 $VIP broadcast $VIP netmask 255.255.255.255 up# 配置路由,只要是到 VIP 的報文,就走 lo 網(wǎng)卡/sbin/route add -host $VIP dev lo:0;; stop) # Stop LVS-DR real server loopback device(s)./sbin/ifconfig lo:0 downecho 0 > /proc/sys/net/ipv4/conf/lo/arp_ignoreecho 0 > /proc/sys/net/ipv4/conf/lo/arp_announceecho 0 > /proc/sys/net/ipv4/conf/all/arp_ignoreecho 0 > /proc/sys/net/ipv4/conf/all/arp_announce;; status) # 恢復(fù) ARP 應(yīng)答和響應(yīng)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."elseecho "LVS-DR real server Running."fi ;; *) # Invalid entry.echo "$0: Usage: $0 {start|status|stop}"exit 1 ;; esac?
分別執(zhí)行腳本systemctl? start keepalived 或? sh? ?rs.sh start
以上便是同網(wǎng)段 LVS+keepalived集群搭建全部過程,請大家多多指教,如有錯誤請留言或私聊,每隔一天我會定時上線查看。
?
?
總結(jié)
以上是生活随笔為你收集整理的LVS 同网段搭建keeplive+lvs的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: SocketErrorCode:1002
- 下一篇: [剑指offer]面试题第[54]题[J