Nginx 负载均衡
说明
- Nginx 基于OSI七层(应用层)
- 使用Nginx 反向代理 实现负载均衡
-
Nginx负载均衡 如果某台server down机 Nginx不会去访问,自动跳转到正常的机器上去。
实验环境
- 三台主机:Linux Centos 6.4 32位
- 调度器Director:192.168.1.160(公网IP)、192.168.1.100(VIP)
- HTTP真实服务器Real server1:192.168.1.115(公网IP)
- HTTP真实服务器Real server2:192.168.1.111(公网IP)
- Director端需要安装Nginx:
- Nginx安装:http://www.cnblogs.com/xiangsikai/p/8118439.html
实验操作
1、配置Nginx主配置文件、http{}内加入
vim /usr/local/nginx/conf/nginx.conf
http{ # upstream反向代理 xsk 自定义名字 upstream xsk{ # server代理的IP:端口 可加入多个 端口默认为80 # weight权重值 权重范围 0 ~ 100 server 192.168.1.111 weight=2; server 192.168.1.115 weight=1; } server { # 代理端监听端口 listen 80; # 代理端访问的域名 server_name www.dir.com; location / { # 指定http://name/ 要与upstream name 对应一致 proxy_pass http://xsk/; proxy_set_header Host $host; proxy_set_header X-real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; }}}
2、检测配置文件
命令:/usr/local/nginx/sbin/nginx -t nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
3、重启Nginx服务
/etc/init.d/nginx restart
4、测试Nginx负载均衡
[root@nginx conf]# curl -xlocalhost:80 www.dir.com LVS 1 [root@nginx conf]# curl -xlocalhost:80 www.dir.com LVS 1 [root@nginx conf]# curl -xlocalhost:80 www.dir.com LVS 2 [root@nginx conf]# curl -xlocalhost:80 www.dir.com LVS 1 [root@nginx conf]# curl -xlocalhost:80 www.dir.com LVS 1 [root@nginx conf]# curl -xlocalhost:80 www.dir.com LVS 2
测试 其中一个web故障,就不访问 [root@nginx conf]# curl -xlocalhost:80 www.dir.com LVS 1 [root@nginx conf]# curl -xlocalhost:80 www.dir.com LVS 1 [root@nginx conf]# curl -xlocalhost:80 www.dir.com LVS 1 [root@nginx conf]# curl -xlocalhost:80 www.dir.com LVS 1 [root@nginx conf]# curl -xlocalhost:80 www.dir.com LVS 1