为什么80%的码农都做不了架构师?>>>   

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/<address> : 触发本地agent加入node
/v1/agent/force-leave/<node>>: 强制删除node
/v1/agent/check/register : 在本地agent增加一个检查项,使用PUT方法传输一个json格式的数据
/v1/agent/check/deregister/<checkID> : 注销一个本地agent的检查项
/v1/agent/check/pass/<checkID> : 设置一个本地检查项的状态为passing
/v1/agent/check/warn/<checkID> : 设置一个本地检查项的状态为warning
/v1/agent/check/fail/<checkID> : 设置一个本地检查项的状态为critical
/v1/agent/service/register : 在本地agent增加一个新的服务项,使用PUT方法传输一个json格式的数据
/v1/agent/service/deregister/<serviceID> : 注销一个本地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/<service> : Lists the nodes in a given service
/v1/catalog/node/<node> : Lists the services provided by a node

health endpoints:health endpoints用来查询健康状况相关信息,该功能从catalog中单独分离出来

/v1/healt/node/<node>: 返回node所定义的检查,可用参数?dc=
/v1/health/checks/<service>: 返回和服务相关联的检查,可用参数?dc=
/v1/health/service/<service>: 返回给定datacenter中给定node中service
/v1/health/state/<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/<session>: Destroys a given session
/v1/session/info/<session>: Queries a given session
/v1/session/node/<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/<id>: Destroys a given token
/v1/acl/info/<id>: Queries the policy of a given token
/v1/acl/clone/<id>: Creates a new token by cloning an existing token
/v1/acl/list: Lists all the active tokens

event endpoints:event endpoints用来fire新的events、查询已有的events

/v1/event/fire/<name>: 触发一个新的event,用户event需要name和其他可选的参数,使用PUT方法
/v1/event/list: 返回agent知道的events

status endpoints:status endpoints用来或者consul 集群的信息

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

转载于:https://my.oschina.net/guol/blog/353394

服务发现系统consul-HTTP API相关推荐

  1. 服务发现系统之consul入门

    一.什么是consul? Consul是一个支持多数据中心分布式高可用的服务发现和配置共享的服务软件,是由HashiCorp公司用Go语言开发的,基于Mozilla Public License 2. ...

  2. ASP.NET Core 微服务初探[1]:服务发现之Consul

    ASP.NET Core 微服务初探[1]:服务发现之Consul 在传统单体架构中,由于应用动态性不强,不会频繁的更新和发布,也不会进行自动伸缩,我们通常将所有的服务地址都直接写在项目的配置文件中, ...

  3. 服务发现比较:Consul vs Zookeeper vs Etcd vs Eureka

    平时经常用到的服务发现的产品进行下特性的对比,首先看下结论: Feature Consul zookeeper etcd euerka 服务健康检查 服务状态,内存,硬盘等 (弱)长连接,keepal ...

  4. 服务发现系统etcd介绍

    撸了今年阿里.头条和美团的面试,我有一个重要发现.......>>> 一.概述 etcd是一个高可用的键值存储系统,主要用于共享配置和服务发现.etcd是由CoreOS开发并维护的, ...

  5. 第一篇:SpringCloud 构建微服务系统之服务注册和发现(consul)

    版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/u010046908/article/details/85260629 今天我们要学习的是consul ...

  6. Api网关Kong集成Consul做服务发现及在Asp.Net Core中的使用

     1622219047536 写在前面   Api网关我们之前是用 .netcore写的 Ocelot的,使用后并没有完全达到我们的预期,花了些时间了解后觉得kong可能是个更合适的选择. 简单说下 ...

  7. 服务发现对比:Zookeeper vs. etcd vs. Consul

    欢迎关注方志朋的博客,回复"666"获面试宝典 服务发现工具 手动配置 ZooKeeper ETCD Consul 结论 我们拥有的服务越多,如果我们使用预定义的端口,就会发生冲突 ...

  8. 服务发现:Zookeeper vs etcd vs Consul

    服务发现:Zookeeper vs etcd vs Consul 摘自:http://dockone.io/article/667 [编者的话]本文对比了Zookeeper.etcd和Consul三种 ...

  9. 使用Consul做服务发现的若干姿势

    作者:波斯码 来源:http://blog.bossma.cn/consul/consul-service-register-and-discovery-style/?hmsr=toutiao.io& ...

最新文章

  1. 冯怡:我想给大家展示一种可能性(图灵访谈)
  2. HTML 常用标签全称
  3. leetcode算法题--矩阵中的路径
  4. 山东管理学院计算机专业在哪个校区,2019年山东管理学院新生在哪个校区及新生开学报到时间...
  5. 51CTO下载专题有奖征集建议:您的期待,我们的方向!
  6. SEO技巧:好的域名是网站成功的开始
  7. linux中将 home目录备份成,6种优化Linux系统备份的应用与技巧
  8. solr 5.3.1 使用java_Apache Solr 5.3.1 发布下载,Java 全文搜索服务器
  9. 【人工智能】计算机审美,学的怎么样了?
  10. Go并发调用的超时处理
  11. Eclipse + Spring + maven Building a RESTful Web Service ---需要添加注释
  12. 【canvas】blackboard 黑板
  13. jre7或jre8或其他版本共存问题
  14. python大麦网抢票_抢票攻略-大麦网
  15. 服务器部署与配置文件,服务器部署与服务器迁移之配置文件篇.pptx
  16. acs代表什么_ACS 是什么意思
  17. yii ajax验证失败返回提示,Yii使用ajax验证显示错误messagebox的解决方法
  18. 网络分层的真实含义是什么?
  19. REST模式:POST,GET,PUT,DELETE,PATCH的含义与区别
  20. 乳腺仿体breast phantom的MATLAB实现及探讨

热门文章

  1. [转]HTTP协议之状态码详解
  2. 【Data guard】SWITCHOVER_STATUS为FAILED DESTINATION解决办法
  3. Linux之rm命令
  4. Linux之cd命令
  5. linux之systemctl命令
  6. [转] Float或Double浮点型计算精度问题的解决方法
  7. 畅谈云原生(上):云原生应用应该是什么样子?
  8. 学习日记之工厂方法模式和Effective C++
  9. mariadb multi-source replication(mariadb多主复制)
  10. javascript动画系列第二篇——磁性吸附