Ignore my question. It seems they are two different things. Zexuan Luo <[email protected]> 于2021年2月7日周日 下午9:32写道:
> PR is welcome! > BTW, does it require nginx-upsync-module? > > 聂永 <[email protected]> 于2021年2月7日周日 下午5:22写道: > >> Hi, >> >> I had shared a topic 《基于APISIX的定制开发》 in Apisix DevCon 2020, which >> referred to our consul key&value service discovery module a little. And we >> want to submit it as a PR for APISIX now. >> >> For users who used nginx-upsync-module >> <https://github.com/weibocom/nginx-upsync-module> and consul key value >> for service discovery way, maybe need it. >> >> This module called consul_kv, and its worker process data flow is below: >> >> How to use it >> >> 1. enable the consul_kv module in yaml >> >> discovery: >> consul_kv: >> servers: >> - "http://127.0.0.1:8500" >> - "http://127.0.0.1:8600" >> prefix: "upstreams" >> skip_keys: >> - "upstreams/unused_api/" >> timeout: >> connect: 1000 >> read: 1000 >> wait: 60 >> weight: 1 >> delay: 5 >> connect_type: "long" >> default_server: >> host: "127.0.0.1" >> port: 20999 >> metadata: >> fail_timeout: 1 >> weight: 1 >> max_fails: 1 >> >> 2. register your api service into consul by key&value >> >> curl \ >> -X PUT \ >> -d ' {"weight": 120, "max_fails": 2, "fail_timeout": 1}' \ >> http://127.0.0.1:8500/v1/kv/upstreams/webpages/172.19.5.12:8000 >> >> curl \ >> -X PUT \ >> -d ' {"weight": 120, "max_fails": 2, "fail_timeout": 1}' \ >> http://127.0.0.1:8500/v1/kv/upstreams/webpages/172.19.5.13:8000 >> >> 3. setup your route >> >> --- apisix_yamlroutes: >> - >> uri: /* >> upstream: >> service_name: http://127.0.0.1:8500/v1/kv/upstreams/webpages/ >> discovery_type: consul_kv >> type: roundrobin >> >> If it ok, I prepare to submit the codes, tests and docs later :)) >> >
