最近公司项目要做项目架构调整,多配了N台机器,服务器要做集群,有机会参与其中,就把nginx的负载均衡demo做了一下,好记性不如烂笔头,做个笔记以后备用.
1.nginx下载
wget http://nginx.org/download/nginx-1.16.1.tar.gz
2.nginx安装和启动
//依赖 nginx的依赖库
yum -y install pcre-devel openssl openssl-devel
//权限
tar -zxvf nginx-1.16.1.tar.gz
//编译到指定目录
./configure --prefix=/mydir/nginx/
//编译
make && make install
//启动(安装的对应目录下sbin)
cd 对应目录/sbin
./nginx
安装不多赘述
可以参考其他大佬的博客
3.负载均衡策略
别人写的太好了,直接看大佬的文章
4.修改nginx.conf配置
upstream upstream_name{
#这边就默认使用轮询策略了,方便测试
server localhost:8007;//对应的反向代理地址
server localhost:8008;
}
server {
listen 8009;
server_name localhost;
location / {
proxy_pass http://upstream_name/test;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
这边配置完后进行nginx重启 ./nginx -s reload 这边基本就实现反向代理负载均衡了
5.测试
我这边准备了两个包 一个端口8007 一个8008
8007 页面
8008 页面
两个包发布完成后 访问地址 8009 因为我们使用的轮询是可以实现页面切换的.
这样基本实现负载均衡.