Nginx负载均衡集群
2016-01-21 21:34:26
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://daixuan.blog.51cto.com/5426657/1737460
Nginx负载均衡集群
Nginx负载均衡功能实际上和nginx的代理是同一个功能,只是把之前的代理一台机器改为代理多台机器而已,nginx的负载均和和lvs相比,nginx属于更高级的应用层,不牵扯到IP和内核改动,它只是单存的把用户的请求转发到后面的机器上,因此,后端的real server不需要配置公网IP
一、配置环境
nginx分发器(一个公网192.168.101.230)
rs1内网IP(192.168.101.108)
rs2内网IP(192.168.101.109)
二、具体配置过程
[root@daixuan ~]# cd /usr/local/nginx/conf/vhosts/
[root@daixuan vhosts]# ls
default.conf proxy.conf test.conf
[root@daixuan vhosts]# vim lb.conf
upstream test {
ip_hash;
server 192.168.101.108:80;
server 192.168.101.109:80;
}
server {
listen 80;
server_name www.daixuanlinux.com;
location / {
proxy_pass http://test/;
proxy_set_header Host $host;
}
}
[root@daixuan vhosts]# /etc/init.d/nginx restart
停止 nginx: [确定]
正在启动 nginx: [确定]
[root@daixuan vhosts]# ipvsadm -C
[root@daixuan vhosts]# iptables -t nat -F
[root@daixuan vhosts]# iptables -F
[root@daixuan vhosts]# netstat -lnp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address Stat e PID/Program name
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LIST EN 2492/mysqld
tcp 0 0 0.0.0.0:80 0.0.0.0:* LIST EN 2947/nginx
2、rs服务器上
在http段加入以下代码:
[root@rs1 html]# vim /etc/nginx/nginx.conf
server{
listen 80;
server_name www.daixuanlinux.com;
index index.html;
root /usr/share/nginx/html/;
}
[root@rs1 html]# cat /usr/share/nginx/html/index.html
rs1rs1
重启nginx服务
三、测试 nginx没有转发 ???
[root@dir ~]# curl -x192.168.101.108:80 www.daixuanlinux.com
rs1rs1
[root@dir ~]# curl -x192.168.101.230:80 www.daixuanlinux.com
<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.1//EN” “http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd”>
<html xmlns=”http://www.w3.org/1999/xhtml” xml:lang=”en”>
<head>
<title>Test Page for the Nginx HTTP Server on EPEL</title>
这个结果与cat结果一样,是dir的默认nginx页面
红色标注的nginx的配置目录完全不是我的/usr/local/nginx/conf下,难道这个nginx不是我手动编译安装的nginx?事实就是这样,是不是很二逼,呵呵,找到问题就好
killall nginx
yum remove nginx
service nginx restart
一切正常
curl -xlocalhost:80 www.daixualinux.com
rs1rs1和rs2rs2轮流切换,Nginx实现了转发功能,实现了负载均衡
转载请注明:SuperIT » Nginx负载均衡集群