文章目录
一 系统环境配置
1台负载均衡服务器
10.0.0.5
3台Nginx服务器
10.0.0.7 10.0.0.8 10.0.0.9
[root@lb01 ~]# cat /etc/redhat-release
CentOS Linux release 7.5.1804 (Core)
[root@lb01 ~]# uname -r
3.10.0-862.el7.x86_64
二 负载均衡服务器端操作(10.0.0.5)
1 安装nginx
下载rpm包,安装Nginx服务(rpm包安装)
[root@lb01 ~]# rpm -ivh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
[root@lb01 ~]# yum install -y nginx
2 编写配置文件
首先进行文件备份,并删掉其中的注释行与空行内容
cp /etc/nginx/nginx.conf{,.bak}
grep -Ev '^$|#' nginx.conf.bak >nginx.conf
此处对负载均衡的权重进行设置,weight值越大,被调度的频率越高。
比如访问6次
3次给到10.0.0.7
2次给到10.0.0.8
1次给到10.0.0.9
[root@lb01 conf.d]# cat lb.conf
upstream oldboy {
server 10.0.0.7:80 weight=3;
server 10.0.0.8:80 weight=2;
server 10.0.0.9:80 weight=1;
}
server {
listen 80;
server_name www.oldboy.com;
location / {
proxy_pass http://oldboy;
}
}
三 web服务器端操作(10.0.0.7/10.0.0.8/10.0.0.9)
1 安装Nginx软件及相关配置(编译安装),点下方链接。
2 创建站点目录(3个都要做,操作都一样)
mkdir -p /html/{www,blog,bbs}
3 修改配置文件(3个都要做,操作都一样)
# 让 nginx配置文件只识别www站点目录下的资源
vim /app/nginx/conf/nginx.conf
#include /app/nginx/conf/conf.d/*.conf;
include /app/nginx/conf/conf.d/www.conf;
# www配置文件,主要修改站点目录
(原来的站点目录是/app/nginx/html/www)
[root@web01 conf.d]# cat www.conf
server {
listen 80;
server_name www.oldboy.com abc.com;
location / {
root /html/www;
index index.html;
# auth_basic "oldboy-sz-01";
# auth_basic_user_file /app/nginx/html/www/htpasswd;
#autoindex on;
charset utf-8;
}
}
4 搭建测试环境(不同服务器下不同命令)
10.0.0.7
for name in www bbs blog;do echo "$name 10.0.0.7" > /html/$name/wenwen.html;done
10.0.0.8
for name in www bbs blog;do echo "$name 10.0.0.8" > /html/$name/wenwen.html;done
10.0.0.9
for name in www bbs blog;do echo "$name 10.0.0.9" > /html/$name/wenwen.html;done
四 负载均衡环境测试(在10.0.0.5上进行)
直接访问web服务器
[root@lb01 nginx]# curl -H host:www.oldboy.com 10.0.0.7/wenwen.html
www 10.0.0.7
[root@lb01 nginx]# curl -H host:www.oldboy.com 10.0.0.8/wenwen.html
www 10.0.0.8
[root@lb01 nginx]# curl -H host:www.oldboy.com 10.0.0.9/wenwen.html
www 10.0.0.9
#访问负载均衡服务器
[root@lb01 nginx]# curl -H host:www.oldboy.com 10.0.0.5/wenwen.html
www 10.0.0.7
[root@lb01 nginx]# curl -H host:www.oldboy.com 10.0.0.5/wenwen.html
www 10.0.0.8
[root@lb01 nginx]# curl -H host:www.oldboy.com 10.0.0.5/wenwen.html
www 10.0.0.7
[root@lb01 nginx]# curl -H host:www.oldboy.com 10.0.0.5/wenwen.html
www 10.0.0.9
[root@lb01 nginx]# curl -H host:www.oldboy.com 10.0.0.5/wenwen.html
www 10.0.0.8
[root@lb01 nginx]# curl -H host:www.oldboy.com 10.0.0.5/wenwen.html
www 10.0.0.7