python consul服务发现_consule服务注册和发现 安装 部署

安装部署参考

api连接参考

端口介绍

8500,客户端http api接口

8600,客户端DNS服务端口

8400,客户端RPC通信端口

8300,集群server RPC通信接口

8301,集群DC内部通信接口

8302,集群DC之间通信接口

consul的主要接口是RESTful HTTP API,该API可以用来增删查改nodes、services、checks、configguration

所有的endpoints主要分为以下类别:kv - Key/Value存储

agent - Agent控制

catalog - 管理nodes和services

health - 管理健康监测

session - Session操作

acl - ACL创建和管理event - 用户Events

status - Consul系统状态

agent endpoints:agent endpoints用来和本地agent进行交互,一般用来服务注册和检查注册,支持以下接口/v1/agent/checks : 返回本地agent注册的所有检查(包括配置文件和HTTP接口)

/v1/agent/services : 返回本地agent注册的所有 服务

/v1/agent/members : 返回agent在集群的gossip pool中看到的成员

/v1/agent/self : 返回本地agent的配置和成员信息/v1/agent/join/

 : 触发本地agent加入node/v1/agent/force-leave/>: 强制删除node

/v1/agent/check/register : 在本地agent增加一个检查项,使用PUT方法传输一个json格式的数据/v1/agent/check/deregister/ : 注销一个本地agent的检查项/v1/agent/check/pass/ : 设置一个本地检查项的状态为passing/v1/agent/check/warn/ : 设置一个本地检查项的状态为warning/v1/agent/check/fail/ : 设置一个本地检查项的状态为critical

/v1/agent/service/register : 在本地agent增加一个新的服务项,使用PUT方法传输一个json格式的数据/v1/agent/service/deregister/ : 注销一个本地agent的服务项

catalog endpoints:catalog endpoints用来注册/注销nodes、services、checks/v1/catalog/register : Registers a new node, service, or check/v1/catalog/deregister : Deregisters a node, service, or check/v1/catalog/datacenters : Lists known datacenters

/v1/catalog/nodes : Lists nodes in a given DC

/v1/catalog/services : Lists services in a given DC

/v1/catalog/service/ : Lists the nodes in a given service

/v1/catalog/node/ : Lists the services provided by a node

health endpoints:health endpoints用来查询健康状况相关信息,该功能从catalog中单独分离出来/v1/healt/node/: 返回node所定义的检查,可用参数?dc=

/v1/health/checks/: 返回和服务相关联的检查,可用参数?dc=

/v1/health/service/: 返回给定datacenter中给定node中service

/v1/health/state/: 返回给定datacenter中指定状态的服务,state可以是"any", "unknown", "passing", "warning", or "critical",可用参数?dc=

session endpoints:session endpoints用来create、update、destory、query sessions/v1/session/create: Creates a new session

/v1/session/destroy/: Destroys a given session

/v1/session/info/: Queries a given session

/v1/session/node/: Lists sessions belonging to a node

/v1/session/list: Lists all the active sessions

acl endpoints:acl endpoints用来create、update、destory、query acl/v1/acl/create: Creates a new token with policy

/v1/acl/update: Update the policy of a token

/v1/acl/destroy/: Destroys a given token

/v1/acl/info/: Queries the policy of a given token

/v1/acl/clone/: Creates a new token by cloning an existing token

/v1/acl/list: Lists all the active tokens

status endpoints:status endpoints用来或者consul 集群的信息/v1/status/leader : 返回当前集群的Raft leader

/v1/status/peers : 返回当前集群中同事

服务注册:

1. http方式

直接调用/v1/agent/service/register接口注册即可,需要注意的是:http method为PUT提交方式curl -X PUT -d "{"id": "jetty","name": "test1111","address": "localhost","port": 8500,"tags": ["dev"],"checks": [{"http": "http://localhost:8500/","interval": "5s"}]}"     http://localhost:8500/v1/agent/service/register

2:通过配置文件的方式静态注册

创建文件夹/etc/consul.d

.d代表有许多配置文件在里面

vim /consul.d/jetty.json  内容如下:

{

"service":{

"id": "jetty",

"name": "jetty",

"address": "192.168.1.200",

"port": 8080,

"tags": ["dev"],

"checks": [

{

"http": "http://192.168.1.200:8080/health",

"interval": "5s"

}

]

}

}

3. 使用python api 注册

4.  中文consul翻译帮助文档

5. consul 服务模板

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值