【Consul】Linux安装Consul保姆级教程

【Consul】Linux安装Consul保姆级教程

大家好 我是寸铁👊
总结了一篇【Consul】Linux安装Consul保姆级教程✨
喜欢的小伙伴可以点点关注 💝


前言

今天要把编写的go程序放到linux上进行测试Consul服务注册与发现,那怎么样才能实现这一过程?


安装

Step1

sudo yum install -y yum-utils

这个命令安装了 yum-utils 软件包,它提供了一些实用的yum工具,比如 yum-config-manager,用于管理 yum 配置。

运行结果如下:

在这里插入图片描述


Step2

sudo yum-config-manager --add-repo https://rpm.releases.hashicorp.com/RHEL/hashicorp.repo

这个命令通过yum-config-manager工具向yum添加了一个新的仓库,即 HashiCorp 的软件包仓库。该仓库位于 https://rpm.releases.hashicorp.com/RHEL/hashicorp.repo,并包含了Consul和其他 HashiCorp 工具的软件包。

运行结果如下:

在这里插入图片描述


Step3

sudo yum -y install consul

这个命令使用 yum 包管理器从 HashiCorp 仓库安装了 Consul-y 标志表示在安装过程中不需要用户确认,直接默认回答 "yes"

运行结果如下:

在这里插入图片描述


验证安装成功

consul version

在这里插入图片描述


启动客户端

做完三步启动一下Consul的客户端,命令如下:

consul agent -dev

启动成功后,会弹出如下信息:

在这里插入图片描述

代表启动Consul客户端成功!


停止服务

在节点运行终端中执行:ctrl + c,表示退出节点运行。


报错排查

出现如下信息,报错不要慌,寸铁带你解决!

=> Starting Consul agent...Version: '1.18.1'Build Date: '2024-03-26 21:59:08 +0000 UTC'Node ID: '7d32991a-f1f0-ba7f-8f21-3bfe0ddf3295'Node name: 'localhost.localdomain'Datacenter: 'dc1' (Segment: '<all>')Server: true (Bootstrap: false)Client Addr: [127.0.0.1] (HTTP: 8500, HTTPS: -1, gRPC: 8502, gRPC-TLS: 8503, DNS: 8600)Cluster Addr: 127.0.0.1 (LAN: 8301, WAN: 8302)Gossip Encryption: falseAuto-Encrypt-TLS: falseACL Enabled: falseReporting Enabled: falseACL Default Policy: allowHTTPS TLS: Verify Incoming: false, Verify Outgoing: false, Min Version: TLSv1_2gRPC TLS: Verify Incoming: false, Min Version: TLSv1_2Internal RPC TLS: Verify Incoming: false, Verify Outgoing: false (Verify Hostname: false), Min Version: TLSv1_2==> Log data will now stream in as it occurs:2024-03-30T23:31:57.167+0800 [WARN]  agent: Node name "localhost.localdomain" will not be discoverable via DNS due to invalid characters. Valid characters include all alpha-numerics and dashes.
2024-03-30T23:31:57.168+0800 [DEBUG] agent.hcp: initialized HCP metrics sink
2024-03-30T23:31:57.169+0800 [DEBUG] agent.grpc.balancer: switching server: target=consul://dc1.7d32991a-f1f0-ba7f-8f21-3bfe0ddf3295/server.dc1 from=<none> to=<none>
2024-03-30T23:31:57.180+0800 [WARN]  agent.auto_config: Node name "localhost.localdomain" will not be discoverable via DNS due to invalid characters. Valid characters include all alpha-numerics and dashes.
2024-03-30T23:31:57.183+0800 [INFO]  agent.server: shutting down server
2024-03-30T23:31:57.184+0800 [ERROR] agent: Error starting agent: error="Failed to start Consul server: Failed to start RPC layer: listen tcp 127.0.0.1:8300: bind: address already in use"
2024-03-30T23:31:57.184+0800 [INFO]  agent: Exit code: code=1

具体如下:

2024-03-30T23:31:57.184+0800 [ERROR] agent: Error starting agent: error="Failed to start Consul server: Failed to start RPC layer: listen tcp 127.0.0.1:8300: bind: address already in use"
2024-03-30T23:31:57.184+0800 [INFO]  agent: Exit code: code=1

这个地址127.0.0.1:8300已经在使用了,说明你已经启动了。


使用如下命令ps -ef | grep consul查看使用情况:

$ ps -ef | grep consul
root     16888    1  0 Jan20 ?        09:22:26 consul agent -dev
root     22218 19751  0 16:45 pts/0    00:00:00 grep --color=auto consul

如果想要关闭,执行命令kill -9 强制杀死进程,第一个元素(上面的16888)就是进程id

再重新启动,如下:

consul agent -dev

显示结果如下:

在这里插入图片描述

说明启动成功了!


查看Consul信息

查看服务目录

consul catalog services

如下信息:

[root@localhost ~]# consul catalog services
consul

consul是Consul官方默认存在的一个服务


查看注册服务的信息

Consul监控的8500端口发送请求,查看注册Consul服务的信息。

curl http://localhost:8500/v1/agent/services

查看笔者注册的Consul信息结果如下:

[root@localhost resourceScheMana]# curl http://localhost:8500/v1/agent/services
{"C_72_B_1": {"ID": "AAAA","Service": "ADD","Tags": ["sadijsajmijdsa5256451"],"Meta": {},"Port": 1151,"Address": "124.30.52.xx","TaggedAddresses": {"lan_ipv4": {"Address": "124.30.52.xx","Port": 1611},"wan_ipv4": {"Address": "124.30.52.xx","Port": 1611}},"Weights": {"Passing": 1,"Warning": 1},"EnableTagOverride": false,"Datacenter": "dc1"}

至此,Linux安装和使用Consul的基本操作完成!!!


看到这里的小伙伴,恭喜你又掌握了一个技能👊
希望大家能取得胜利,坚持就是胜利💪
我是寸铁!我们下期再见💕

往期好文💕

保姆级教程

【保姆级教程】Windows11下go-zero的etcd安装与初步使用

【保姆级教程】Windows11安装go-zero代码生成工具goctl、protoc、go-zero

【Go-Zero】手把手带你在goland中创建api文件并设置高亮


报错解决

【Go-Zero】Error: user.api 27:9 syntax error: expected ‘:‘ | ‘IDENT‘ | ‘INT‘, got ‘(‘ 报错解决方案及api路由注意事项

【Go-Zero】Error: only one service expected goctl一键转换生成rpc服务错误解决方案

【Go-Zero】【error】 failed to initialize database, got error Error 1045 (28000):报错解决方案

【Go-Zero】Error 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using password: YES)报错解决方案

【Go-Zero】type mismatch for field “Auth.AccessSecret“, expect “string“, actual “number“报错解决方案

【Go-Zero】Error: user.api 30:2 syntax error: expected ‘)‘ | ‘KEY‘, got ‘IDENT‘报错解决方案

【Go-Zero】Windows启动rpc服务报错panic:context deadline exceeded解决方案


Go面试向

【Go面试向】defer与time.sleep初探

【Go面试向】defer与return的执行顺序初探

【Go面试向】Go程序的执行顺序

【Go面试向】rune和byte类型的认识与使用

【Go面试向】实现map稳定的有序遍历的方式

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/782968.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

25Ramdisk 启动模式简介

Ramdisk 启动模式简介 ramdisk是一种虚拟磁盘技术,我们的PE系统几乎都是使用ramdisk方式从计算机启动的.那么,ramdisk有哪些特点呢? Ramdisk 将内存虚拟为一个磁盘 Ramdisk技术会将你的一部分内存虚拟成一块磁盘分区.使用U盘启动pe系统时,打开pe系统里的文件资源管理器,你会看…

CKS之安全沙箱运行容器:gVisor

目录 一、gVisor介绍 二、gVisor架构 三、gVisor使用前置条件 四、Docker中使用gVisor 五、containerd中使用gVisor 六、Kubernetes结合gVisor使用 一、gVisor介绍 gVisor是Google开源的一种容器沙箱技术&#xff0c;其设计初衷是在提供较高安全性的同时&#xff0c;尽量…

从输入url到页面展示的过程

唠唠叨&#xff1a;我不想误人子弟&#xff0c;我这篇算是搬运工&#xff0c;加上自己的理解做点总结&#xff0c;所以还请大家科学上网去看这篇&#xff1a;https://aws.amazon.com/cn/blogs/mobile/what-happens-when-you-type-a-url-into-your-browser/ 是这六个步骤&#…

杰发科技——Jlink插件使用

0. 简介 杰发自带的烧录工具是ATCLink&#xff0c;基于DapLink适配。个人不太喜欢ATCLink&#xff0c;推荐使用Jlink&#xff0c;毕竟自己买&#xff0c;不用问原厂要&#xff0c;而且带Jlink&#xff0c;至少5Mhz以上。 V9烧录器使用7.50以下版本驱动。 V11烧录器可以使用7…

热烈祝贺阿里云PolarDB登顶2024最新一期中国数据库流行榜

热烈祝贺阿里云PolarDB登顶2024最新一期中国数据库流行榜 墨天轮墨天轮国产数据库流行度排行PolarDB首度夺魁关于话题的讨论数据库流行度排行榜会影响你的数据库选型吗&#xff1f;对于 PolarDB 的本次登顶&#xff0c;你认为关键因素是什么&#xff1f;PolarDB“三层分离”新版…

【Review】小米汽车发布会

动力方面 顶配双电机四驱&#xff0c;小米超级电机21000转&#xff0c;最大马力673ps&#xff0c;峰值功率495kW&#xff0c;峰值扭矩838N.m。风阻系数最低0.195&#xff0c;零百加速最快2.78秒&#xff0c;时速最高265km/h。 底盘方面 前双叉臂&#xff0c;后无五连杆&#xf…

C++—vector的介绍及使用 vector的模拟实现

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 目录 文章目录 前言 一、vector的介绍及使用 1.1 vector的介绍 1.2 vector的使用 1.2.1 vector的定义 1.2.2 vector iterator 的使用 1.2.3 vector 空间增长问题 1.2.4 vecto…

【C语言】贪吃蛇【附源码】

欢迎来到英杰社区https://bbs.csdn.net/topics/617804998 一、游戏说明&#xff1a; 一个基于C语言链表开发的贪吃蛇游戏&#xff1a; 1. 按方向键上下左右&#xff0c;可以实现蛇移动方向的改变。 2. 短时间长按方向键上下左右其中之一&#xff0c;可实现蛇向该方向的短时间…

Unity 基于Rigidbody2D模块的角色移动

制作好站立和移动的动画后 控制器设计 站立 移动 角色移动代码如下&#xff1a; using System.Collections; using System.Collections.Generic; using Unity.VisualScripting; using UnityEngine;public class p1_c : MonoBehaviour {// 获取动画组件private Animator …

最短路径——Floyd算法、Dijkstra算法(未完...)

这里写目录标题 例题引入&#xff1a; 路径——蓝桥2021省赛题目分析题解&#xff01;&#xff01;&#xff01;求最短路径问题&#xff01;&#xff01;&#xff01;应用场景图的基础Floyd算法Acwing-843.有边数限制的最短路简单的思路讲解 Dijkstra算法 例题引入&#xff1a;…

车载以太网AVB交换机 gptp透明时钟 8口 千兆/百兆可切换 SW1100TR

SW1100TR车载以太网交换机 一、产品简要分析 8端口千兆和百兆混合车载以太网交换机&#xff0c;其中包含2个通道的1000BASE-T1采用罗森博格H-MTD接口&#xff0c;5通道100BASE-T1泰科MATEnet接口和1个通道1000BASE-T标准以太网(RJ45接口)&#xff0c;可以实现车载以太网多通道…

Acrobat Pro DC 2023 for Mac PDF编辑管理软件

Acrobat Pro DC 2023 for Mac是一款功能强大的PDF编辑和管理软件&#xff0c;旨在帮助用户轻松处理PDF文件。它提供了丰富的工具和功能&#xff0c;使用户可以创建、编辑、转换和注释PDF文件&#xff0c;以及填写和签署PDF表单。 软件下载&#xff1a;Acrobat Pro DC 2023 for …

Matlab将日尺度数据转化为月尺度数据

日尺度转化为月尺度 clcclear all% load datadata xlread(data.xlsx) % 例如该数据为1961-01-01至2022-12-31&#xff0c;共计22645天data data(:,1:3) % 该数据有22645行&#xff0c;数据分别为降水&#xff0c;气温&#xff0c;湿度等三列dt datetime(1961-01-01):datatim…

一种调用所有LLM模型API的方式

公众号&#xff1a;【可乐前端】&#xff0c;每天3分钟学习一个优秀的开源项目&#xff0c;分享web面试与实战知识&#xff0c;也有全栈交流学习摸鱼群&#xff0c;期待您的关注! 每天3分钟开源 hi&#xff0c;这里是每天3分钟开源&#xff0c;很高兴又跟大家见面了&#xff0…

FDM3D打印系列——手涂水性漆和补土

大家好&#xff0c;我是阿赵。   继续探索FDM3D打印。这次要打印的是拳皇系列的经典角色&#xff0c;八神庵&#xff1a;   上次那个卢卡尔打印的尺寸有点小&#xff0c;为了配合着卢卡尔的高度&#xff0c;所以这次这个八神庵也打印的特别的小&#xff1a;   特别小的…

C语言 键盘输入与屏幕输出——数据的格式化屏幕输出

目录 顺序结构 C语言如何实现数据的输入和输出&#xff1f; 数据的格式化屏幕输出 printf&#xff08;&#xff09;格式字符 printf&#xff08;&#xff09;的格式修饰符 顺序结构 一般而言&#xff0c;顺序结构程序涉及如下三个基本操作&#xff1a; *输入数据 *处理数…

C++STLmap,set

我最近开了几个专栏&#xff0c;诚信互三&#xff01; > |||《算法专栏》&#xff1a;&#xff1a;刷题教程来自网站《代码随想录》。||| > |||《C专栏》&#xff1a;&#xff1a;记录我学习C的经历&#xff0c;看完你一定会有收获。||| > |||《Linux专栏》&#xff1…

什么是公网IP?

公网IP&#xff0c;即公开网络IP地址&#xff0c;是指在互联网中公开可见、可访问的IP地址。每个设备在连接互联网时&#xff0c;都需要一个唯一的公网IP地址&#xff0c;以便其他设备可以定位并与之通信。 尽管公网IP在网络通信中具有重要作用&#xff0c;但它也带来了一些安全…

在GitHub上上传项目(Idea)

repository创建好后&#xff0c;GitHub会提示相应的命令 在Idea的终端执行这些命令&#xff0c;就OK了 在GitHub上查看&#xff0c;已经上传成功

【Hello,PyQt】QTextEdit和QSplider

PyQt5 是一个强大的Python库&#xff0c;用于创建图形用户界面&#xff08;GUI&#xff09;。其中&#xff0c;QTextEdit 控件作为一个灵活多用的组件&#xff0c;常用于显示和编辑多行文本内容&#xff0c;支持丰富的格式设置和文本操作功能。另外&#xff0c;QSlider 控件是一…