首页 > 系统相关 >四月学习之LVS shell脚本配置DR模型

四月学习之LVS shell脚本配置DR模型

时间:2023-04-18 20:36:56浏览次数:40  
标签:arp shell LVS proc echo ipv4 conf net DR

1、DS脚本配置

#!/usr/bin/bash
VIP=172.16.1.100
RS1=172.16.1.5
RS2=172.16.1.6
PORT=80
SCHEDULER=rr
DEV=eth1:1

case $1 in
    start)
    # 配置虚拟IP地址  VIP
	cat  >/etc/sysconfig/network-scripts/ifcfg-${DEV} <<-EOF
	TYPE=Ethernet
	BOOTPROTO=none
	DEFROUTE=yes
	NAME=${DEV}
	DEVICE=${DEV}
	ONBOOT=yes
	IPADDR=${VIP}
	PREFIX=24
	EOF

	# 启动网卡
	ifup ${DEV}

	# 配置LVS规则
	ipvsadm -C
	ipvsadm -A -t ${VIP}:${PORT} -s ${SCHEDULER}
	ipvsadm -a -t ${VIP}:${PORT} -r ${RS1} -g
	ipvsadm -a -t ${VIP}:${PORT} -r ${RS2} -g
	;;

	stop)
	    ifdown ${DEV}
	    rm -f /etc/sysconfig/network-scripts/ifcfg-${DEV}
	    ipvsadm -C
	   ;;
	*)
		echo "Usage: sh $0 { start | stop }"
	;;
esac

2、RS脚本配置

#!/usr/bin/bash

VIP=172.16.1.100
DEV=lo:0

case $1 in
    start)
    # ARP抑制
	echo "1" >/proc/sys/net/ipv4/conf/all/arp_ignore
	echo "1" >/proc/sys/net/ipv4/conf/default/arp_ignore
	echo "1" >/proc/sys/net/ipv4/conf/lo/arp_ignore

	echo "2" >/proc/sys/net/ipv4/conf/all/arp_announce
	echo "2" >/proc/sys/net/ipv4/conf/default/arp_announce
	echo "2" >/proc/sys/net/ipv4/conf/lo/arp_announce

	# VIP
	cat  >/etc/sysconfig/network-scripts/ifcfg-${DEV} <<-EOF
	DEVICE=lo:0
	IPADDR=${VIP}
	NETMASK=255.0.0.0
	ONBOOT=yes
	NAME=loopback
	EOF
	
	ifup ${DEV}	# 启动网卡
	systemctl start nginx
    ;;
    
    
    stop)
    echo "0" >/proc/sys/net/ipv4/conf/all/arp_ignore
    echo "0" >/proc/sys/net/ipv4/conf/default/arp_ignore
    echo "0" >/proc/sys/net/ipv4/conf/lo/arp_ignore
    
    echo "0" >/proc/sys/net/ipv4/conf/all/arp_announce
    echo "0" >/proc/sys/net/ipv4/conf/default/arp_announce
    echo "0" >/proc/sys/net/ipv4/conf/lo/arp_announce

        ifdown ${DEV}  # 停止网卡
        rm -f /etc/sysconfig/network-scripts/ifcfg-${DEV}
        systemctl stop nginx
        ;;
    *)
        echo "Usage: sh $0 { start | stop }"
esac

标签:arp,shell,LVS,proc,echo,ipv4,conf,net,DR
From: https://blog.51cto.com/u_13236892/6204027

相关文章

  • DRF之权限
    1.基于BasePermission自定义权限1.1  基于fromrest_framework.permissionsimportBasePermission实现权限classApp01Permission(BasePermission):defhas_permission(self,request,view):''':paramrequest::paramview:......
  • Matlab自动化控制-Adrc自抗扰控制
    ✅作者简介:热爱科研的算法开发者,Python、Matlab项目可交流、沟通、学习。......
  • Android之AppWidget 开发浅析
    什么是AppWidgetAppWidget即桌面小部件,也叫桌面控件,就是能直接显示在Android系统桌面上的小程序,先看图:图中我用黄色箭头指示的即为AppWidget,一些用户使用比较频繁的程序,可以做成AppWidget,这样能方便地使用。典型的程序有时钟、天气、音乐播放......
  • Android 自定义View 之 圆环进度条
    圆环进度条前言正文一、XML样式二、构造方法三、测量四、绘制①绘制进度条背景②绘制进度③绘制文字五、API方法六、使用七、源码前言  很多时候我们会使用进度条,而Android默认的进度条是长条的,从左至右。而在日常开发中,有时候UI为了让页面更美观,就需要用到圆环进度条,那么本文......
  • Python + Shell 巡检服务器
    1.背景团队维护多套业务系统,有支付系统、金融系统、数据系统、核验系统等二十多套业务系统,每套业务系统有10-50台服务器不等,当前团队中存在一套自动化巡检系统,每十分钟巡检一次,有异常可实时告警。但每天还需要人工登录服务器巡检两次,因人工巡检耗时长、漏巡风险大,需要一个运维巡......
  • db2高可用基础-主从hadr实践手册
    db2高可用基础-主从hadr实践手册(centos8)环境说明:服务器地址:primary192.168.247.128secondary192.168.247.168数据库版本:db2高级企业版V10.5+环境需求:主备两侧关闭系统防火墙,信任网络互通,scp、ssh可正常跳转查看状态systemctlstatusfirewalld.service关闭防火墙syste......
  • Shell脚本--case in
    当分支较多,并且判断条件比较简单时,使用casein语句就比较方便了。其基本格式为:caseexpressioninpattern1)statement1;;pattern2)statement2;;pattern3)statement3;;……*)statem......
  • Shell脚本--(())
    双小括号(())是BashShell中专门用来进行整数运算的命令,它的效率很高,写法灵活。但是,(())只能进行整数运算,不能对小数(浮点数)或者字符串进行运算。 1.(()) 使用(()) 的语法格式为:((表达式))通俗地讲,就是将数学运算表达式放在((和))之间。表达式可以只有一个......
  • adb(Android Debug Bridge)安装使用教程
    参考:https://www.cnblogs.com/lsdb/p/9438215.html一、说明adb的db是debugbridge而不是和gdb一样指debug,这意思是说adb不能像gdb那样能一步步调试代码,但可以启到一些类似调试的功能。下面就针对这些功能进行介绍,本文根据官方文档“http://adbshell.com/commands”整理而成。......
  • Shell脚本--test/[]和[[]]
    0. 序言test([])和[[]] 在Shell 中都是用来检测某个条件是否成立。通过附带选项,可以进行数值、字符串和文件三个方面的检测。0.1. 与数值比较相关的选项num1-eqnum2判断num1是否和num2相等num1-nenum2判断num1是否和num2不相等num1-gtnum2......