Nginx+keepalived高性能网站负载均衡
Nginx+Keepalived的说明及环境说明
Nginx负载均衡作服务器遇到的故障一般有①服务器网线松动等网络故障;②服务器硬件故障从而crash;③nginx服务死掉;遇到前二者情况,keeaplived是能起到HA的作用的;然而遇到③种情况就没有办法了,但可以通过shell监控解决这问题,从而实现真正意义上的负载均衡高可用。下面将其安装步骤详细说明下:
环境介绍:
rhel5.5(32位)、nginx-1.5.3、keepalived-1.2.7
主nginx:192.168.1.131
从nginx:192.168.1.130
Vip:192.168.1.50
安装nginx及相关配置
1.#添加运行nginx的用户和组www
2.groupadd www
3.useradd -g www www
4.tar xzf nginx-1.5.3.tar.gz
5.cd nginx-1.5.3/
6../configure --user=www --group=www --prefix=/usr/local/nginx/
7.make && make install
安装之前你要先安装“pcre”正则库文件,yum �Cy install “pcre*”。
安装完之后编辑配置文件vim /usr/local/nginx/conf/nginx.conf
安装keepalived,让其作为nginx的HA
1.tar xzf keepalived-1.2.7.tar.gz
2. cd keepalived-1.2.7
3../configure --prefix=/usr/local/keepalived
4.make&& make install
5.cp /usr/local/keepalived/sbin/keepalived /usr/sbin/
6.cp/usr/local/keepalived/etc/sysconfig/keepalived /etc/sysconfig/
7.cp /usr/local/keepalived/etc/rc.d/init.d/keepalived /etc/init.d/
8.mkdir /etc/keepalived/
9.cd /etc/keepalived/
安装之前要先安装一些依赖库:
yum �Cy installkernel-devel
yum �Cy installpopt-devel //#这个库文件有时候默认已经安装了;
yum �Cy installopenssl-devel
安装完成之后编辑文件 vim keepalived.conf
在配置文件里面还得加入调用刚才上面忘了加入结果测试的时候不自动调用检测脚本
针对Keepalived的不足,用nginx.sh来监控nginx进程,实现真正意义上的负载均衡高可用。我这里把脚本存放在了/usr/local/keepalived/nginx.sh.脚本的本意就是监控nginx如果进程消失,则尝试重启nginx,如果失败则立即停掉keepalived服务,让另一台接手。
编辑完成之后service keepalived start
然后ip addr 查看下虚拟ip跟eth0绑定在了一块。说明vip已经启动,这样主keepalived就配置好了,从的跟主的配置文件差不多。
测试方法
在后台网站上面分别建立不同的主页,index.html的内容为,192.168.1.129,192.168.1.128然后用客户机访问curl 192.168.1.50,主nginx服务down之后从会马上接替提供服务。