LVS-DR搭建

LVS  DR搭建

前期准备工作--ip规划

DR:192.168.31.35    LVS调度器

VIP:192.168.31.100   VIP地址

RS1:192.168.31.36   后端真实web服务器

RS2:192.168.31.37   后端真实web服务器

前期准备工作--应用安装

yum install -y ipvsadm keepalived

前期准备工作--端口设置以及查询命令

systemctl stop firewalld   或者

firewall-cmd --permanent --zone=public --add-port=80/tcp 

firewall-cmd --reload

查看连接数和状态以及转发:ipvsadm  -lnc 

查看LVS设置:ipvsadm

 

DR脚本:192.168.31.35 创建dr.sh  并写入以下内容

#!/bin/bash
# LVS script for VS/DR
# . /etc/rc.d/init.d/functions # 
VIP=192.168.31.100 
RIP1=192.168.31.36
RIP2=192.168.31.37
PORT=80 
 case "$1" in
start) 
 # 配置VIP
  /sbin/ifconfig ens192:0 $VIP broadcast $VIP netmask 255.255.255.0 up
  /sbin/route add -host $VIP dev ens192:0
 # 打开内核转发
  echo 1 > /proc/sys/net/ipv4/ip_forward
 # 删除表中所有规则
  /sbin/iptables -F
 # 将表中数据包计数器和流量计数器归零
  /sbin/iptables -Z
 # 清空所有规则
  /sbin/ipvsadm -C
 # 配置集群--添加一个集群服务
  /sbin/ipvsadm -A -t $VIP:80 -s wlc
 # 配置集群--集群服务中添加真实服务器
  /sbin/ipvsadm -a -t $VIP:80 -r $RIP1 -g -w 1
  /sbin/ipvsadm -a -t $VIP:80 -r $RIP2 -g -w 2
  #增加ipvsadm 锁文件
  /bin/touch /var/lock/subsys/ipvsadm &> /dev/null
;; 
  
stop) 
 #停止IP端口转发
  echo 0 > /proc/sys/net/ipv4/ip_forward
 # 清空所有规则
  /sbin/ipvsadm -C
 #删除VIP地址和路由
  /sbin/ifconfig ens192:0 down
  /sbin/route del $VIP
 #删除ipvsadm 锁文件
  /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

RS脚本:192.168.31.36/37 创建rs.sh  并写入以下内容

#!/bin/bash
# 
# Script to start LVS DR real server.
# description: LVS DR real server
# .  /etc/rc.d/init.d/functions
  
VIP=192.168.31.100
host=`/bin/hostname`
 case "$1" in
start) 
        # 关闭 ARP 应答和响应
        #arp_ignore: 定义接收到ARP请求时的响应级别;1表示仅在请求的目标地址配置请求到达的接口上的时候,才给予响应
        #arp_announce:定义将自己地址向外通告时的通告级别:2表示仅向与本地接口上地址匹配的网络进行通告;
        /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
        # 把 VIP 配置在 lo:0 接口 防止和其他主机沟通 掩码32 只广播给自己
        /sbin/ifconfig lo:0 $VIP broadcast $VIP netmask 255.255.255.255 up
        # 配置路由,只要是到 VIP 的报文,就走 lo 网卡
        /sbin/route add -host $VIP dev lo:0
  
;; 
stop) 
  
        # 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) 
  
        # 恢复 ARP 应答和响应
        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

分别执行脚本  sh dr.sh start或  sh   rs.sh start

以上便是同网段 单点LVS集群搭建全部过程,请大家多多指教,如有错误请留言或私聊,每隔一天我会定时上线查看。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值