栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

Nginx负载均衡配置

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Nginx负载均衡配置

Nginx负载均衡配置 一、Nginx操作命令
start nginx : 启动nginx

nginx -s reload :修改配置后重新加载生效

nginx -s reopen :重新打开日志文件

nginx -t -c /path/to/nginx.conf 测试nginx配置文件是否正确

关闭nginx:

nginx -s stop : 快速停止nginx

nginx -s quit :完整有序的停止nginx
二、启动各tomcat服务器上的服务
# 启动服务
./bin/startup.sh
#  监听日志
tail -f ./logs/catalina.out
三、修改配置文件
# Nginx安装目录下
cd conf/
vim nginx.conf
  • server{ }上方添加
#  upstream是关键字,不可修改
#  www_server_pool是自定义名称
#  server是关键字,不可修改
#  weight=1 weight代表权重,数值越大分配的请求就越多
    upstream www_server_pool {
    server 10.0.0.5;   #<==这一行标签和下一行是等价的
    server 10.0.0.6:80 weight=3 max_fails=1 fails_timeout=10s; #<==此行标签为默认配置
    server 10.0.0.7:80 weight=2 max_fails=2  fails_timeout=10s backup;
    server 10.0.0.8:80 weight=1 max_fails=3 fails_timeout=20s backup;
}
  • server{ }中修改location / {}
    upstream www_server_pool {
    server 10.0.0.5;   #<==这一行标签和下一行是等价的
    server 10.0.0.6:80 weight=3 max_fails=1 fails_timeout=10s; #<==此行标签为默认配置
    server 10.0.0.7:80 weight=2 max_fails=2  fails_timeout=10s backup;# backup 备份服务器
    server 10.0.0.8:80 weight=1 max_fails=3 fails_timeout=20s backup;

}
 server {
    listen 80;
    server_name www_server_pools;
        location / {
            proxy_pass http://www_server_pools;
            proxy_set_header Host $host;
            proxy_set_header X-Forwarded-For $remote_addr;
            proxy_redirect default;
            proxy_buffer_size 512k;
            proxy_buffers 6 512k;
            proxy_busy_buffers_size 512k;
            proxy_temp_file_write_size 512k;
            client_max_body_size 100m;
        }
}
四、加载配置文件启动
#nginx/sbin目录下
./nginx -c /usr/nginx/conf/nginx.conf
五、报错解决
  • 启动报错
[root@wNginx sbin]# ./nginx -c /usr/nginx/conf/nginx.conf
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] still could not bind()

  • 使用nginx -s stop 后停止服务,相关进程仍然存在
  • kill掉服务
[root@Nginx sbin]# ps aux|grep nginx
root      12669  0.0  0.0  20572   392 ?        Ss   12:44   0:00 nginx: master process ./nginx
nobody    12671  0.0  0.0  23100  1372 ?        S    12:44   0:00 nginx: worker process
root      17943  0.0  0.0 112824   980 pts/0    R+   17:28   0:00 grep --color=auto nginx
[root@Nginx sbin]# kill 12669
[root@Nginx sbin]# kill 12671
bash: kill: (12671) - 没有那个进程
[root@Nginx sbin]# ps aux|grep nginx
root      17964  0.0  0.0 112824   980 pts/0    S+   17:29   0:00 grep --color=auto nginx
[root@Nginx sbin]# ./nginx -c /usr/nginx/conf/nginx.conf

  • 成功启动
六、修改tomcat服务器上的index.jsp
  • 编辑tomcat服务器上的index.jsp
vim ./webapps/ROOT/index.jsp
  • 修改tomcat服务器上的index.jsp区分服务

1

  • 其他tomcat服务器同样修改
七、均衡负载策略 1.轮询
 upstream www_server_pool {
   server 10.0.0.5;  
   server 10.0.0.6:80;
   server 10.0.0.7:80;
   server 10.0.0.8:80 ;

}
2.weight权重
   upstream www_server_pool {
    server 10.0.0.5;   #<==这一行标签和下一行是等价的
    server 10.0.0.6:80 weight=3 max_fails=1 fails_timeout=10s; #<==此行标签为默认配置
    server 10.0.0.7:80 weight=2 max_fails=2  fails_timeout=10s backup;
    server 10.0.0.8:80 weight=1 max_fails=3 fails_timeout=20s backup;

}
3.ip_hash
  • 此时访问的tomcat服务同客户端IP绑定,解决session共享问题,宕机后无法解决session共享问题
   upstream www_server_pool {
    ip_hash;
    server 10.0.0.5;  
    server 10.0.0.6:80;
    server 10.0.0.7:80;
    server 10.0.0.8:80 ;

}
4.least_conn
  • 动态将请求转发给请求较少的服务器
   upstream www_server_pool {
    least_conn;
    server 10.0.0.5;  
    server 10.0.0.6:80;
    server 10.0.0.7:80;
    server 10.0.0.8:80 ;
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/830144.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号