首页 > 其他分享 >docker搭建consul集群

docker搭建consul集群

时间:2023-03-13 10:44:51浏览次数:58  
标签:0.0 consul 地址 192.168 2.9 集群 docker

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

环境为两台主机,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 ,集群就启动成功了。

标签:0.0,consul,地址,192.168,2.9,集群,docker
From: https://www.cnblogs.com/young-q/p/17210528.html

相关文章

  • [docker] 腾讯云启用 mysql 容器
    dockerrun-itd--namemysql-p3306:3306-eMYSQL_ROOT_PASSWORD=123456mysql:5.7参数说明:-p3306:3306:映射容器服务的3306端口到宿主机的3306端口,外部主机可......
  • 【磁盘空间不足问题解决】Docker 日志清理、
    问题描述:1、系统无法访问,提示“无法访问此网站”2、启动Docker镜像提示错误信息,如下:“Errorresponsefromdaemon:Cannotrestartcontainer7f812bfba45f:write/v......
  • Docker CLI docker buildx prune常用命令
    Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的Linux或Windows操作系统的机器上,也可以实现虚拟化。Doc......
  • docker
    docker的安装方法:1、脚本安装方法(最新版)curl-sSLhttps://get.docker.com/|sh2、yum安装3、rpm包安装所有的:https://download.docker.com/centos7.6的:http://dock......
  • Docker Compose部署Nexus3时的docker-compose.yml代码
    场景在上面实现基本的Compose的操作的基础上,实现使用DockerCompose搭建Nexus3。注:关注公众号霸道的程序猿获取编程相关电子书、教程推送与免费下载。实现version:'3'ser......
  • docker run mssql
    拉取镜像dockerpullmcr.microsoft.com/mssql/server:2019-latest创建挂载目录mkdir/data/mssql为挂载目录设置写入权限chmod-R777/data/mssql运行容......
  • Docker json文件配置
    点击查看代码[root@master0~]#cat/etc/docker/daemon.json{"exec-opts":["native.cgroupdriver=systemd"],"log-driver":"json-file","log-opts":{......
  • docker 部署 mysql
    拉取镜像dockerpullmysql:latest创建目录mkdir-p/home/zonglin/mysql/datamkdir-p/home/zonglin/mysql/logmkdir-p/home/zonglin/mysql/initdb运行容器do......
  • docker卸载分享
    一、准备工作:1.杀死docker有关的容器:dockerkill$(dockerps-a-q)2.删除所有docker容器:dockerrm$(dockerps-a-q)3.删除所有docker镜像dockerrmi$(doc......
  • Docker安装Nginx入门示例
    测试环境:Ubuntu20.04Dockerversion23.0.1Nginx容器版本:1.23.31.拉取镜像拉取命令:dockerpullnginx:1.23.3查看镜像:yyj@yyj:~$dockerimagesREPOSITORYTA......