• nginx+nginx-upsync-module实现配置动态更新


    模块微博开源:https://github.com/weibocom/nginx-upsync-module#upsync

    实现方案:

    nginx+consul

    nginx+etcd

    Installation

    wget 'http://nginx.org/download/nginx-1.8.0.tar.gz'
    tar -xzvf nginx-1.8.0.tar.gz
    cd nginx-1.8.0/
    

    添加upsync,upstream-check模块

    ./configure --add-module=/path/to/nginx-upstream-check-module --add-module=/path/to/nginx-upsync-module
    make
    make install
    

    nginx配置

     upstream test {
            server 127.0.0.1:28081 down;
            upsync 127.0.0.1:8500/v1/kv/upstreams/test/ upsync_timeout=6m upsync_interval=500ms upsync_type=consul strong_dependency=off;
            upsync_dump_path /usr/local/nginx/conf/servers/servers_test.conf;
    
            include /usr/local/nginx/conf/servers/servers_test.conf;
        }    
    

      

     

    动态添加,删除节点

    #add
    curl -X PUT http://$consul_ip:$port/v1/kv/upstreams/$upstream_name/$backend_ip:$backend_port
    curl -X PUT -d '{"weight":2, "max_fails":2, "fail_timeout":10, "down":0}' http://127.0.0.1:8500/v1/kv/upstreams/arch/gateway_zuul/127.0.0.1:49199 #delete curl -X DELETE http://$consul_ip:$port/v1/kv/upstreams/$upstream_name/$backend_ip:$backend_port curl -X DELETE -d '{"weight":2, "max_fails":2, "fail_timeout":10, "down":0}' http://127.0.0.1:8500/v1/kv/upstreams/arch/gateway_zuul/127.0.0.1:49199

      

  • 相关阅读:
    #背包#nssl 1488 上升子序列
    #环#nssl 1487 图
    #分治#JZOJ 4211 送你一颗圣诞树
    #概率,dp#JZOJ 4212 我想大声告诉你
    #并查集#JZOJ 4223 旅游
    #dp#nssl 1478 题
    #对顶堆#nssl 1477 赛
    #线段树,离散#nssl 1476 联
    #折半搜索,状压dp#nssl 1471 Y
    #并查集,线性筛#nssl 1470 X
  • 原文地址:https://www.cnblogs.com/xuliang666/p/11157156.html
Copyright © 2020-2023  润新知