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-安装以及脚本的更多相关文章

  1. LVS安装使用详解

    简介 LVS是Linux Virtual Server的简称,也就是Linux虚拟服务器, 是一个由章文嵩博士发起的自由软件项目,它的官方站点是www.linuxvirtualserver.org. ...

  2. (转)LVS安装使用详解

    原文:https://www.cnblogs.com/MacoLee/p/5856858.html 简介 LVS是Linux Virtual Server的简称,也就是Linux虚拟服务器, 是一个由 ...

  3. centos环境自动化批量安装软件脚本

    自动化安装jdk软件部署脚本 准备工作: 1.在执行脚本的服务器上生成免密码公钥: 安装expect命令 yum install -y expect ssh-keygen 三次回车 2.将jdk-7u ...

  4. 子进程 已安装 pre-removal 脚本 返回了错误号 1或2 与 子进程 已安装 post-installation 脚本 返回了错误号 1或2

    今天在ubuntu kylin上安装了virtualbox, 后来我想删除了再装个新一点的,结果正常的情况下删除不了,我就把找到的virtualbox的目录全部都删除了, 再通过apt-get rem ...

  5. 黄聪:WebBrowser执行和安装jQuery脚本(IEBrowse)

    上一文章说明了如何让 js 脚本访问 .NET 中的类, 这次希望给大家说明一下在任意页面中安装 jQuery 脚本, 并操作页面上的元素. 其实在第一篇关于 IEBrowser 的文章当中, 已经有 ...

  6. LVS安装配置

    LVS安装部署 一.LVS安装(CENTOS) 1.LVS模块ip_vs已经内置在LINUX内核中,一般情况下ip_vs并没有启动,可以通过lsmod | grep ip_vs查看,能够看到信息表示模 ...

  7. 安装LVS安装LVS和配置LVS的工作比较繁杂

    安装LVS安装LVS和配置LVS的工作比较繁杂,读者在配置的过程中需要非常细心和耐心.在本节我们将对其进行详细地介绍.主要包括如下几个核心步骤:1.获取支持LVS的内核源代码如果读者需要使用LVS,需 ...

  8. linux一键安装vncserver脚本

    title: linux一键安装vncserver脚本 date: 2016-04-11 14:32:04 tags: --- linux多数情况下是作为服务器使用的,管理员一般也喜欢使用命令行来管理 ...

  9. 安装用户脚本的福音:Tampermonkey(油猴)

    一直都知道网络的强大,NB的程序员大牛潜伏在我们身边.但是一直以来,如果想使用的一些特殊用途的浏览器插件都无法安装,今天被大神级的师兄给秒到了,原来这世上还有一个免费的用户脚本管理器,有了用户脚本管理 ...

  10. 子进程 已安装 post-installation 脚本 返回错误状态 1,dpkg: 处理软件包 python-crypto (--configure)时出错: 该软件包正处于非常不稳定的状态;

    这几天在学习redis的时候,装软件总是报错,两个问题都和dpkg有关,上网查阅了些解决办法,发现整体来说执行以下方法均可解决. 虽然每个人需要安装的包不同,但是出现此类问题的不同也只有安装包的名字, ...

随机推荐

  1. asyncio和aiohttp

    asyncio官网 https://docs.python.org/zh-cn/3/library/asyncio-task.html 下面为伪代码: import aiohttp import as ...

  2. Linux 安装和 连接xshell

    一.介绍和安装 /*一.linux:? 为什么要学习它. 常见的操作系统? 1.windows, linux,mac 使用命令行进行操作 Windows cmd Linux 和Mac 中的命令行是 s ...

  3. ajaxl利用json 传送数据的 三种提交方式?

    一.在servlet类中添加几个javabean对象,放置数据. package com.aaa.servlet; import java.io.IOException; import java.ut ...

  4. Redis 学习笔记(四)RDB 和 AOF 持久化机制

    一.Redis 持久化简介 Redis 的持久化功能是区别于 Memcached 显著特性,数据持久化可以保证系统在发生宕机和重启后数据不会丢失,对于 redis 这种存储在内存中的数据库显得尤为重要 ...

  5. python开发: linux进程打开的文件数

    1 #!/usr/bin/env python 2 #-*- coding:utf-8 -*- 3 4 ''' 统计linux打开的文件数 ''' 5 6 import os 7 import sys ...

  6. python办公自动化系列之金蝶K3自动登录(二)

    接上一篇博文python办公自动化系列之金蝶K3自动登录(一),我们接着聊聊利用python脚本实现金蝶K3 Wise客户端自动登录这一需求. 如上图所示,自动选择[组织机构]后,我们还需要驱动[当前 ...

  7. 网络层主要协议与arp欺骗

    网络层主要协议与arp欺骗 目录 网络层主要协议与arp欺骗 一.网络层(Network Layer) 1.网络层的功能 2.IP数据报(IP Datagram) 二.网络层的主要协议 1.ICMP协 ...

  8. FastJSON解析Json字符串(反序列化为List、Map)

    在日常开发与数据库打交道的时候,常有以Json格式的字符串存储到数据库的情况,当在Java程序中获取到对应的Json格式的String字符串后,如何才能转换为我们想要的数据格式(比如转换成Java中的 ...

  9. git忽略项目中的指定文件

    git仓库提交原则:提交给远程仓库的只有源代码和相关的配置文件 如果是使用模板建立的仓库,会自带有.gitignore文件,无需再建立.当然如果需要在指定文件忽略,只需要在这个文件中添加指定的文件即可 ...

  10. 4.Flink实时项目之数据拆分

    1. 摘要 我们前面采集的日志数据已经保存到 Kafka 中,作为日志数据的 ODS 层,从 kafka 的ODS 层读取的日志数据分为 3 类, 页面日志.启动日志和曝光日志.这三类数据虽然都是用户 ...