consul
-研究consul一直属于懵逼状态,今天问了旁边的同事,有了一点点眉目。
###consul 是什么
- 服务发现
- 健康检查 注册任意数量的服务及检查方法
- key/value存储 应用程序可用根据自己的需要使用Consul的层级的key/value存储,比如动态配置,功能标记,协调,领袖选举等等
多数据中心
curl –header “X-Consul-Token:xxxxxx” -X PUT -d ‘test’ http://127.0.0.1:8500/v1/kv/web/key1
curl –header “X-Consul-Token:xxxxxx” -X DELETE http://127.0.0.1:8500/v1/kv/web/key1
curl –header “X-Consul-Token:xxxxxx” –request PUT –data @test.json http://127.0.0.1:8500/v1/agent/service/register
curl –header “X-Consul-Token:xxxxxx” http://127.0.0.1:9500/v1/kv/?recursive
可以使用配置文件,位于/etc/consul.d/ 目录下的json文件,注册服务或者使用curl -header “X-Consul-Token:xxx”
###etcd 是什么
- 高可用键值存储,用来共享配置和服务发现,分布式键值存储
提供存储以及获取数据的接口、监听机制、
etcdctl put /test/key val
设置key=”message”,value=”value”
curl http://127.0.0.1:2379/v2/keys/message -XPUT -d value=”value”etcdctl get /test/key
获取message的值
curl http://127.0.0.1:2379/v2/keys/message更改message的值
curl http://127.0.0.1:2379/v2/keys/message -XPUT -d value=”value ww”etcdctl del /test/key
删除key=message的值
curl http://127.0.0.1:2379/v2/keys/message -XDELETE使用ttl,为key设置生命周期
curl http://127.0.0.1:2379/v2/keys/message -XPUT -d value=”value” -d ttl=5curl http://127.0.0.1:2379/v2/keys/message?wait=true 当message发生变化,才返回
创建一个目录
curl http://127.0.0.1:2379/v2/keys/dir -XPUT -d dir=true列举一个目录
curl http://127.0.0.1:2379/v2/keys/dir递归列举
curl http://127.0.0.1:2379/v2/keys/dir?recursive=true删除目录
curl http://127.0.0.1:2379/v2/keys/dir?dir=true -XDELETE在目录下面设置key=info
curl http://127.0.0.1:2379/v2/keys/dir/info -XPUT -d value=fang -d ttl=20