安装部署参考

http://blog.sina.com.cn/s/blog_8ea8e9d50102wwlf.html

http://www.techweb.com.cn/network/system/2016-01-28/2270190.shtml

api连接参考

https://github.com/JoergM/consul-examples

端口介绍

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/<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

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 注册

http://python-consul.readthedocs.io/en/v0.7.0/

4.  中文consul翻译帮助文档

http://consul.la/intro/what-is-consul

5. consul 服务模板

https://github.com/hashicorp/consul-template

转载于:https://blog.51cto.com/kkkkkk/1914469

consule服务注册和发现 安装 部署相关推荐

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

    安装部署参考 api连接参考 端口介绍 8500,客户端http api接口 8600,客户端DNS服务端口 8400,客户端RPC通信端口 8300,集群server RPC通信接口 8301,集群 ...

  2. C# net6微服务架构之服务注册与发现工具Consul的下载与安装(for windows)

    C# net6微服务架构之服务注册与发现工具Consul的下载与安装(for windows) 0.背景 1.Consul简介 2.Consul的主要功能 3.Consul下载与安装 4.Consul ...

  3. EureKa服务注册与发现(集群部署Eureka与支付模块集群部署、订单模块访问负载均衡调用支付服务实现)

    上一遍文章完成了,聚合父工程.消费模块.支付模块.公共模块的搭建.RestTemplate调用支付模块 该篇项目创建gitv2.0的管理分子完成学习 1.Eureka基础知识 1.1. 什么是服务治理 ...

  4. 服务注册与发现用mysql_yeasul: 轻量级服务注册与发现中心,具有健康检查功能。...

    yeasul 亿联定制版服务注册与发现中心,具备心跳检测功能,由于接口参考了consul,所以取名为yeasul. 项目架构 使用Java语言开发,依赖于MySQL 8.0数据库,基于Spring B ...

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

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

  6. AgileConfig 1.6.0 发布 - 支持服务注册与发现

    大家好,好久没有输出博文了,一是因为比较忙,另外一个原因是最近主要的精力是在给 AgileConfig 添加一个新的功能:服务注册与发现. 先说说为什么会添加这个功能.我自己的项目是用 Consul ...

  7. 微服务探索与实践—服务注册与发现

    前言 微服务从大规模使用到现在已经有很多年了,从之前的探索到一步步的不断完善与成熟,微服务已经成为众多架构选择中所必须面对的一个选项.服务注册与发现是相辅相成的,所以一般会合起来思索.其依托组件有很多 ...

  8. 微服务~Eureka实现的服务注册与发现及服务之间的调用

    微服务里一个重要的概念就是服务注册与发现技术,当你有一个新的服务运行后,我们的服务中心可以感知你,然后把加添加到服务列表里,然后当你死掉后,会从服务中心把你移除,而你作为一个服务,对其它服务公开的只是 ...

  9. java consul服务发现_分布式项目(七)consul 服务注册与发现

    说到分布式自然就离不开分布式和微服务的话题,简单聊一下. 微服务是一种软件架构方式,或者说一个一种结构设计风格,它并不是标准,它的逻辑是把一个整体服务按业务拆分成不同独立的服务,降低服务强依赖,消服务 ...

最新文章

  1. 用Python爬一爬那些年你硬盘存过的老师们,太方便啦!
  2. 【前端开发】HTML入门与实战
  3. Xamarin XAML语言教程基本视图ContentView
  4. 【数据挖掘笔记三】数据预处理
  5. kubeadm reset后安装遇到的错误:Unable to connect to the server: x509: certificate signed by unknown authority
  6. 算法初步——two pointers
  7. vivoy9s怎么设置返回键_vivoy9s怎么设置返回键 可以使用虚拟导航键
  8. Laravel中的env函数获取不到确定存在的配置
  9. Slowquery图形化显示MySQL慢日志工具搭建
  10. Mac OS系统下,代码自动生成器无法使用解决方法
  11. 一步到位:手把手教你R语言竞争风险模型建模-列线图-校准曲线-K折验证-外部验证- 决策曲线
  12. ArcGIS使用模型构建器批量剪裁影像
  13. oppo小布机器人_OPPO小布助手建立GUI+VUI协作机制,创新快应用融合能力
  14. jquery 实现考试倒计时
  15. 抖音速上热门推荐方法和技巧
  16. ubuntu安装最新的chrome浏览器
  17. 【渝粤教育】电大中专电子商务网站建设与维护 (20)作业 题库
  18. 一款汇总了郭霖,鸿洋,以及自己平时收集的自定义控件集合库
  19. 数据在内存中的存储形式
  20. 一文带你了解 AAVE,并实操

热门文章

  1. 图片上传至服务器实现压缩
  2. 顶级MySQL主从复制企业应用
  3. 报此错错解决办法:java.lang.NoSuchMethodError: javax.persistence.OneToMany.orphanRemoval()Z
  4. 修改注册表来修改IE的设置---资料汇总
  5. Leetcode: Excel Sheet Column Number
  6. chrome 样式Bug?
  7. 【Shell】sed实例之第三部分
  8. Struts学习笔记总结
  9. 送出15个Google Wave邀请,需要的赶快
  10. Android 带清除功能的输入框控件ClearEditText,仿IOS的输入框