#yyds干货盘点# nginx实现动静分离的负载均衡集群配置方法
Posted Jr_C
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了#yyds干货盘点# nginx实现动静分离的负载均衡集群配置方法相关的知识,希望对你有一定的参考价值。
使用nginx实现动静分离的负载均衡集群 (动态网页和静态网页)
nginx是一个web服务软件 同时还可以做反向代理 可以实现一个负载均衡器 也可以当作一个中间件理解
haproxy 也相当于一个中间件 但是没有web服务 他是纯纯的一个做负载均衡的软件没有其他功能
安装相应工具
编译工具
yum install -y gcc gcc-c++ autoconf automake
压缩工具等
yum install -y zlib zlib-devel openssl openssl-devel pcre pcre-devel
将nginx源码包传到linux上并解压
进入解压目录中
进行配置 (要开启一些模块)
./configure --prefix=/usr/local/nginx --with-http_dav_module --with-http_stub_status_module --with-http_addition_module --with-http_sub_module --with-http_flv_module --with-http_mp4_module
解释:
--prefix 配置安装目录
--with 添加模块 (各个模块自行百度)
进行编译
先查看cpu核数
cat /proc/cpuinfo | grep processor | wc -l
然后
make -j cpu核数
然后安装
make install
【2021/04/13 22:04】
没有make命令还要安装yum -y install gcc automake autoconf libtool make
然后添加使用nginx的用户
useradd -u 8000 -s /sbin/nologin nginx
解释:指定用户uid为8000指定bash为nologin用户名为nginx
id nginx检查以下nginx用户
uid gid 组 都为8000
然后
检查是否安装成功
cd /usr/local/nginx如果有这个目录且目录下存在 conf html logs sbin
表示安装成功 conf下存储配置文件 html下存储网页文件 logs下存储日志文件 sbin存储一些脚本
然后启动nginx查看工作是否正常
./sbin/nginx
这里还要打开防火墙的80端口 nginx用的分发到哪个服务就开启哪个服务的对应端口
去访问服务器地址可以看到nginx的欢迎web界面
然后设置开机启动
echo /usr/local/nginx/sbin/nginx & >> /etc/rc.local (似乎有问题)
配置配置文件让他成为分发器
首先修改第一行的nginx用户 去掉#号 把nobady修改为nginx nginx
接下来找到43行的location / {} 模块 在当中增加定义分发策略的东西
增加以下内容
if ($request_uri ~* \\.html$){
proxy_pass http://htmlservers;
}
if ($request_uri ~* \\.php$){
proxy_pass http://phpservers;
}
proxy_pass http://picservers;
注意if后面的空格
就是两个if判断访问的文件类型 然后分发到不同的后端服务器
注意65到71行的php功能模块要注释掉它是让分发器具有php解析功能就是当你访问php页面时分发器直接给你解析了 分发器没有php的话还会报错 不需要它所以把它注释掉 只需要后端服务器来承担解析任务就行了
然后
增加以下内容
upstream htmlservers {
server 192.168.1.1:80;
server 192.168.1.1:80;
}
upstream phpservers {
server 192.168.1.1:80;
server 192.168.1.1:80;
}
upstream picservers {
server 192.168.1.1:80;
server 192.168.1.1:80;
}
默认使用轮询规则
如果使用权重规则的话在端口号后面加一个空格然后写上 weight=权重即可
访问本机ip html php pic都可看到轮询效果
php 和 pic 自行在apache服务器中配置
以上是关于#yyds干货盘点# nginx实现动静分离的负载均衡集群配置方法的主要内容,如果未能解决你的问题,请参考以下文章
(centos6)Nginx+Tomcat动静分离#yyds干货盘点#
centos7(apache+tomcat动静分离)#yyds干货盘点#