LVS+keepalived负载均衡架构(二)

2018-03-17  本文已影响0人  午觉不眠Orz

1. 参考视频

keepalived实现lvs负载均衡调度器高可用

2.视频概述

环境:四台主机,两台lvs实现高可用负载均衡,两台nginx/httpd

前提条件:
(1)各节点时间要同步;必须不能超过一秒,一般使用网络偶时间服务器(ntp server)
(2)确保iptables及selinux不会成为障碍;
(3)各节点之间可通过主机名互相通信;节点的名称设定与hosts文件中解析的主机名都要保持一致;
#uname -n 获得的主机,与解析的主机名要相同;
(4)各节点之间基于密钥认证的方式通过ssh互信通信;
(5)注意lvs/dr模式下,要开启服务器ip_forward数据包转发功能。
ps:3,4点不是必要条件。

实现高可用的操作步骤概述
1)四台主机,配置/etc/hosts文件,并且使用ssh-kegen,ssh-copy-id命令,实现ssh/scp命令的免密操作
2)两台lvs安装ipvsadm和keepalived
3)配置keepalived.conf,注意,此处可以实现tcp/ip协议3,4,7层的功能。具体配置方法网上教程很多,此处略
4)如果keepalived使用LVS/DR模式(自行理解),那么在两台nginx/httpd服务器上,执行常见脚本setparam.h(网上很多教程这个名称),为服务器增加vip,并开启arp抑制。
5)测试curl,是否实现负载均衡和高可用。

6)如果keepalived配置中声明使用LVS/NAT模式,那么步骤4)忽略。

3.视频中重要操作截图

1)关于hosts文件和免密操作的设置截图



3)keepalived.conf配置脚本截图


4)setparam.h脚本截图


补充说明:
arp_ignore: 定义接收到ARP请求时的响应级别;
0:只要本地配置的有相应地址,就给予响应;
1:仅在请求的目标地址配置在到达的接口上的时候,才给予响应;DR模型使用

arp_announce:定义将自己地址向外通告时的通告级别;
0:将本地任何接口上的任何地址向外通告;
1:试图仅向目标网络通告与其网络匹配的地址;
2:仅向与本地接口上地址匹配的网络进行通告;DR模型使用

3. 配置说明参考

keepalived工作原理和配置说明

4. lvs_tun模式

LVS + Keepalived之tun模式
ps:注意到关键点是linux参数之/proc/sys/net/ipv4/conf/tunl0/rp_filter。

上一篇 下一篇

猜你喜欢

热点阅读