服务注册与发现-Consul(Linux)

news/2025/2/1 0:45:10/

本文要有docker支持,docker的安装使用Docker 在Linux-CentOS上的安装使用_XiaoGuaiSs的博客-CSDN博客如果提示 [Warning] IPv4 forwarding is disabled. Networking will not work.然后将项目拷贝至linux 的project目录下(随意)。生成项目镜像,docker build -t 镜像名称 -f dockerfile文件目录 项目目录。右键点击netcore项目-添加-Docker支持,选择Linux。直接Ctrl+c停止,然后执行启动ipv4命令。然后通过ip加端口访问下接口或页面。再重新执行构建镜像,显示成功。启动镜像,获得容器实例。https://blog.csdn.net/m0_37894611/article/details/130404139?spm=1001.2014.3001.5501Consul有Server和Client两种运行模式
Server构建

启动Consul容器node1

docker run -d --name=node1 --restart=always \
-e 'CONSUL_LOCAL_CONFIG={"skip_leave_on_interrupt": true}' \
-p 8300:8300 \
-p 8301:8301 \
-p 8301:8301/udp \
-p 8302:8302/udp \
-p 8302:8302 \
-p 8400:8400 \
-p 8500:8500 \
-p 8600:8600 \
-h node1 \
consul agent -server -bind=0.0.0.0 -bootstrap-expect=3 -node=node1 \
-data-dir=/tmp/data-dir -client 0.0.0.0 -ui

 去访问下Consul   http:ip:8500

 这是里面没有东西,会报500,查看下当前节点信息

docker exec -t node1 consul members  ##查看节点


我们再继续添加 consul容器node2、node3,注意改成自己的IP   172.17.0.2,我使用了Linux本地的ip不知道为什么绑定不到一起,就是用了nide1给的ip地址,尝试是成功的,不知道是否会有影响

docker run -d --name=node2 --restart=always \
-e 'CONSUL_LOCAL_CONFIG={"skip_leave_on_interrupt": true}' \
-p 9300:8300  \
-p 9301:8301 \
-p 9301:8301/udp \
-p 9302:8302/udp \
-p 9302:8302 \
-p 9400:8400 \
-p 9500:8500 \
-p 9600:8600 \
-h node2 \
consul agent -server -bind=0.0.0.0 \
-join=172.17.0.2 -node-id=$(uuidgen | awk '{print tolower($0)}') \
-node=node2 \
-data-dir=/tmp/data-dir -client 0.0.0.0 -ui
docker run -d --name=node3 --restart=always \
-e 'CONSUL_LOCAL_CONFIG={"skip_leave_on_interrupt": true}' \
-p 10300:8300  \
-p 10301:8301 \
-p 10301:8301/udp \
-p 10302:8302/udp \
-p 10302:8302 \
-p 10400:8400 \
-p 10500:8500 \
-p 10600:8600 \
-h node3 \
consul agent -server -bind=0.0.0.0 \
-join=172.17.0.2 -node-id=$(uuidgen | awk '{print tolower($0)}') \
-node=node3 \
-data-dir=/tmp/data-dir -client 0.0.0.0 -ui

此时再去查看节点

 再去浏览器看一下Consul

 可以通过命令查看主从信息,看看当前谁是Leader,谁是follower

docker exec -t node1 consul operator raft list-peers ##查看主从信息

Client构建

node4、node5

docker run -d --name=node4  --restart=always \
-e 'CONSUL_LOCAL_CONFIG={"leave_on_terminate": true}' \
-p 11300:8300 \
-p 11301:8301 \
-p 11301:8301/udp \
-p 11302:8302/udp \
-p 11302:8302 \
-p 11400:8400 \
-p 11500:8500 \
-p 11600:8600 \
-h node4 \
consul agent -bind=0.0.0.0 -retry-join=172.17.0.2 \
-node-id=$(uuidgen | awk '{print tolower($0)}') \
-node=node4 -client 0.0.0.0 -ui
docker run -d --name=node5  --restart=always \
-e 'CONSUL_LOCAL_CONFIG={"leave_on_terminate": true}' \
-p 12300:8300 \
-p 12301:8301 \
-p 12301:8301/udp \
-p 12302:8302/udp \
-p 12302:8302 \
-p 12400:8400 \
-p 12500:8500 \
-p 12600:8600 \
-h node5 \
consul agent -bind=0.0.0.0 -retry-join=172.17.0.2 \
-node-id=$(uuidgen | awk '{print tolower($0)}') \
-node=node5 -client 0.0.0.0 -ui

再次看看节点信息,可以看到已经有三个Server和两个Client

 界面商业展示出五个node

服务注册与发现在项目上的使用与另一篇文章一致

服务注册与发现-Consul(Window)_XiaoGuaiSs的博客-CSDN博客Install | Consul | HashiCorp DeveloperExplore Consul product documentation, tutorials, and examples.https://developer.hashicorp.com/consul/downloadshttps://blog.csdn.net/m0_37894611/article/details/130349754?spm=1001.2014.3001.5501


http://www.ppmy.cn/news/56621.html

相关文章

【OfflineExplorer篇】网站固定神器OfflineExplorer基础教程(简)

【OfflineExplorer篇】网站固定神器OfflineExplorer基础教程(简) 简单记录下,可固定特定网页数据脱机使用—【蘇小沐】 文章目录 【OfflineExplorer篇】网站固定神器OfflineExplorer基础教程(简)OfflineExplorer简介 …

10. hr 综合面试题汇总

10. hr 综合面试题汇总 C++软件与嵌入式软件面经解析大全(蒋豆芽的秋招打怪之旅) 本章讲解知识点 1.1 HR心理复盘1.2 HR常问问题——学校的表现怎么样啊?1.3 HR常问问题——了解我们公司吗?1.4 HR常问问题——个人情况1.5 HR常问问题——业余生活1.6 HR常问问题——薪资待…

c语言和cpp里面的强制类型转换

强制类型转换格式如下&#xff1a; &#xff08;新类型名)变量名 1 int a 1; double b10.0; b(double)a; 2. c的强制类型转换 dynamic_cast<类型> static_cast<类型> auto_cast<类型> 运行识别和强制内存管理 3.宏定义或者“宏替换” #define 标…

dpdk安装在虚拟机上如何安装

在虚拟机上安装DPDK需要满足以下条件&#xff1a; 安装有支持虚拟化的操作系统&#xff0c;如Ubuntu、CentOS等。 虚拟机需要启用Intel VT-x或AMD-V虚拟化技术。 在虚拟机中分配足够的资源给DPDK使用&#xff0c;如CPU核心数和内存大小。 安装有DPDK所需的依赖库&#xff0c…

有反爬机制就爬不了吗?那是你还不知道反反爬,道高一尺魔高一丈啊

文章目录 一、从用户请求的Headers反爬虫二、基于用户行为反爬虫&#xff08;1&#xff09;方法1&#xff08;2&#xff09;方法2 三、动态页面的反爬虫四.总结 不知道你们在用爬虫爬数据的时候是否有发现&#xff0c;越来越多的网站都有自己的反爬机制&#xff0c;抓取数据已经…

点亮第一个LED灯

点亮第一个LED灯 1、LED原理2、硬件设计3、软件设计3.1、点亮第一个LED灯汇编代码 3.2、LED闪烁实验3.3、LED流水灯实验3.4、拓展LED闪烁 &#xff0c;有节奏闪烁 1、LED原理 单向导电性&#xff0c;3mA-20mA之间。 怎么判断阴阳极。直插式&#xff1a;长的是阳极&#xff0c;…

现代微服务中缓存的分类及缓存一致性设计原则

引言 大部分面向公众的互联网系统&#xff0c;其并发请求数量与在线用户数量都是正相关的&#xff0c;而 MySQL能够承担的并发读写量是有一定上限的&#xff0c;当系统的访问量超过一定程度的时候&#xff0c;纯MySQL就很难应付了。 绝大多数互联网系统都是采用MySQLRedis这对…

Qt——Qt控件之输入窗口-QLineEdit单行编辑框控件的使用总结(例程:Qt单行文本编辑输入)

【系列专栏】:博主结合工作实践输出的,解决实际问题的专栏,朋友们看过来! 《项目案例分享》 《极客DIY开源分享》 《嵌入式通用开发实战》 《C++语言开发基础总结》 《从0到1学习嵌入式Linux开发》 《QT开发实战》 《Android开发实战》