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

news2024/11/26 5:49:09

【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: false
      Auto-Encrypt-TLS: false
           ACL Enabled: false
     Reporting Enabled: false
    ACL Default Policy: allow
             HTTPS TLS: Verify Incoming: false, Verify Outgoing: false, Min Version: TLSv1_2
              gRPC TLS: Verify Incoming: false, Min Version: TLSv1_2
      Internal 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.coloradmin.cn/o/1561303.html

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

相关文章

Layui三级联动插件使用方法

Layui高版本中没有在提供三级联动这个动画了&#xff0c;而是封装成了一个插件&#xff0c;使用方式也很简单 官网 省市县区三级联动下拉选择器 layarea - Layui 第三方扩展组件平台 (layuion.com)https://dev.layuion.com/extend/layarea/#doc html页面约束 整个选择器需要…

【二叉树】Leetcode 101. 对称二叉树【简单】

对称二叉树 给你一个二叉树的根节点 root &#xff0c; 检查它是否轴对称。 示例1&#xff1a; 输入&#xff1a;root [1,2,2,3,4,4,3] 输出&#xff1a;true 解题思路 判断一棵二叉树是否是轴对称的&#xff0c;可以通过递归方式进行判断。 1、定义一个递归函数isMirr…

【C++】C++入门第二课(函数重载 | 引用 | 内联函数 | auto关键字 | 指针空值nullptr)

目录 前言 函数重载 概念 重载函数的条件 C支持重载函数的原理--名字修饰 引用 概念 特性 常引用&#xff08;const引用&#xff09; 使用场景 传值&#xff0c;传引用效率比较 引用和指针的区别 内联函数 概念 特性 auto关键字&#xff08;C11&#xff09; a…

javaWeb项目-家政服务管理系统功能介绍

项目关键技术 开发工具&#xff1a;IDEA 、Eclipse 编程语言: Java 数据库: MySQL5.7 框架&#xff1a;ssm、Springboot 前端&#xff1a;Vue、ElementUI 关键技术&#xff1a;springboot、SSM、vue、MYSQL、MAVEN 数据库工具&#xff1a;Navicat、SQLyog 1、B/S结构简介 B/S…

OpenHarmony实战:使用宏、std::bind 巧妙实现进出函数日志打印

背景 我们始终渴望了解模块的调用、时序逻辑&#xff0c;每个人都会轻易地想到在函数的入口打印一条进入 enter 相关的日志&#xff0c;在函数的出口打印一条离开 leave 相关的日志。不能有遗漏&#xff0c;我们会复制这条日志到所有关心的函数中&#xff0c;为了表明是哪个模…

网络以太网之(1)基础概念

网络以太网之(1)基础概念 Author: Once Day Date: 2024年4月1日 一位热衷于Linux学习和开发的菜鸟&#xff0c;试图谱写一场冒险之旅&#xff0c;也许终点只是一场白日梦… 漫漫长路&#xff0c;有人对你微笑过嘛… 全系列文档可参考专栏&#xff1a;通信网络技术_Once-Day的…

EI会议相当于国内什么期刊?

EI工程索引收录类型有EI期刊和EI会议&#xff0c;EI会议水平是比较高的&#xff0c;也有的作者喜欢将EI会议与国内刊物作比较&#xff0c;那么EI会议相当于国内什么期刊&#xff1f;这主要看是什么级别的会议&#xff0c;顶尖学术会议相当于国内北大核心期刊。 EI会议应用范围和…

python怎么处理txt

导入文件处理模块 import os 检测路径是否存在&#xff0c;存在则返回True&#xff0c;不存在则返回False os.path.exists("demo.txt") 如果你要创建一个文件并要写入内容 #如果demo.txt文件存在则会覆盖&#xff0c;并且demo.txt文件里面的内容被清空&#xff0c;如…

系统架构图怎么画

画架构图是架构师的一门必修功课。 对于架构图是什么这个问题&#xff0c;我们可以按以下等式进行概括&#xff1a; 架构图 架构的表达 架构在不同抽象角度和不同抽象层次的表达&#xff0c;这是一个自然而然的过程。 不是先有图再有业务流程、系统设计和领域模型等&#…

哈希表(Hash Table) -- 用数组模拟--字符串前缀哈希

本文用于个人算法竞赛学习&#xff0c;仅供参考 目录 一.什么是哈希表 二.哈希函数中的取模映射 三.拉链法&#xff08;数组实现&#xff09; 四.拉链法模板 五.开放寻址法 六.开放寻址法模板 七.字符串前缀哈希 九.字符串前缀哈希 模板 十.题目 一.什么是哈希表 哈希表&…

fork复制进程

1.shell: 在计算机科学中&#xff0c;Shell俗称壳&#xff08;用来区别于核&#xff09;&#xff0c;是指“为使用者提供操作界面”的软件&#xff08;command interpreter&#xff0c;命令解析器&#xff09;。它类似于DOS下的COMMAND.COM和后来的cmd.exe。它接收用户命令&am…

C语言中入门到实战————动态内存管理

目录 前言 一、为什么要有动态内存分配 二、 malloc和free 2.1 malloc 2.2 free 三、calloc和realloc 3.1 calloc 3.2 realloc 四. 常见的动态内存的错误 4.1 对NULL指针的解引用操作 4.2 对动态开辟空间的越界访问 4.3 对非动态开辟内存使用free释放 4.4 使…

2024年【T电梯修理】考试题及T电梯修理考试内容

题库来源&#xff1a;安全生产模拟考试一点通公众号小程序 2024年【T电梯修理】考试题及T电梯修理考试内容&#xff0c;包含T电梯修理考试题答案和解析及T电梯修理考试内容练习。安全生产模拟考试一点通结合国家T电梯修理考试最新大纲及T电梯修理考试真题汇总&#xff0c;有助…

Collection与数据结构链表与LinkedList(三):链表精选OJ例题(下)

1. 分割链表 OJ链接 class Solution {public ListNode partition(ListNode head, int x) {if(head null){return null;//空链表的情况}ListNode cur head;ListNode formerhead null;ListNode formerend null;ListNode latterhead null;ListNode latterend null;//定义…

计算机网络数据链路层知识总结

物理层知识总结传送门 计算机网络物理层知识点总结-CSDN博客 功能 功能概述 一些基本概念 结点:主机、路由器链路﹔网络中两个结点之间的物理通道&#xff0c;链路的传输介质主要有双绞线、光纤和微波。分为有线链路、无线链路。数据链路︰网络中两个结点之间的逻辑通道&a…

Transformers -- 深入研究 - part 3

公众号:Halo咯咯,欢迎关注~ 前文回顾: Transformers -- 以通俗易懂的方式解释 - Part 1Transformers -- 未知英雄 - Part 2世界正在为人工智能和生成式人工智能而疯狂,特别是 2023 年的 ChatGPT 和大型语言模型。在我们讨论本系列后续部分的技术细节之前,让我们先从它的想…

移植day3

思维导图 重点README文档 1、解压tf-a源码 $> tar xfz tf-a-stm32mp-2.2.r2-r0.tar.gz 2、进入tf-a源码目录 $> cd tf-a-stm32mp-2.2.r2 3、打补丁命令&#xff0c;作用&#xff1a;补丁文件中存放默认的一些配置文件&#xff0c;对于程序员来说&#xff0c;需要将补丁…

【c++初阶】类与对象(下)

✅✅✅✅✅✅✅✅✅✅✅✅✅✅✅✅ ✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨ &#x1f33f;&#x1f33f;&#x1f33f;&#x1f33f;&#x1f33f;&#x1f33f;&#x1f33f;&#x1f33f;&#x1f33f;&#x1f33f;&#x1f33f;&#x1f33f;&#x1f33f;&#x1f33f;&#x1…

【前端】使用Web Audio API 技术播放音乐

简言 记录下使用web audio播放音乐的方法。 Web Audio API Web Audio API 提供了在 Web 上控制音频的一个非常有效通用的系统&#xff0c;允许开发者来自选音频源&#xff0c;对音频添加特效&#xff0c;使音频可视化&#xff0c;添加空间效果&#xff08;如平移&#xff09…

CUDA从入门到放弃(十三):C++语言扩展 C++ Language Extensions

CUDA从入门到放弃&#xff08;十三&#xff09;&#xff1a;C语言扩展 C Language Extensions 1 Function Execution Space Specifiers 函数执行空间指定符 这些指定符定义函数是在主机还是设备上执行&#xff0c;以及它们是否可以跨平台调用。 1-1 __global__ __global__指…