lvs-安装以及脚本
1、dr 采用修改mac 地址方式,使用二层网络mac路由。所以rs调度的vip 和 后端的realip必须是同一网段。
注意事项:真是服务器上本地lo网卡需要配置为和rs调度的vip 一样。
这样真是服务器在处理请求以后。通过lo网卡路由给本地etcho 转发给对应的服务器的源IP保持不变。
一安装
yum install ipvsadm -y 二配置dr模式
vim /usr/local/sbin/lvs_dr.sh
#! /bin/bash
echo 1 > /proc/sys/net/ipv4/ip_forward #路由模式打开
ipv=/sbin/ipvsadm
vip=172.29.3.58
rs1=192.168.0.18
rs2=192.168.0.28
ifconfig eth0:0 down
ifconfig eth0:0 172.29.3.58 broadcast 172.29.3.58 netmask 255.255.255.255 up
route add -host 172.29.3.58 dev eth0:0 #设置vip
ipv=/sbin/ipvsadm -C
/sbin/ipvsadm -A -t 172.29.3.58:80 -s wrr #vip添加RS地址,并设置为DR模式
/sbin/ipvsadm -a -t 172.29.3.58:80 -r 92.168.0.18 :80 -g # a:添加真实主机 t:地址和端口号 r:RS
/sbin/ipvsadm -a -t 172.29.3.58:80 -r 192.168.0.28 :80 -g realip 配置
vim /usr/local/sbin/lvs_dr_rs.sh
#! /bin/bash
vip=172.29.3.58
ifconfig lo:0 172.29.3.58 broadcast 172.29.3.58 netmask 255.255.255.255 up # 设置本地回环网卡与vip一致 这样在出时候,源IP就和vip不
route add -host 172.29.3.58 lo:0
echo "1" >/proc/sys/net/ipv4/conf/lo/arp_ignore #关闭arp解析
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
2、NAT模式 修改的是input转发时候的IP.目标通过IP路由。真是服务器上网关必须指向内网ip(需要通过调度器返回给用户。无法直接返回给用户)。因此nat模式时候。调度器是锦屏。
#! /bin/bash
# director服务器上开启路由转发功能:
echo 1 > /proc/sys/net/ipv4/ip_forward
sysctl -p
# 关闭 icmp 的重定向
echo 0 > /proc/sys/net/ipv4/conf/all/send_redirects
echo 0 > /proc/sys/net/ipv4/conf/default/send_redirects
echo 0 > /proc/sys/net/ipv4/conf/eth0/send_redirects echo
0 > /proc/sys/net/ipv4/conf/eth1/send_redirects
# director设置 nat 防火墙
iptables -t nat -F iptables -t nat -X
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -j MASQUERADE #masquerade 会自动替换为对应网卡动态获取的ip. 将来源为192.168.0.0 目标ip替换为对应realip
# director设置
IPVSADM='/sbin/ipvsadm'
/sbin/ipvsadm -C
/sbin/ipvsadm -A -t 172.16.254.200:80 -s wrr
/sbin/ipvsadm -a -t 172.16.254.200:80 -r 192.168.0.18:80 -m -w 1
/sbin/ipvsadm -a -t 172.16.254.200:80 -r 192.168.0.28:80 -m -w 1
网关配置:
route add default gw 192.168.0.8
注意,切记一定要在两台 RS 上设置网关的 IP 为 director 的内网 IP。
[root@localhost ntpstats]# vim /etc/sysconfig/network-scripts/ifcfg-eth0
#修改网关为调度器的ip地址
GATEWAY=192.168.40.200
路由参考:https://www.cnblogs.com/linyfeng/p/7534677.html
lvs-安装以及脚本的更多相关文章
- LVS安装使用详解
简介 LVS是Linux Virtual Server的简称,也就是Linux虚拟服务器, 是一个由章文嵩博士发起的自由软件项目,它的官方站点是www.linuxvirtualserver.org. ...
- (转)LVS安装使用详解
原文:https://www.cnblogs.com/MacoLee/p/5856858.html 简介 LVS是Linux Virtual Server的简称,也就是Linux虚拟服务器, 是一个由 ...
- centos环境自动化批量安装软件脚本
自动化安装jdk软件部署脚本 准备工作: 1.在执行脚本的服务器上生成免密码公钥: 安装expect命令 yum install -y expect ssh-keygen 三次回车 2.将jdk-7u ...
- 子进程 已安装 pre-removal 脚本 返回了错误号 1或2 与 子进程 已安装 post-installation 脚本 返回了错误号 1或2
今天在ubuntu kylin上安装了virtualbox, 后来我想删除了再装个新一点的,结果正常的情况下删除不了,我就把找到的virtualbox的目录全部都删除了, 再通过apt-get rem ...
- 黄聪:WebBrowser执行和安装jQuery脚本(IEBrowse)
上一文章说明了如何让 js 脚本访问 .NET 中的类, 这次希望给大家说明一下在任意页面中安装 jQuery 脚本, 并操作页面上的元素. 其实在第一篇关于 IEBrowser 的文章当中, 已经有 ...
- LVS安装配置
LVS安装部署 一.LVS安装(CENTOS) 1.LVS模块ip_vs已经内置在LINUX内核中,一般情况下ip_vs并没有启动,可以通过lsmod | grep ip_vs查看,能够看到信息表示模 ...
- 安装LVS安装LVS和配置LVS的工作比较繁杂
安装LVS安装LVS和配置LVS的工作比较繁杂,读者在配置的过程中需要非常细心和耐心.在本节我们将对其进行详细地介绍.主要包括如下几个核心步骤:1.获取支持LVS的内核源代码如果读者需要使用LVS,需 ...
- linux一键安装vncserver脚本
title: linux一键安装vncserver脚本 date: 2016-04-11 14:32:04 tags: --- linux多数情况下是作为服务器使用的,管理员一般也喜欢使用命令行来管理 ...
- 安装用户脚本的福音:Tampermonkey(油猴)
一直都知道网络的强大,NB的程序员大牛潜伏在我们身边.但是一直以来,如果想使用的一些特殊用途的浏览器插件都无法安装,今天被大神级的师兄给秒到了,原来这世上还有一个免费的用户脚本管理器,有了用户脚本管理 ...
- 子进程 已安装 post-installation 脚本 返回错误状态 1,dpkg: 处理软件包 python-crypto (--configure)时出错: 该软件包正处于非常不稳定的状态;
这几天在学习redis的时候,装软件总是报错,两个问题都和dpkg有关,上网查阅了些解决办法,发现整体来说执行以下方法均可解决. 虽然每个人需要安装的包不同,但是出现此类问题的不同也只有安装包的名字, ...
随机推荐
- RMAN-20201: datafile not found in the recovery catalog
oracle恢复报错如下: Recovery Manager: Release 10.2.0.4.0 - Production on Fri Aug 28 14:31:31 2015 Copyrigh ...
- hadoop 支持 LZO 压缩配置
1)hadoop 本身并不支持 lzo 压缩,故需要使用 twitter 提供的 hadoop-lzo 开源组件.hadoop lzo 需依赖 hadoop 和 lzo 进行编译,编译步骤如下. 编译 ...
- vivo 评论中台的流量及数据隔离实践
一.背景 vivo评论中台通过提供评论发表.点赞.举报.自定义评论排序等通用能力,帮助前台业务快速搭建评论功能并提供评论运营能力,避免了前台业务的重复建设和数据孤岛问题.目前已有vivo短视频.viv ...
- freeswitch插件式模块接口实现方式
概述 freeswitch的外围模块是插件式的,可以动态的加载和卸载,使用起来非常的灵活和方便. 如果我们自己来设计一个开源的代码框架,相信这种插件式的模块结构是非常适合多人合作的模式. 本文对fs的 ...
- Python绘图工具turtle库的使用
#PythonDraw.py import turtle #引入了一个绘图库(海归库) turtle.setup(650,350,200,200) #设置一个窗体 turtle.penup() #将画 ...
- java的四种引用:强软弱虚
简介 在JDK 1.2以前的版本中,若一个对象不被任何变量引用,那么程序就无法再使用这个对象.也就是说,只有对象处于(reachable)可达状态,程序才能使用它. 从JDK 1.2版本开始,对象的引 ...
- 通过json动态创建控制器
通过字符串来创建控制器 如果通过字符串来创建控制器 不可以直接通过类型来获取对应的类 因为Swift有命名空间,类前需要加上命名空间的名称 获取命名空间的名称 let executable = NSB ...
- Eclipse 找不到或者无法加载主类
最近因为频繁练习JDBC更换了几次驱动jar包,然后突然发现出现了找不到或者无法加载主类的错误, 项目上出现了一个感叹号. 解决方法: 项目-右键 properties-java Build Path ...
- 开发时Blocks跟Delegates如何选择----董鑫
1.大多数delegate protocols 都拥有几个消息源. 以GKMatch为例(A GKMatch object provides a peer-to-peer network betwee ...
- memcache启动多个服务
windows 7 64bit 环境下安装memcached 1.下载后解压到D:\memcached(下载地址:memcached-win64下载地址) 2.安装到windows服务,打开cmd命令 ...