consul-esm Docker 镜像下载 - 轩辕镜像
consul-esm 镜像详细信息和使用指南
consul-esm 镜像标签列表和版本信息
consul-esm 镜像拉取命令和加速下载
consul-esm 镜像使用说明和配置指南
Docker 镜像加速服务 - 轩辕镜像平台
国内开发者首选的 Docker 镜像加速平台
极速拉取 Docker 镜像服务
相关 Docker 镜像推荐
热门 Docker 镜像下载
consul-esm 镜像详细信息
consul-esm 镜像标签列表
consul-esm 镜像使用说明
consul-esm 镜像拉取命令
Docker 镜像加速服务
轩辕镜像平台优势
镜像下载指南
相关 Docker 镜像推荐
consul-esm 镜像详细说明
consul-esm 使用指南
consul-esm 配置说明
consul-esm 官方文档
Consul ESM (External Service Monitor) 镜像文档
镜像概述
Consul ESM (External Service Monitor) 是一个与 Consul 协同运行的守护进程,主要用于对外部节点执行健康检查,并将这些健康检查的状态更新至 Consul 服务目录。若启用相关功能,还可管理外部节点的网络坐标更新,确保 Consul 能准确跟踪外部服务的位置信息。该镜像需配合 Consul 集群使用,扩展 Consul 对非集群内节点的监控能力。
核心功能与特性
核心功能
- 外部节点健康检查:对不在 Consul 集群内的外部节点执行用户定义的健康检查(如 HTTP、TCP、脚本检查等)。
- 健康状态同步:将外部节点的健康检查结果实时更新至 Consul 服务目录,确保目录状态与实际节点状态一致。
- 坐标管理(可选):支持更新外部节点的网络坐标,帮助 Consul 实现基于地理位置的服务发现(需手动启用)。
关键特性
- 与 Consul API 深度集成,无需修改 Consul 核心组件即可扩展监控范围。
- 轻量化设计,资源占用低,可部署于边缘节点或专用监控实例。
- 配置灵活,支持通过配置文件或环境变量定义检查规则及节点属性。
使用场景与适用范围
典型使用场景
- 跨网络服务监控:监控位于不同网络环境(如公有云、合作伙伴网络)的外部服务节点。
- 遗留系统集成:对无法直接接入 Consul 集群的遗留应用节点执行健康检查。
- 混合架构管理:在混合云或多云架构中,统一监控分布在不同平台的外部服务。
适用范围
- 已部署 Consul 集群,需扩展对外部节点监控能力的环境。
- 需要通过 Consul 服务目录集中管理内外部服务健康状态的场景。
- 依赖网络坐标进行服务路由或故障转移的 Consul 部署环境。
使用方法与配置说明
前置条件
- 已运行的 Consul 集群(服务端或客户端节点均可,需确保网络可达)。
- 外部节点的基础信息(如节点名称、地址、健康检查规则)已预先定义。
配置方式
Consul ESM 支持通过配置文件(推荐)或环境变量进行配置,核心配置项如下:
核心配置参数
| 参数名 | 说明 | 默认值 |
|---|---|---|
consul.address | Consul 服务地址(格式:host:port) | 127.0.0.1:8500 |
consul.token | 访问 Consul 的 ACL Token(若 Consul 启用 ACL) | 空 |
external-node | 外部节点名称(需唯一标识) | 无(必填) |
health-checks | 健康检查定义列表(JSON 格式,包含检查类型、超时时间、间隔等) | 无(必填) |
enable-coordinates | 是否启用外部节点坐标更新(true/false) | false |
log-level | 日志级别(trace/debug/info/warn/error) | info |
配置文件示例
创建 esm-config.hcl 配置文件,定义外部节点及健康检查规则:
hclconsul { address = "consul-server:8500" token = "your-acl-token" # 若 Consul 未启用 ACL,可省略此行 } external_node { name = "external-db-node" address = "192.168.1.100" } health_checks = [ { name = "db-tcp-check" type = "tcp" address = "192.168.1.100" port = 3306 interval = "10s" timeout = "5s" }, { name = "app-http-check" type = "http" url = "[***]" interval = "5s" timeout = "2s" } ] enable_coordinates = true # 启用坐标更新 log_level = "info"
Docker 部署示例
1. 使用 docker run 部署
bashdocker run -d \ --name consul-esm \ -v $(pwd)/esm-config.hcl:/etc/consul-esm/esm-config.hcl \ # 挂载配置文件 -e CONSUL_ESM_CONFIG_FILE=/etc/consul-esm/esm-config.hcl \ # 指定配置文件路径 hashicorp/consul-esm:latest
2. 使用 docker-compose 部署
创建 docker-compose.yml:
yamlversion: "3.8" services: consul-esm: image: hashicorp/consul-esm:latest container_name: consul-esm volumes: - ./esm-config.hcl:/etc/consul-esm/esm-config.hcl environment: - CONSUL_ESM_CONFIG_FILE=/etc/consul-esm/esm-config.hcl restart: unless-stopped network_mode: "host" # 若外部节点与容器不在同一网络,需配置端口映射或使用 host 网络
验证部署
- 检查 Consul ESM 容器日志,确认无错误输出:
bash
docker logs consul-esm - 通过 Consul UI 或 API 查看外部节点状态:
若返回节点信息及健康检查状态,则部署成功。bashcurl http://<consul-address>:8500/v1/catalog/node/<external-node-name>
参考文档:Consul *** 外部服务指南
用户好评
来自真实用户的反馈,见证轩辕镜像的优质服务
常见问题
免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
轩辕镜像下载加速使用手册
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
登录仓库拉取
通过 Docker 登录认证访问私有仓库
Linux
在 Linux 系统配置镜像加速服务
Windows/Mac
在 Docker Desktop 配置镜像加速
Docker Compose
Docker Compose 项目配置加速
K8s Containerd
Kubernetes 集群配置 Containerd
宝塔面板
在宝塔面板一键配置镜像加速
群晖
Synology 群晖 NAS 配置加速
飞牛
飞牛 fnOS 系统配置镜像加速
极空间
极空间 NAS 系统配置加速服务
爱快路由
爱快 iKuai 路由系统配置加速
绿联
绿联 NAS 系统配置镜像加速
威联通
QNAP 威联通 NAS 配置加速
Podman
Podman 容器引擎配置加速
Singularity/Apptainer
HPC 科学计算容器配置加速
其他仓库配置
ghcr、Quay、nvcr 等镜像仓库
专属域名拉取
无需登录使用专属域名加速
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429