LVS DR模式搭建 keepalived lvs
LVS DR模式搭建
• 三台机器
• 分发器,也叫调度器(简写为dir)172.16.161.130
• rs1 172.16.161.131
• rs2 172.16.161.132
• vip 172.16.161.200(同网段) • dir上编写脚本 vim /usr/local/sbin/lvs_dr.sh //内容如下
#! /bin/bash
echo > /proc/sys/net/ipv4/ip_forward
ipv=/usr/sbin/ipvsadm
vip=172.16.161.200
rs1=172.16.161.131
rs2=172.16.161.132
#注意这里的网卡名字
ifdown ens33
ifup ens33
ifconfig ens33: $vip broadcast $vip netmask 255.255.255.255 up
route add -host $vip dev ens33:
$ipv -C
$ipv -A -t $vip: -s wrr
$ipv -a -t $vip: -r $rs1: -g -w
$ipv -a -t $vip: -r $rs2: -g -w sh /usr/local/sbin/lvs_dr.sh 执行一下看是否有错误 • 两台rs上也编写脚本 vim /usr/local/sbin/lvs_rs.sh//内容如下
#/bin/bash
vip=172.16.161.200
#把vip绑定在lo上,是为了实现rs直接把结果返回给客户端
ifdown lo
ifup lo
ifconfig lo: $vip broadcast $vip netmask 255.255.255.255 up
route add -host $vip lo:
#以下操作为更改arp内核参数,目的是为了让rs顺利发送mac地址给客户端
#参考文档www.cnblogs.com/lgfeng/archive////.html
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
• 分别在dir上和两个rs上执行这些脚本
• 测试
清空规则 iptables -t nat -F
curl 172.16.161.200 浏览器访问 172.16.161.200

• 完整架构需要两台服务器(角色为dir)分别安装keepalived软件,目的是实现高可用,但keepalived本身也有负载均衡的功能,所以本次实验可以只安装一台keepalived
• keepalived内置了ipvsadm的功能,所以不需要再安装ipvsadm包,也不用编写和执行那个lvs_dir的脚本
• 三台机器分别为:
• dir(安装keepalived)133.130
• rs1 133.132
• rs2 133.133
• vip 133.200 如果rs宕机keepalived就会检测到服务器宕机就不会转发到该服务器上 • 编辑keepalived配置文件 vim /etc/keepalived/keepalived.conf
• 需要更改里面的ip信息 vrrp_instance VI_1 {
#备用服务器上为 BACKUP
state MASTER
#绑定vip的网卡为ens33
interface ens33
virtual_router_id
#备用服务器上为90
priority
advert_int
authentication {
auth_type PASS
auth_pass aminglinux
}
virtual_ipaddress {
172.16.161.200
}
}
virtual_server 172.16.161.200 {
#(每隔10秒查询realserver状态)
delay_loop
#(lvs 算法)
lb_algo wlc
#(DR模式)
lb_kind DR
#(同一IP的连接60秒内被分配到同一台realserver)
persistence_timeout
#(用TCP协议检查realserver状态)
protocol TCP
real_server 172.16.161.131 {
#(权重)
weight
TCP_CHECK {
#(10秒无响应超时)
connect_timeout
nb_get_retry
delay_before_retry
connect_port
}
}
real_server 172.16.161.132 {
weight
TCP_CHECK {
connect_timeout
nb_get_retry
delay_before_retry
connect_port
}
}
} • 执行ipvsadm -C 把之前的ipvsadm规则清空掉
• systemctl restart network 可以把之前的vip清空掉
• 两台rs上,依然要执行/usr/local/sbin/lvs_rs.sh脚本
• keepalived有一个比较好的功能,可以在一台rs宕机时,不再把请求转发过去
• 测试
LVS DR模式搭建 keepalived lvs的更多相关文章
- LVS DR模式搭建、keepalived+lvs
1.LVS DR模式搭建 条件: 即三台机器,在同一内网. 编辑脚本文件:/usr/local/sbin/lvs_dr.sh #! /bin/bashecho 1 > /proc/sys/net ...
- 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搭建介绍
参考文献 http://blog.51cto.com/taoxie/2066993 疑问: 1.为什么要修改RealServer的返回arp响应和发送arp请求参数 echo "1&quo ...
- 负载均衡集群介绍、LVS介绍、LVS调度算法、LVS NAT模式搭建
7月4日任务 18.6 负载均衡集群介绍18.7 LVS介绍18.8 LVS调度算法18.9/18.10 LVS NAT模式搭建 扩展lvs 三种模式详解 http://www.it165.net/a ...
- lvs dr 模式请求过程
一. lvs dr 模式请求过程 1.整个请求过程如下: client在发起请求之前,会发一个arp广播的包,在网络中找"谁是vip",由于所有的服务器,lvs和rs都有vip,为 ...
- LVS DR模式 负载均衡服务搭建
LVS 负载均衡 最近在研究服务器负载均衡,阅读了网上的一些资料,发现主要的软件负载均衡方案有nginx(针对HTTP服务的负载均衡),LVS(针对IP层,MAC层的负载均衡).LVS模式工作在网络层 ...
- RHEL6 搭建 keepalived + lvs/DR 集群
搭建 keepalived + lvs/DR 集群 使用Keepalived为LVS调度器提供高可用功能,防止调度器单点故障,为用户提供Web服务: LVS1调度器真实IP地址为192.168.4. ...
- LVS基于DR模式搭建负载均衡群集
LVS -DR模式集群架构原理图
- Keepalived+LVS DR模式高可用架构实践
Keepalived最初是为LVS设计,专门监控各服务器节点的状态(LVS不带健康检查功能,所以使用keepalived进行健康检查),后来加入了VRRP(虚拟路由热备协议(Virtual Route ...
随机推荐
- Wamp下安装Memcached
最近的项目要用到memcache,所以要在本地安装,安装过程中很遇到一些问题,在这里记录下. 我使用的是wamp集成环境,各个版本如下: WampServer Version 2.2 Apache V ...
- 潭州课堂25班:Ph201805201 WEB 之 页面编写 第一课 (课堂笔记)
index.html <!DOCTYPE html> <html lang="en"> <head> <meta charset=&quo ...
- 伪造请求IP
//随机IP function Rand_IP(){ $ip2id= round(rand(600000, 2550000) / 10000); //第一种方法,直接生成 $ip3id= round( ...
- CSS属性级Hack
CSS属性级Hack color:red; /* 所有浏览器可识别*/ _color:red; /* 仅IE6 识别 */ *color:red; /* IE6.IE7 识别 */ ...
- HTML:DOM 对象
ylbtech-HTML:DOM 对象 1. Document 对象返回顶部 1-1. Document 对象 每个载入浏览器的 HTML 文档都会成为 Document 对象. Document 对 ...
- Java 之外,是 Scala 还是 Groovy?【转载】
原文地址 Scala 和 Groovy 都是基于 JVM 的语言,相比 Java,它们都有语法更加简明和表达能力更丰富.对于那些既想不脱离开 JVM 又想避免 Java 繁琐语句的开发人员来说,Sca ...
- What's the difference between ConcurrentHashMap and Collections.synchronizedMap(Map)?
来自:http://stackoverflow.com/questions/510632/whats-the-difference-between-concurrenthashmap-and-coll ...
- 使用Amalgamate将C/C++项目合并成一个.h/.c[pp]文件
简述 C/C++开源库一般是一堆的头文件和源文件,做到声明和实现分离,减小单个模块大小,这在设计上是很好的,但是用起来稍显麻烦.在网上看到有好心人推荐了一个开源工具Amalgamate,专门用来对C/ ...
- os.walk() 目录生成器
目录生成器 Directory tree generator.! walk() 是 generator,直接print() 为 <generator object walk at 0x0000 ...
- Kriging插值法
克里金法是通过一组具有 z 值的分散点生成估计表面的高级地统计过程.与插值工具集中的其他插值方法不同,选择用于生成输出表面的最佳估算方法之前,有效使用克里金法工具涉及 z 值表示的现象的空间行为的交互 ...