用户工具

站点工具


侧边栏

1.bi与可视化saca.dataviz:8运维:8.22集群nginx部署与配置

8.22集群nginx部署与配置

1.nginx安装时添加sticky模块,用于会话粘滞

产品支持基于Nginx的stickky会话粘滞的集群部署方式。
1.下载解压nginx stickky模块

安装配置stickky模块,由于linux版本的差异性,以下仅供参考:
# cd /usr/local/src
# wget https://bitbucket.org/nginx-goodies/nginx-sticky-module-ng/get/master.tar.gz
# tar zxf master.tar.gz
# mv nginx-goodies-nginx-sticky-module-ng-08a395c66e42 nginx-sticky

2.查看现有nginx的编译参数

#/usr/local/nginx/sbin/nginx –V
nginx version: nginx/1.12.2
built by gcc 4.1.2 20080704 (Red Hat 4.1.2-54)
TLS SNI support disabled
configure arguments: --prefix=/usr/local/nginx--user=nobody --group=nobody --with-select_module --with-poll_module--with-file-aio --with-http_ssl_module --with-http_realip_module--with-http_gzip_static_module --with-http_secure_link_module--with-http_sub_module --with-http_stub_status_module--add-module=/root/nginx-http-concat/

3.关闭nginx,加上stickky模块重新编译(建议先备份配置文件)

# service nginx stop
# cd /usr/local/nginx-1.12.2
#./configure --prefix=/usr/local/nginx --user=nobody --group=nobody --with-select_module --with-poll_module --with-file-aio --with-http_ssl_module --with-http_realip_module --with-http_gzip_static_module --with-http_secure_link_module --with-http_sub_module --with-http_stub_status_module --add-module=/root/nginx-http-concat/ --add-module=/usr/local/src/nginx-sticky
# make
# cd /usr/local/nginx/sbin
# mv nginx nginx.old
# cp /usr/local/nginx-1.12.2/objs/nginx ./

其中红色部分与上一步查询出的值相同。其中在make时,假如出现类似于
/root/nginx-sticky-1.2.5//ngx_http_sticky_misc.c: 在函数‘ngx_http_sticky_misc_sha1’中:
/root/nginx-sticky-1.2.5//ngx_http_sticky_misc.c:176:15: 错误:‘SHA_DIGEST_LENGTH’未声明(在此函数内第一次使用)
   u_char hash[SHA_DIGEST_LENGTH];
的错误,手动修改ngx_http_sticky_misc.c文件,新增#include <openssl/sha.h>和#include <openssl/md5.h>,然后再重新make

2.nginx配置负载均衡及静态资源路径

dataviz前端dataviz-web文件夹放到 /usr/local/nginx/html路径下,参考如下配置

    upstream dataviz-service {
        sticky;
        server dv1:8080  weight=5 max_fails=2 fail_timeout=30s;
        server dv2:8080  weight=5 max_fails=2 fail_timeout=30s;
        server dv3:8080  weight=5 max_fails=2 fail_timeout=30s;
        server dv4:8080  weight=5 max_fails=2 fail_timeout=30s;
    }
    server {
        listen       80;
        server_name  localhost;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {
                proxy_pass http://dataviz-service;
                proxy_cookie_path /dataviz-service /;
                proxy_read_timeout 150;
        }

        location /dataviz-web {
            root  /usr/local/nginx/html;
            index index.html;
        }

    }
/var/www/html-133/wiki/data/pages/1.bi与可视化saca.dataviz/8运维/8.22集群nginx部署与配置.txt · 最后更改: 2021/06/04 14:24 由 admin