千家信息网

Consul术语和命令有哪些

发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,本篇内容主要讲解"Consul术语和命令有哪些",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"Consul术语和命令有哪些"吧!AgentConsul集群中
千家信息网最后更新 2026年11月02日Consul术语和命令有哪些

本篇内容主要讲解"Consul术语和命令有哪些",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"Consul术语和命令有哪些"吧!

Agent

Consul集群中在后台长时间运行的进程就是代理。代理通过consul agent启动。代理能够以客户端或服务端模式运行。因为集群中每个节点都必须有一个代理,因此将节点称为客户端或服务器更为简单。所有的代理都可以有DNS或HTTP接口,负责健康检查和保持服务同步。

Client

客户端是将所有RPC请求转发到服务端的代理。客户端是相对无状态的。客户端跑的唯一后台程序就是参与LAN的gossip池。这种活动资源开销最小,并且仅消耗少量的网络带宽。

Server

服务端是有扩展职责集的代理,扩展功能包括参与Raft仲裁,维护集群状态,响应RPC请求,与其他数据中心交换WAN gossip,以及将查询转发给集群leader或远程数据中心。

Datacenter

数据中心是一个私有的,低延迟的,高带宽的网络环境。当然这不包括穿越公网的通信,但出于我们的目的,单个EC2区域内的多个可用区将被视为单个数据中心的一部分。

Consensus

共识协议就是集群选举leader的一致性协议和交易顺序的协议。由于这些事务适用于有限状态机,因此我们对一致性的定义意味着复制状态机的一致性。共识在Wikipedia上有更详细的描述,后面的文章会说Consul的实现。

Gossip

Consul建立在Serf之上,Serf提供了完整的,可用于多种目的Gossip协议。Serf提供了成员管理,故障检测和事件广播等功能。后面会重点说Gossip协议。Gossip会涉及到随机的节点到节点的UDP通信。

LAN Gossip

指的是局域网Gossip池,其中包含的节点都位于同一局域网或数据中心上。

WAN Gossip

指仅包含服务端的WAN Gossip池。这些Consul服务端主要位于不同的数据中心上,一般通过Internet或广域网进行通信。

RPC

远程过程调用。一种请求/响应模式,允许客户端向服务器发出请求。

serf

serf 和Consul一样,也是出自 Hashicorp 的开源项目, 实现了去中心化的 gossip协议,其中 gossip 协议定义了一种类似病毒感染的消息传播过程。一些著名的开源项目,如 Docker 和这里说的 Consul,网络管理和服务发现的核心组件是基于 serf 实现的,然而它们背后的 serf 似乎还鲜为人知,一方面其复杂的理论以及不完善的文档让人望而却步;另一方面,gossip 协议天然的数据 弱一致性 也制约了 serf 的使用场景。

创建一个数据中心,需要先创建一个服务端集群。创建一个服务端的推荐方法是使用-bootstrap-expect选项。此选项是创建的Consul服务器节点的预期数量,并在有那么多服务器可用时自动引导。为避免出现不一致和脑裂(多个服务器将其视为leader的集群)情况,必须要把-bootstrap-expect指定相同的值,或者在所有服务器上完全不指定任何值。只有指定值的服务器才会尝试引导群集。

假设正在启动一个三个服务节点的集群。可以通过分别提供-bootstrap-expect 3的标识来启动节点A,节点B和节点C。节点启动后,可以在服务输出中看到一条警告消息。

[WARN] raft: EnableSingleNode disabled, and no known peers. Aborting election.

警告表明节点期望有2个对等节点,但还不知道。下篇文章会介绍如何启动一个三个几点的Consul集群,到时候会用到这个命令。

接上一篇文章的启动命令

docker run \    -d \    -p 8500:8500 \    -p 8600:8600/udp \    --name=badger \    consul agent -server -ui -node=server -bootstrap-expect=1

之前在创建Consul节点的时候,指定了bootstrap-expect的值为1,这里就是一个单节点的Consul集群,因为是实验性的课程,所以这里设置了1,1个节点也是可以的,同样可以作为服务使用,只是在生产环境别这样设置,sh

端口

一个服务端Consul节点最多需要6个不同的端口才能正常工作,某些端口需要使用TCP,UDP或同时使用这两种协议。

在运行Consul之前,应该确保可以访问以下绑定端口。

用途默认端口
DNS: DNS服务 (TCP 或者 UDP)8600
HTTP: HTTP接口(只有TCP)8500
HTTPS: HTTPs接口建议端口 ,默认关闭(8501)*
gRPC:gRPC接口建议端口,默认关闭 (8502)*
LAN Serf: 局域网端口(TCP和UDP)8301
Wan Serf:Serf WAN端口(TCP和UDP)8302
服务器:服务器RPC地址(仅TCP)8300
Sidecar Proxy Min:包含的最小端口号,用于自动分配的sidecar服务注册。21000
Sidecar Proxy Max: 包含的最大端口号,用于自动分配的sidecar服务注册。21255

端口用途

  • DNS接口 用于解析DNS查询

  • HTTP API 客户端通过HTTP API请求服务端

  • HTTPS API(可选)默认情况下处于关闭状态,但8501端口是多种工具默认使用的。

  • gRPC API(可选)当前,gRPC仅用于将xDS API公开给Envoy代理。默认情况下它是关闭的,但是端口8502是各种工具默认使用的。在-dev模式下默认为8502。

  • Serf LAN 用于处理LAN中的gossip协议。所有代理都需要。

  • Serf WAN 服务器广域网服务器使用它来通过广域网传播到其他服务器。从Consul 0.8开始,WAN连接泛洪功能要求Serf WAN端口(TCP / UDP)在WAN和LAN接口上进行监听。

  • RPC 服务器用来处理来自其他代理(agent)的请求。

到此,相信大家对"Consul术语和命令有哪些"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

服务 节点 服务器 端口 集群 代理 数据 客户 客户端 数据中心 接口 命令 状态 一致 一致性 就是 术语 功能 局域 局域网 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网和科技技术 互联网科技行业发展 没上市的科技互联网公司 猪兼强互联网科技 嘟嘟瓜互联网科技 互联网科技股有哪些 盛创互联网科技有限公司 哈尔滨新华互联网科技 玖二柒互联网科技公司待遇 阿里巴巴算科技企业还是互联网 茂名市互联网科技产业园 宁夏科技产业互联网案例 互联网科技革命什么开始 移动互联网年度科技创新 华中科技大学互联网的牛人 国产互联网科技公司 求路客互联网科技电话 深圳互联网科技园地址 陕西彩京云互联网科技有限公司 保山浩联互联网科技有限公司 深圳互联网络科技有限公司 上海挚品互联网科技 奔汉互联网科技 四个字互联网科技公司取名 互联网科技实习生岗位职责 伍佰万互联网科技怎么赚钱 城市宝互联网科技有限公司 从那以后互联网科技有限公司 科技互联网公司两年变化 互联网科技创业有什么好项目
0