虚拟集群LVS及DR模式搭建笔记
LVS(虚拟集群Linux Virtual Server)
LVS-NAT:地址转换,数据包来回都要经过NAT转换,所以Director Server(即LVS服务器)将成为系统瓶颈。使用NAT模式将需要两个不同网段的IP,一个IP接受外部请求服务,一般为外网ip,此IP称为VIP,一个IP与后realserver同一地址段,负责相互通信,称为DIP。后端realserver的网关地址需指向DIP。同时需开启linux内核的数据包转发功能。
LVS-TUN:隧道 ,LVS/TUN与 LVS/DR 类似。只是在报文外面再加一层IP封装,整个过程比LVS/DR模式多一次报文的封装/解封过程。LVS/DR只支持本地网络,LVS/TUN却可以跨机房。
LVS-DR: 直接路由,此种方式是最常用的方式,
所有的Director和RealServer都在同一个物理网络中(交换机)并且都只有一块网卡。
常用的几种调度:
1. 轮叫调度 rr 所有real_server轮流
2. 加权轮叫 wrr 按照性能比例,好的多分,差的少分
3. 最少链接 lc 给链接数少的分
4. 加权最少链接 wlc 按照性能比例,好的多分,差的少分,链接数也要保持比例
5. 基于局部性的最少连接调度算法 lblc
6. 复杂的基于局部性最少的连接算法 lblcr
7. 目标地址散列调度算法 dh
8. 源地址散列调度算法 sh
用DR模式配置(必须同一网段)
首先准备构建集群的三台设备
direct_server:192.168.254.17
real_server1:192.168.254.18
real_server2:192.168.254.19
拟定vip为:192.168.254.250
direct_server:
# yum -y install ipvsadm
# yum -y install httpd*
# ipvsadm -C
# ipvsadm -A -t 192.168.11.250: -s rr
# ipvsadm -a -t 192.168.11.250: -r 192.168.11.138: -g
# ipvsadm -a -t 192.168.11.250: -r 192.168.11.140: -g
# ifconfig ens33: 192.168.11.250 broadcast 192.168.11.250 netmask 255.255.255.255 up 在ens33的子网卡添加一个虚拟ip,保证服务可以访问到VIP;
# route add -host 192.168.11.250 dev ens33:
添加一个路由通过ens33来访问Vip 192.168.254.250
# vim /dev/sysconfig/ipvsadm 随便编辑一下
# ipvsadm -Ln --stats -L显示内核虚拟服务器表
--zero 清空流量 -n 输出IP地址和端口的数字形式
/# -a添加 -t 添加一个虚拟IP的tcp 协议
/# -C:–clear 清除内核虚拟服务器表中的所有记录
/# -A添加一个虚拟IP -s调度器
/# -r real_server -g DR模式
/# ens33:0 是子网卡,设置第二个ip
/# broadcast 广播
/# ipvsadm文件缺失后会导致ipvsadm start失败
real_server:
# yum -y install httpd*
# ifconfig lo: 192.168.11.250 broadcast 192.168.11.250 netmask 255.255.255.255 up
# route add -host 192.168.11.250 dev lo:
/#loopback网卡,默认地址127.0.0.
# echo "">/proc/sys/net/ipv4/conf/lo/arp_ignore
# echo "">/proc/sys/net/ipv4/conf/lo/arp_announce
# echo "">/proc/sys/net/ipv4/conf/all/arp_ignore
# echo "">/proc/sys/net/ipv4/conf/all/arp_announce
# vim /etc/www/html/index.html
<h1>this is (或者140) host</h1>
# systemctl start httpd.service
测试:
用第四台虚拟机
# curl 192.168.11.250 出现下图情况即成功
也可以windows装curl包后,在命令行输入上述命令测试
arp_ignore:定义接收到ARP请求时的响应级别
0:默认,只用本地配置的有响应地址都给予响应
1:仅仅在目标IP是本地地址,并且是配置在请求进来的接口上的时候才给予响应
(仅在请求的目标地址配置请求到达的接口上的时候,才给予响应)
arp_announce:定义将自己的地址向外通告时的级别
0:默认,表示使用配置在任何接口的任何地址向外通告
1:尽量仅向目标网络通告与其网络匹配的地址
2:仅向与本地接口上地址匹配的网络进行通告
tun隧道模式
lvs-server:
ifconfig tunl0 192.168.254.250 broadcast 192.168.254.250 netmask 255.255.255.0 up
route add -host 192.168.254.250 dev tunl0
ipvsadm -A -t 192.168.254.250: -s rr
ipvsadm -a -t 192.168.254.250: -r 192.168.254.18 -i
ipvsadm -a -t 192.168.254.250: -r 192.168.254.19 -i
real server:
ifconfig tunl0 192.168.254.250 netmask 255.255.255.255 broadcast 192.168.254.250 up
route add -host 192.168.254.250 dev tunl0
echo "" >/proc/sys/net/ipv4/conf/tunl0/arp_ignore
echo "" >/proc/sys/net/ipv4/conf/tunl0/arp_announce
echo "" >/proc/sys/net/ipv4/conf/all/arp_ignore
echo "" >/proc/sys/net/ipv4/conf/all/arp_announce
echo "" >/proc/sys/net/ipv4/conf/tunl0/rp_filter
echo "" > /proc/sys/net/ipv4/conf/all/rp_filter
0:不开启源地址校验。
1:开启严格的反向路径校验。对每个进来的数据包,校验其反向路径是否是最佳路径。
如果反向路径不是最佳路径,则直接丢弃该数据包。
2:开启松散的反向路径校验。对每个进来的数据包,校验其源地址是否可达,即反向路径是否能通(通过任意网口),
如果反向路径不同,则直接丢弃该数据包。
虚拟集群LVS及DR模式搭建笔记的更多相关文章
- CentOS高可用集群LVS+Keepalived(DR模式)
操作系统:CentOS6.5_x64 mini 负载均衡模式:DR(直接路由) LVS与Keepalived简述: LVS是Linux Virtual Server的简写,意即Linux虚拟服务器,是 ...
- LVS+Keepalived(DR模式)学习笔记
1.简述 在互联网的中型项目中,单服务器往往已经无法满足业务本身的性能要求,这时候就会平行扩展,把负载分摊到数台服务器上(集群).一般实现集群有DNS轮询,LVS,nginx负载均衡. 集群主要目的包 ...
- LVS+Keepalived+Nginx+Tomcat高可用负载均衡集群配置(DR模式,一个VIP,多个端口)
一.概述 LVS作用:实现负载均衡 Keepalived作用:监控集群系统中各个服务节点的状态,HA cluster. 配置LVS有两种方式: 1. 通过ipvsadm命令行方式配置 2. 通过Red ...
- LVS基于DR模式搭建负载均衡群集
LVS -DR模式集群架构原理图
- keepalived的功能及DR模式搭建笔记
一.HA集群中的相关术语 1.节点(node) 运行HA进程的一个独立主机,称为节点,节点是HA的核心组成部分,每个节点上运行着操作系统和高可用软件服务,在高可用集群中,节点有主次之分,分别称之为主节 ...
- 集群--LVS的DR模型配置
1.查看内核是否有IPVS内核模块 grep -i 'ip_vs' /boot/config-2.6.32-431.el6.x86_64
- Linux centosVMware Linux集群架构LVS DR模式搭建、keepalived + LVS
一.LVS DR模式搭建 三台机器 分发器,也叫调度器(简写为dir) davery :1.101 rs1 davery01:1.106 rs2 davery02:11.107 vip 133.200 ...
- LVS DR模式搭建、keepalived+lvs
1.LVS DR模式搭建 条件: 即三台机器,在同一内网. 编辑脚本文件:/usr/local/sbin/lvs_dr.sh #! /bin/bashecho 1 > /proc/sys/net ...
- LVS DR模式搭建 keepalived lvs
LVS DR模式搭建• 三台机器 • 分发器,也叫调度器(简写为dir)172.16.161.130 • rs1 172.16.161.131 • rs2 172.16.161.132 • vip 1 ...
随机推荐
- BZOJ 4229: 选择 LCT_独创方法_边双
考虑如果两点在一个环中,那么这两点一定可以构出双联通分量. 考虑环和环镶嵌,那么两个环中的点一定都互为双联通分量. 由此,我们想到一个算法: 将删边转为反向加边,用LCT维护图. 当我们连接两个点时, ...
- 路飞学城Python-Day49
55-善于使用父亲的padding,而不是margin 56-文本属性和字体属性 div{ width: 300px; height: 100px; border: 1px solid red; /* ...
- 基础——(5)D Flip-Flop(D触发器)
之前搞了一个 D-Latch,看一下下图是怎么变化的 In D-latch anytime its enabled the input D is going to be output at Q 使用c ...
- MVC总结
一.转自https://zhuanlan.zhihu.com/p/35680070 MVC无人不知,可很多程序员对MVC的概念的理解似乎有误,换言之他们一直在错用MVC,尽管即使如此软件也能被写出来, ...
- 异构关系数据库(MySql与Oracle)之间的数据类型转换参考
一.MySQL到Oracle的数据类型的转变: 编号 MySQL ToOracle Oracle 1 GEOMETRY BLOB BLOB 2 GEOMETRYCOLLECTION BLOB BLOB ...
- 【 【henuacm2016级暑期训练】动态规划专题 P】Animals
[链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 第i只动物如果饲养它的话. 代价是固定的就是(n-i+1)a[i] 所以相当于给你n个物品,每个物品的重量为(n-i+1)a[i], ...
- [Angular + Unit Testing] Mock HTTP Requests made with Angular’s HttpClient in Unit Tests
In a proper unit test we want to isolate external dependencies as much as possible to guarantee a re ...
- openssl之EVP系列之10---EVP_Sign系列函数介绍
openssl之EVP系列之10---EVP_Sign系列函数介绍 ---依据openssl doc/crypto/EVP_SignInit.pod翻译 (作者:DragonKing, ...
- 图论之tarjan缩点
缩点,就是把一张有向有环图中的环缩成一个个点,形成一个有向无环图. 首先我介绍一下为什么这题要缩点(有人肯定觉得这是放屁,这不就是缩点的模板题吗?但我们不能这么想,考试的时候不会有人告诉你打什么板上去 ...
- xBIM 高级01 IFC多模型合并
系列目录 [已更新最新开发文章,点击查看详细] 多模型合并可以实现以下功能: 覆盖多个模型以表现得像一个模型 统一访问数据,就像它是单个模型一样 只读.要修改模型的内容,您必须使用特定模型 不 ...