Linux深入篇之九:构建企业级Nginx+Keepalived集群架构
随着Nginx在国内的发展潮流,越来越多的互联网公司都在使用Nginx。
Nginx高性能、稳定性成为IT人士青睐的http和反向代理服务器,今天我们来实战构建Nginx+Keepalived高可用架构配置,如下为网络架构图:
1、实验准备:
系统环境:CentOS 6.5 x86_64
Nginx版本:nginx v1.6.2
Keepalived版本:keepalived v1.2.1
Nginx-1:192.168.174.13 (Master)
Nginx-2:192.168.174.14 (Backup)
2、Nginx安装配置
分别在两台服务器安装Nginx、keepalived
3、Keepalived配置
两台服务器端keepalived.conf内容都为如下,都设置为backup,不抢占,注意修改备用机优先级不同:
4、建立check_nginx脚本,以方便检查本地Nginx是否存活更好的切换。Check_nginx.sh脚本内容如下:
5、Nginx配置
在两台Nginx服务器分别新建index.html测试页面,然后启动Nginx服务测试
访问VIP:
通过上面实验:
由于Nginx+keepalived主从配置,始终有一台服务器处于空余状态,那如何更好的利用起来呢?
我们需要借助Nginx+keepalived双主架构来实现,如下图通过改装后的网络架构图:
实验步骤:
1、master上keepalived.conf配置文件内容:
在另一台服务器上只需要:把原先的master改成backup,把backup改成master即可:
另一个master上keepalived.conf配置文件内容:
2、在两台服务器分别启动keepalived服务即可,然后访问两个VIP的测试页面:
2、最后需要在两台Nginx主服务器上配置/data/sh/check_nginx.sh脚本,内容如下:
3、模式其中192.168.174.13宕机,两个VIP在一台服务器,是由于另外一台服务器down机,VIP都漂移到本机网卡下:
总结双主在企业实施中需要注意的地方:
1、配置文件必须设置不同的VRRP名称,同时优先级和VIP设置也同样需要注意。
2、网站总访问量为两台Nginx之和,可以写脚本实现。
3、两个VIP存在后,外网如果需要访问,需要做域名映射到两个VIP上即可。
这样就是基于DNS负载均衡模式。