同步集群环境所有服务器的时间:(时间必须同步,注意防火墙和SELinux状态)
LVS服务器配置:
安装包chrony
修改配置文件vim /etc/chrony.conf添加下面配置
server 172.18.0.1 iburst (同步172.18.0.1服务器的时间) allow 192.168.205.0/24 (允许同步本服务器时间的IP网段) local stratum 10 (当LVS无法同步172.18.0.1服务器的时间时,允许的主机仍可以同步本机时间)
systemctl restart chronyd
RS1服务器配置:
安装包chrony
修改配置文件vim /etc/chrony.conf添加下面配置
server 192.168.205.132 iburst (同步LVS服务器的时间) systemctl restart chronyd
RS2服务器配置:
安装包chrony
修改配置文件vim /etc/chrony.conf添加下面配置
server 192.168.205.132 iburst (同步LVS服务器的时间)
systemctl restart chronyd
搭建网络环境:
LVS服务器有两个网卡,一个配置私网IP一个配置公网IP(LVS服务器需要开启IP转发功能)
echo net.ipv4.ip_forward=1 >> /etc/sysctl.conf
sysctl -p
RS1和RS2默认网关指向LVS的私网IP
nmcli connection modify ens33 ipv4.gateway 192.168.205.132
客户端的网关指向LVS的公网IP
nmcli connection modify ens37 ipv4.gateway 172.18.205.166
此时客户端和RS服务器就可以ping通了
在RS服务器上布置httpd服务调度实现(LVS服务器上安装ipvsadm包)
在LVS服务器上添加集群:
ipvsadm -A -t 172.18.205.166:80 -s rr
在集群中添加RS服务器:
ipvsadm -a -t 172.18.205.166:80 -r 192.168.205.100 -m
ipvsadm -a -t 172.18.205.166:80 -r 192.168.205.160 -m
查看LVS集群和RS服务器:
ipvsadm -ln(选项顺序不能变)
客户端访问:(访问LVS的公网IP)
curl 172.18.205.166
由于指定的调度算法是rr(轮询),如果只有一台机器测试,则看到的结果是两台RS服务器轮流响应
调度算法可以修改为别的调度算法
ipvsadm -E -t 172.18.205.166:80 -s wrr(默认权重都为1)
修改RS服务器权重
ipvsadm -e -t 172.18.205.166:80 -r 192.168.205.160:80 -w 3 -m
LVS-NAT支持端口映射:
ipvsadm -e -t 172.18.205.166:80 -r 192.168.205.160:8080 -w 3 -m
LVS-NAT实现http和https的分开调度(即在不同的集群):
1、RS服务器上安装mod_ssl,实现https
2、添加新的集群
ipvsadm -A -t 172.18.205.166:443 (默认调度算法wlc)
3、添加RS服务器
ipvsadm -a -t 172.18.205.166:443 -r 192.168.205.100:443 -m
ipvsadm -a -t 172.18.205.166:443 -r 192.168.205.160:443 -m
4、客户端访问
curl -k https://172.18.205.166
负载均衡集群设计时要注意的问题
(1) 是否需要会话保持
(2) 是否需要共享存储
共享存储:NAS, SAN, DS(分布式存储)
数据同步:
LVS-NAT:
设计要点:
(1) RIP与DIP在同一IP网络, RIP的网关要指向DIP
(2) 支持端口映射
(3) Director要打开核心转发功能
原文地址:http://blog.51cto.com/13520924/2093475