nginx配置固定访问配置sticky-module模块实现http及tcp健康检查

作者官方网站:http://www.wxl568.cn

user  mwopr;
worker_processes  1;

error_log  logs/error.log  info;

pid        logs/nginx.pid;
events {
    worker_connections  2048;
}

http {
    include  /app/nginx/conf/healcheck.conf;  
    include       mime.types;
    default_type  application/octet-stream;

    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log  logs/access.log  main;
    server_tokens   off;
    sendfile        on;
    tcp_nopush      on;
    tcp_nodelay     on;
    keepalive_timeout  60;

    #gzip 
    gzip on;
    gzip_min_length    1k;
    gzip_buffers       4 16k;
    gzip_http_version  1.0;
    gzip_comp_level    2;
    gzip_types         text/plain application/x-javascript text/css application/xml;
    gzip_vary          on;
    gzip_proxied       any;
    client_max_body_size 20M;

    upstream temple {
    server 10.202.1.1:8080;
     server 10.202.1.1:8080;
    }
upstream temple1 {
    sticky;
    server 10.203.244.145:12180;
    server 10.203.244.146:12180;
    check interval=3000 rise=2 fall=5 timeout=1000 type=tcp;
    # check_http_send "HEAD /mwmonitor/check.jsp HTTP/1.0\r\n\r\n";
    # check_http_expect_alive http_2xx; 
}
    server {    
        listen       8080;
        server_name  localhost;

        access_log  logs/access.log  main;

        location / {
            proxy_set_header Host $host;
            proxy_set_header   X-Real-IP        $remote_addr;
            proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;
            proxy_set_header Cookie $http_cookie;
            proxy_pass http://temple1;
            #root   html;
            #index  index.html index.htm;
        }

        location /check {
            root html;
            index index.html;
        }

        location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|flv|mp3|mp4)$ {
            expires      30d;
        }

        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }}

 

但是只包含http健康检查不包含tcp下面安装nginx可以实现http及tcp健康检查

nginx会话保持之nginx-sticky-module模块

在使用负载均衡的时候会遇到会话保持的问题,常用的方法有:
1.ip hash,根据客户端的IP,将请求分配到不同的服务器上;
2.cookie,服务器给客户端下发一个cookie,具有特定cookie的请求会分配给它的发布者,
注意:cookie需要浏览器支持,且有时候会泄露数据

[name=route]       设置用来记录会话的cookie名称
[domain=.foo.bar]    设置cookie作用的域名
[path=/]          设置cookie作用的URL路径,默认根目录
[expires=1h]        设置cookie的生存期,默认不设置,浏览器关闭即失效,需要是大于1秒的值
[hash=index|md5|sha1]   设置cookie中服务器的标识是用明文还是使用md5值,默认使用md5
[no_fallback]       设置该项,当sticky的后端机器挂了以后,nginx返回502 (Bad Gateway or Proxy Error) ,而不转发到其他服务器,不建议设置
[secure]          设置启用安全的cookie,需要HTTPS支持
[httponly]         允许cookie不通过JS泄漏,没用过

 

作者官方网站:http://www.wxl568.cn

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
部署nginx及安装nginx-http-flv-module模块的流程如下: 1. 安装编译工具和依赖库 在终端输入以下命令: ``` yum install gcc gcc-c++ autoconf automake make zlib zlib-devel openssl-devel pcre-devel ``` 2. 下载nginxnginx-http-flv-module源码 在终端输入以下命令: ``` wget http://nginx.org/download/nginx-1.18.0.tar.gz wget https://github.com/winshining/nginx-http-flv-module/archive/master.zip ``` 3. 解压源码包 在终端输入以下命令: ``` tar -zxvf nginx-1.18.0.tar.gz unzip master.zip ``` 4. 进入nginx源码目录并配置 在终端输入以下命令: ``` cd nginx-1.18.0 ./configure --prefix=/usr/local/nginx --add-module=../nginx-http-flv-module-master ``` 5. 编译和安装 在终端输入以下命令: ``` make make install ``` 6. 启动nginx 在终端输入以下命令: ``` /usr/local/nginx/sbin/nginx ``` 7. 验证nginx是否安装成功 在浏览器中输入服务器IP地址,如果出现欢迎页面,说明nginx已经安装成功。 8. 配置nginx-http-flv-module 打开nginx配置文件,一般路径为/usr/local/nginx/conf/nginx.conf,在http块中添加以下内容: ``` http { flv { server { listen 8080; # flv 直播流地址 location /live { flv_live on; # flv 直播流地址 flv_stream_name live; } # flv 点播流地址 location /vod { flv; # flv 点播流地址,需根据实际情况修改 root /usr/local/nginx/html; } } } } ``` 9. 重启nginx 在终端输入以下命令: ``` /usr/local/nginx/sbin/nginx -s reload ``` 现在,nginx-http-flv-module模块已经成功安装并配置完成。可以使用流媒体播放器访问服务器IP地址,播放flv视频。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值