一、集群搭建

准备三台机器

需要开启的端口,8300, 8301, 8500, 8600

机器1:

172.16.106.201

./consul agent -server -bootstrap-expect 2 -data-dir=/data/consul/data -node=consul-server-1 -bind=172.16.106.201 -client=0.0.0.0 &

机器2:

172.16.106.202

./consul agent -server -bootstrap-expect 2 -data-dir=/data/consul/data -node=consul-server-2 -bind=172.16.106.202 -client=0.0.0.0 &

机器3:

172.16.106.203

./consul agent -server -bootstrap-expect 2 -data-dir=/data/consul/data -node=consul-server-3 -bind=172.16.106.203 -client=0.0.0.0 -ui &

参数说明:
i.  server: 以server身份启动。默认是client

ii.  bootstrap-expect:集群要求的最少server数量,当低于这个数量,集群即失效。

iii.  data-dir:data存放的目录,更多信息请参阅consul数据同步机制

iv.  node:节点id,在同一集群不能重复。

v.   bind:监听的ip地址。默认绑定0.0.0.0,可以不指定

vi.  client: 客户端的ip地址,0.0.0.0是指谁都可以访问

vii.  ui: 可以访问UI界面

三台服务器启动完之后,要把两台加到一台主的上,这样构成集群

在机器172.16.106.202和172.16.106.203上执行./consul join 172.16.106.201,这样将这两台机器加到172.16.106.201上,构成集群。

二、API访问

1.kv - Key/Value存储

2.agent - 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的服务项

3.catalog - 管理nodes和services

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

4.health - 管理健康监测

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

5.session - Session操作

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

6.acl - 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

7.event - 用户Events

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

8.status - Consul系统状态

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

Consul集群搭建的更多相关文章

  1. Ocelot+Consul 集群搭建实践

    博客园已经有很多大神写过consul集群搭建了.大家都在玩,那我也不能托后退呢 不过自己研究下还是好的.毕竟每个人遇到的问题的不同 研究过才能说自己玩过consul,文章有部分名词解释是收集网络 Co ...

  2. 8分钟学会Consul集群搭建及微服务概念

    Consul介绍: Consul 是由 HashiCorp 公司推出的开源软件,用于实现分布式系统的服务发现与配置.与其他分布式服务注册与发现的方案,Consul 的方案更“一站式”,内置了服务注册与 ...

  3. Consul集群搭建 2Server+ 3Client

    环境说明: 192.168.202.177 consul-server01 192.168.202.177 consul-server02192.168.202.174 mysql server no ...

  4. consul集群搭建以及ACL配置

    由于时间匆忙,要是有什么地方没有写对的,请大佬指正,谢谢.文章有点水,大佬勿喷这篇博客不回去深度的讲解consul中的一些知识,主要分享的我在使用的时候的一些操作和遇见的问题以及解决办法.当然有些东西 ...

  5. Consul 集群搭建

    搭建集群:.启动node1机器上的Consul (node1机器上执行) consul agent -data-dir /tmp/node1 -node=node1 -bind=192.168.0.1 ...

  6. consul集群搭建,配合nginx完成服务动态发现和健康检查

    1.概述 1.1 介绍 consul是一个服务发现和配置共享的服务软件,结合nginx的主动健康检查模块nginx_upstream_check_module和服务发现模块nginx-upsync-m ...

  7. 基于Docker的Consul服务发现集群搭建

    在去年的.NET Core微服务系列文章中,初步学习了一下Consul服务发现,总结了两篇文章.本次基于Docker部署的方式,以一个Demo示例来搭建一个Consul的示例集群,最后给出一个HA的架 ...

  8. 微服务Consul系列之集群搭建

    在上一篇中讲解了Consul的安装.部署.基本的使用,使得大家有一个基本的了解,本节开始重点Consul集群搭建,官方推荐3-5台Server,因为在异常处理中,如果出现Leader挂了,只要有超过一 ...

  9. Docker跨服务器通信Overlay解决方案(下) Consul集群

    承接上文 本文基于上篇文章,详细的场景说明与分析在前篇随笔中业已记录,有兴趣可以移步 Docker跨服务器通信Overlay解决方案(上) Consul单实例 本文主旨 本文为Docker使用Cons ...

随机推荐

  1. 2018.11.06 bzoj2287: 【POJ Challenge】消失之物(背包)

    传送门 先假设所有物品都能用,做01背包求出方案数. 然后枚举每个点,分类讨论扣掉它对答案的贡献. 代码: #include<bits/stdc++.h> using namespace ...

  2. (17)Questioning the universe

    https://www.ted.com/talks/stephen_hawking_asks_big_questions_about_the_universe/transcript00:13There ...

  3. shell 脚本学习

    Shell简介 概述 Shell是一种具备特殊功能的程序,它提供了用户与内核进行交互操作的一种接口.它接收用户输入的命令,并把它送入内核去执行.内核是Linux系统的心脏,从开机自检就驻留在计算机的内 ...

  4. JavaWeb多文件上传及zip打包下载

    项目中经常会使用到文件上传及下载的功能.本篇文章总结场景在JavaWeb环境下,多文件上传及批量打包下载功能,包括前台及后台部分.  首先明确一点:  无法通过页面的无刷新ajax请求,直接发下载.上 ...

  5. java http大文件断点续传上传

    因为需要研究下断点上传的问题.找了很久终于找到一个比较好的项目. 效果: 上传中,显示进度,时间,百分比. 点击[Pause]暂停,点击[Resume]继续. 2,代码分析 项目进行了封装使用最简单的 ...

  6. Hadoop-2.8.0分布式安装手册

    目录 目录 1 1. 前言 3 2. 特性介绍 3 3. 部署 5 3.1. 机器列表 5 3.2. 主机名 5 3.2.1. 临时修改主机名 6 3.2.2. 永久修改主机名 6 3.3. 免密码登 ...

  7. bzoj2879(动态加边费用流)

    参考题解:http://blog.csdn.net/yxuanwkeith/article/details/52254602 //开始跑费用流用的dijkstra,一直错,后来发现动态加边后我不会处理 ...

  8. ( 递归 )Fractal -- POJ -- 2083

    http://poj.org/problem?id=2083 Fractal Time Limit: 1000MS   Memory Limit: 30000K Total Submissions:  ...

  9. python处理excel之读:xlrd模块

    # -*- coding:utf-8 -*- import xlrd path = r'D:/工作簿1(已自动还原).xlsx' # 打开excel文件读取数据 data = xlrd.open_wo ...

  10. cocos游戏的例子(摘抄记录,非原创)

    3.1 搭建Cocos2d-JS v3.x 开发环境 下载所需的软件包 下载 Cocos Code IDE.目前 Cocos Code IDE 最新发布版本是 1.0.0-RC2.我们为什么 Coco ...