防止自己忘了,做个笔记。

环境为两台主机,ip分别为:  192.168.2.9192.168.2.7

首先在  192.168.2.9 上执行一下命令:

docker run -d --name consul1  --net=host -e CONSUL_BIND_INTERFACE=enp5s0 consul agent -server=true -client=0.0.0.0 -bind=192.168.2.9 -ui -bootstrap-expect=2  -node=node1

然后在 192.168.2.7上执行命令:

docker run -d --name consul2  --net=host -e CONSUL_BIND_INTERFACE=enp2s0 consul agent -server=true -client=0.0.0.0 -join=192.168.2.9  -node=node2

参数说明:

  • --net=host:容器启动最好是host,因为如果用Bridge,Consul 自带的DNS功能不起作用。

  • -e CONSUL_BIND_INTERFACE=enp5s0enp5s0是主机的网卡名称,每台主机可能不一样,使用命令ip a 可以查看网卡信息,找到内网Ip对应的名称就是该参数的值

  • -server:此标志用于控制代理是否处于服务器模式

  • -client=0.0.0.0:consul服务侦听地址,这个地址提供HTTP、DNS、RPC等服务,默认是127.0.0.1所以不对外提供服务,如果你要对外提供服务改成0.0.0.0

  • -bind=192.168.2.9:应为内部集群通信绑定的地址。这是集群中所有其他节点都应该可以访问的IP地址。默认情况下,这是“0.0.0.0”,这意味着Consul将绑定到本地计算机上的所有地址,并将 第一个可用的私有IPv4地址通告给群集的其余部分。这里我绑定了主机的内网地址, 让内网其他consul加入集群。

  • -ui:表示启动 Web UI 管理器,默认开放端口 8500

  • -bootstrap-expect=2:此标志提供数据中心中预期服务器的数量,Consul会等待指定数量的服务器可用,然后引导群集。

  • -node=node1:此节点在集群中的名称,这在集群内必须是唯一的。默认情况下,这是机器的主机名。

  • -join=192.168.2.9:启动时加入的另一位代理的地址。这可以指定多次以指定多个代理加入。如果Consul无法加入任何指定的地址,代理启动将失败。默认情况下,代理在启动时不会加入任何节点。请注意,retry_join在自动执行Consul集群部署时,使用 可能更适合帮助缓解节点启动竞争条件。

在浏览器输入地址http://192.168.2.9:8500即可访问

看到如图所示显示的 2 instances ,集群就启动成功了。

docker搭建consul集群的更多相关文章

  1. 庐山真面目之十二微服务架构基于Docker搭建Consul集群、Ocelot网关集群和IdentityServer版本实现

    庐山真面目之十二微服务架构基于Docker搭建Consul集群.Ocelot网关集群和IdentityServer版本实现 一.简介      在第七篇文章<庐山真面目之七微服务架构Consul ...

  2. vagrant+docker搭建consul集群开发环境

    HashiCorp 公司推出的Consul是一款分布式高可用服务治理与服务配置的工具.关于其配置与使用可以参考这篇文章 consul 简介与配置说明. 一般,我们会在多台主机上安装并启动 consul ...

  3. Docker学习-Docker搭建Consul集群

    1.环境准备 Linux机器三台 网络互通配置可以参考 https://www.cnblogs.com/woxpp/p/11858257.html 192.168.50.21 192.168.50.2 ...

  4. 使用Docker搭建consul集群+registrator实现服务自动注册。

    准备工作:10.173.16.83 master10.172.178.76 node110.171.19.139 node210.162.204.252 node3 一.安装consul-cluste ...

  5. Docker 搭建 etcd 集群

    阅读目录: 主机安装 集群搭建 API 操作 API 说明和 etcdctl 命令说明 etcd 是 CoreOS 团队发起的一个开源项目(Go 语言,其实很多这类项目都是 Go 语言实现的,只能说很 ...

  6. Docker搭建PXC集群

    如何创建MySQL的PXC集群 下载PXC集群镜像文件 下载 docker pull percona/percona-xtradb-cluster 重命名 [root@hongshaorou ~]# ...

  7. Docker搭建RabbitMQ集群

    Docker搭建RabbitMQ集群 Docker安装 见官网 RabbitMQ镜像下载及配置 见此博文 集群搭建 首先,我们需要启动运行RabbitMQ docker run -d --hostna ...

  8. docker搭建etcd集群环境

    其实关于集群网上说的方案已经很多了,尤其是官网,只是这里我个人只有一个虚拟机,在开发环境下建议用docker-compose来搭建etcd集群. 1.拉取etcd镜像 docker pull quay ...

  9. Docker安装Consul集群

    Docker 安装Consul集群 使用windows 环境,Docker desktop community 构建consul集群. 1.docker 容器网络 docker安装后,默认会创建三种网 ...

  10. docker 搭建zookeeper集群和kafka集群

    docker 搭建zookeeper集群 安装docker-compose容器编排工具 Compose介绍 Docker Compose 是 Docker 官方编排(Orchestration)项目之 ...

随机推荐

  1. Mac 下的虚拟机Parallels_Desktop_15

    Mac 下的虚拟机Parallels_Desktop_15 1,取得 Mac Parallels_Desktop_15.dmg 后挂载,密码:7410   2,点关闭!关闭!关闭!,千万不要点&quo ...

  2. mongodb更改账户密码

    docker部署方式更改 sudo docker exec -it mongodb mongo admin (登录数据库容器) use admin db.auth('admin','shijiehep ...

  3. Godot从编辑器创建自定义场景类型对象

    Godot的编辑器提供了强大的所见即所得功能,并且,我们可以在不从源码编译的情况下,为编辑器提供新的节点类型. 首先,我们创建一个新场景,然后添加一个Node2D,然后为当前节点(Node2D)添加一 ...

  4. CCF 202012-2 期末预测之最佳阈值

    #include <iostream> #include <bits/stdc++.h> #include <string> using namespace std ...

  5. Leetcode习题集-链表

    这里记录一些我刷题的思路方便之后进行复习重温,同时也方便进行添加 P141-环形链表 class Solution { public: bool hasCycle(ListNode *head) { ...

  6. 【七侠传】冲刺阶段--Day7

    [七侠传]冲刺阶段--Day7 团队成员 20181221曾宇涛 20181202李祎铭 20181209沙桐 20181215薛胜瀚 20181216杨越麒 20181223何家豪 20181232 ...

  7. rabbitMq安装 - docker

    安装rabbitmq 参考网站:https://www.rabbitmq.com/download.html 方式一: 获取rabbit镜像: docker pull rabbitmq:managem ...

  8. R语言原生管道绘图

    前言 最近写论文的时候又一次用到了R.这次我是对Java有一定程度了解后再次转向R,才真正认识到R这门语言在统计编程和数据可视化领域的优雅和快速. 首先可以看一段Java的stream代码: redi ...

  9. Docker基本命令之 容器管理

    容器管理 查看正在运行的容器: docker ps 查看完整信息:docker ps --no-trunc 查看在运行或停止运行的容器:docker ps -a 查看容器系统资源的使用情况:docke ...

  10. sql 字符串末尾空格不占长度

    print len('qwer ');--4 print len('qwer                            ');--4 print len('qwer ' + 't');-- ...