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 ...
随机推荐
- 潭州课堂25班:Ph201805201 WEB 之 jQuery 第七课 (课堂笔记)
jq 的导入 <body> <script src="https://cdn.bootcss.com/jquery/3.3.1/jquery.js">< ...
- java的关键字与保留字
1,Java 关键字列表 (依字母排序 共50组): abstract, assert, boolean, break, byte, case, catch, char, class, const(保 ...
- C++学习笔记38:事件机制
事件基本概念 操作系统或应用程序内部发生某件事,程序的某个组件需要响应该事件,并进行特定处理 面向对象架构中,事件响应函数最可能为成员函数 问题:指向类成员函数的指针不能转换为哑型指针void *,也 ...
- SharePoint 2019 离线安装准备工具
前言 最近需要安装SharePoint 2019,然而,服务器并没有网络,所以需要离线安装. 离线安装的步骤很简单,就是把所以得准备工具下载下来,然后修改好命令,使用命令安装即可. 准备工具下载路径 ...
- 浅谈压缩感知(二十二):压缩感知重构算法之正则化正交匹配追踪(ROMP)
主要内容: ROMP的算法流程 ROMP的MATLAB实现 一维信号的实验与结果 测量数M与重构成功概率关系的实验与结果 一.ROMP的算法流程 正则化正交匹配追踪ROMP算法流程与OMP的最大不同之 ...
- C语言(C++语言)中##(两个井号)和#(一个井号)用法[转]
文章来源:http://blog.csdn.net/starboybenben/article/details/49803315 C语言(C++语言)中的宏(Macro)属于编译器预处理的范畴,属于编 ...
- java 中的锁 -- 偏向锁、轻量级锁、自旋锁、重量级锁(转载)
之前做过一个测试,详情见这篇文章<多线程 +1操作的几种实现方式,及效率对比>,当时对这个测试结果很疑惑,反复执行过多次,发现结果是一样的: 1. 单线程下synchronized效率最高 ...
- NodeJs相关系列文章
1.图片上传之FileAPI与NodeJs 2.NodeJs之调试 3.CentOS下使用NVM 4.NodeJs之进程守护 5.Ubuntu下使用nvm 6.NodeJs之pm2 7.NodeJs之 ...
- 空间谱专题10:MUSIC算法
作者:桂. 时间:2017-09-19 19:41:40 链接:http://www.cnblogs.com/xingshansi/p/7553746.html 前言 MUSIC(Multiple ...
- golang channel select
尝试多个channel同时触发时,select的表现: package main import ( "fmt" "time" ) func loop(ch ch ...