如何启动 Linux 上的 Consul 服务? (linux consul 启动)

Consul是一种开源的、分布式的服务发现和配置管理系统,它通常被用作微服务的治理工具。Consul可以自动监测网络中的服务,或者手动管理服务与节点之间的关系,同时支持基于DNS或者HTTP的服务发现方式。Consul运行在Linux上,本文将向你介绍如何在Linux系统上启动Consul服务。

步骤一:下载Consul

在Linux上安装Consul之前,首先需要从HashiCorp官网(https://www.consul.io/downloads.html)下载Consul的最新版本。可以选择适合你所使用的操作系统,比如Linux、macOS或者Windows。Consul还根据不同的CPU架构提供不同的下载版本,比如AMD64,ARM等。

可以运行以下命令下载Consul的最新版本:

“`

$ wget https://releases.hashicorp.com/consul/1.8.4/consul_1.8.4_linux_amd64.zip

“`

解压下载的Consul文件:

“`

$ unzip consul_1.8.4_linux_amd64.zip

“`

步骤二:编写Consul配置文件

Consul需要一个配置文件才能启动,可以通过以下命令创建一个配置文件:

“`

$ sudo mkdir /etc/consul.d

$ sudo vi /etc/consul.d/config.json

“`

在创建的配置文件中,加入以下内容:

“`

{

“datacenter”: “mydc”,

“data_dir”: “/opt/consul”,

“log_level”: “INFO”,

“node_name”: “node1”,

“server”: true,

“bind_addr”: “192.168.56.2”,

“bootstrap_expect”: 1,

“ui”: true

}

“`

各个配置项的意义如下:

– datacenter:用于定义Consul集群所在的数据中心名称。

– data_dir:用于存储Consul数据的本地目录。

– log_level:指定Consul日志级别。

– node_name:指定当前节点的名称。

– server:如果值为true,说明当前节点是个服务器节点。

– bind_addr:用于指定Consul节点的IP地址。

– bootstrap_expect:指定需要至少几个服务器节点才能成立Consul集群。

– ui:如果为true,说明启用Consul的Web UI。

步骤三:启动Consul服务

Consul的启动需要指定配置文件路径,使用以下命令启动Consul:

“`

$ sudo ./consul agent -ui -config-dir=/etc/consul.d/

“`

关于上述命令的参数:

– agent:启动Consul的命令,agent在Consul中表示节点、客户端或服务器。

– ui:启用Consul的Web初始化界面(UI)。

– -config-dir:指定Consul的配置文件目录。

启动后,Consul将显示以下日志:

“`

==> Starting Consul agent…

==> Consul agent running!

Version: ‘1.8.4’

Node ID: ‘d70a75da-b089-2633-4c4e-82b4e8a995c4’

Node name: ‘node1’

Datacenter: ‘mydc’ (Segment: ”)

Server: true (Bootstrap: false)

Client Addr: 127.0.0.1 (HTTP: 8500, HTTPS: -1, gRPC: -1, DNS: 8600)

Cluster Addr: 192.168.56.2 (LAN: 8301, WAN: 8302)

Encrypt: Gossip: true, TLS-Outgoing: false, TLS-Incoming: false, Auto-Encrypt-TLS: false

“`

Consul已启动并正在运行.

步骤四:验证Consul服务

可以通过以下命令验证Consul服务是否已启动:

“`

$ curl http://localhost:8500/v1/catalog/services

“`

这里将返回一个空ON({}),因为还没有任何服务或节点注册到Consul中。

如果要验证是否成功注册了节点,可以在另一个终端中运行以下命令:

“`

$ sudo ./consul members

“`

这里应该会返回刚刚启动的Consul节点的信息。

在浏览器中打开以下地址可以进入Consul的Web UI:

“`

http://localhost:8500/ui/

“`

相关问题拓展阅读:

  • Consul集群故障恢复

Consul集群故障恢复

公司服务器突然断电宕机,通电开机后Consul集群自启动完成,但是无法注册握冲核服务,界面可以打开,但是无法一直在Loading状态,无法查看Nodes,无法查看Key/Value。

查看服务日志后发现是Master没有被选举出来,一直在报错 No cluster leader 。初步诊断为Consul集群数据不同步或Docker重启后IP变动和之前注册在raft中的不一致。

执行命令 consul operator raft list-peers 后提示500错误,无法正确展示。

排查段掘后定位问题为

Docker重判尘启后IP变动和之前注册在raft中的不一致

导致Consul集群无法自行选举出Master,这种问题需要手动恢复才能解决。

官方对于该问题的解决方案

这个问题解决需要用到 data/raft/peers.json 来进行手动选举与节点同步

PS:这里需要注意, peers.json 有两种格式,具体写描述可以查看 data/raft/peers.info 其中有详细的描述

如果直接按照官方的方式去做,还是会起不来的,因为各个节点之间互相不通信,每个节点都会投自己一票,结果永远会是同票数,同票数就意味着需要重新进行投票选举,就会一直陷入死循环,所以要让其他节点主动放弃自己的投票权,只保留一个节点进行投票,这样才能选举出Master。将 non_voter 设置为true就不会参与选举了。

我的是 Raft Protocol Version 3使用如下ON。

参数解释

PS:这个文件只要放在任意一个节点上面就行了,无需所有节点都放

重启Consul,集群恢复。

linux consul 启动的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于linux consul 启动,如何启动 Linux 上的 Consul 服务?,Consul集群故障恢复的信息别忘了在本站进行查找喔。

香港服务器首选树叶云,2H2G首月10元开通。
树叶云(shuyeidc.com)提供简单好用,价格厚道的香港/美国云服务器和独立服务器。IDC+ISP+ICP资质。ARIN和APNIC会员。成熟技术团队15年行业经验。

文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/217204.html<

(0)
运维的头像运维
上一篇2025-04-13 02:06
下一篇 2025-04-13 02:07

相关推荐

  • 个人主题怎么制作?

    制作个人主题是一个将个人风格、兴趣或专业领域转化为视觉化或结构化内容的过程,无论是用于个人博客、作品集、社交媒体账号还是品牌形象,核心都是围绕“个人特色”展开,以下从定位、内容规划、视觉设计、技术实现四个维度,详细拆解制作个人主题的完整流程,明确主题定位:找到个人特色的核心主题定位是所有工作的起点,需要先回答……

    2025-11-20
    0
  • 社群营销管理关键是什么?

    社群营销的核心在于通过建立有温度、有价值、有归属感的社群,实现用户留存、转化和品牌传播,其管理需贯穿“目标定位-内容运营-用户互动-数据驱动-风险控制”全流程,以下从五个维度展开详细说明:明确社群定位与目标社群管理的首要任务是精准定位,需明确社群的核心价值(如行业交流、产品使用指导、兴趣分享等)、目标用户画像……

    2025-11-20
    0
  • 香港公司网站备案需要什么材料?

    香港公司进行网站备案是一个涉及多部门协调、流程相对严谨的过程,尤其需兼顾中国内地与香港两地的监管要求,由于香港公司注册地与中国内地不同,其网站若主要服务内地用户或使用内地服务器,需根据服务器位置、网站内容性质等,选择对应的备案路径(如工信部ICP备案或公安备案),以下从备案主体资格、流程步骤、材料准备、注意事项……

    2025-11-20
    0
  • 如何企业上云推广

    企业上云已成为数字化转型的核心战略,但推广过程中需结合行业特性、企业痛点与市场需求,构建系统性、多维度的推广体系,以下从市场定位、策略设计、执行落地及效果优化四个维度,详细拆解企业上云推广的实践路径,精准定位:明确目标企业与核心价值企业上云并非“一刀切”的方案,需先锁定目标客户群体,提炼差异化价值主张,客户分层……

    2025-11-20
    0
  • PS设计搜索框的实用技巧有哪些?

    在PS中设计一个美观且功能性的搜索框需要结合创意构思、视觉设计和用户体验考量,以下从设计思路、制作步骤、细节优化及交互预览等方面详细说明,帮助打造符合需求的搜索框,设计前的规划明确使用场景:根据网站或APP的整体风格确定搜索框的调性,例如极简风适合细线条和纯色,科技感适合渐变和发光效果,电商类则可能需要突出搜索……

    2025-11-20
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注