Aerospike Prometheus Exporter 镜像由Aerospike***提供,用于从Aerospike数据库服务器节点收集性能指标,并将这些指标导出为Prometheus可识别的格式,以便进行监控和分析。该镜像支持灵活的配置选项,包括TLS加密、身份认证及指标过滤,适用于各种环境下的Aerospike集群监控需求。
使用以下命令快速启动 exporter 容器:
bashdocker run -itd --name exporter1 -e AS_HOST=172.17.0.2 -e AS_PORT=3000 -e METRIC_LABELS="type='development',source='aerospike'" aerospike/aerospike-prometheus-exporter:latest
AS_HOST:Aerospike服务器节点IP地址AS_PORT:Aerospike服务器客户端访问端口所有配置均可通过在docker run命令或docker-compose.yaml文件中设置对应的环境变量实现。
以下是完整的配置文件模板(TOML格式),其中环境变量占位符需通过容器环境变量替换:
toml[Agent] # Exporter HTTPS (TLS) 配置 # Prometheus与Exporter之间的HTTPS通信 # TLS证书。 # 支持以下格式: # 1. 证书文件路径 - "file:<文件路径>" # 2. 包含base64编码证书的环境变量 - "env-b64:<包含base64编码证书的环境变量>" # 3. Base64编码的证书 - "b64:<base64编码的证书>" # 适用于'root_ca'、'cert_file'和'key_file'配置。 # 服务器证书 cert_file = "${AGENT_CERT_FILE}" # 与服务器证书关联的私钥 key_file = "${AGENT_KEY_FILE}" # 用于验证客户端证书的根CA(双向TLS) root_ca = "${AGENT_ROOT_CA}" # 加密key_file的密码。支持以下格式: # 1. 直接指定密码 - "<密码>" # 2. 通过文件指定密码 - "file:<包含密码的文件>" # 3. 通过环境变量指定密码 - "env:<存储密码的环境变量>" # 4. 通过包含base64编码密码的环境变量 - "env-b64:<包含base64编码密码的环境变量>" # 5. Base64编码的密码 - "b64:<base64编码的密码>" key_file_passphrase = "${AGENT_KEY_FILE_PASSPHRASE}" # 添加到Prometheus指标的标签,例如 labels={zone="asia-south1-a", platform="google compute engine"} labels = {${METRIC_LABELS}} # 绑定地址和端口 bind = "${AGENT_BIND_HOST}:${AGENT_BIND_PORT}" # 指标服务器超时时间(秒) timeout = ${AGENT_TIMEOUT} # Exporter日志配置 # 日志文件路径(可选,默认输出到控制台) # 日志级别:info|warning,warn|error,err|debug|trace(默认info) log_file = "${AGENT_LOG_FILE}" log_level = "${AGENT_LOG_LEVEL}" # '/metrics'端点的基本HTTP认证。 # 支持以下格式: # 1. 直接指定凭证 - "<凭证>" # 2. 通过文件指定凭证 - "file:<包含凭证的文件>" # 3. 通过环境变量指定凭证 - "env:<存储凭证的环境变量>" # 4. 通过包含base64编码凭证的环境变量 - "env-b64:<包含base64编码凭证的环境变量>" # 5. Base64编码的凭证 - "b64:<base64编码的凭证>" basic_auth_username="${BASIC_AUTH_USERNAME}" basic_auth_password="${BASIC_AUTH_PASSWORD}" [Aerospike] # 数据库主机地址 db_host="${AS_HOST}" # 数据库端口 db_port=${AS_PORT} # TLS证书。 # 支持以下格式: # 1. 证书文件路径 - "file:<文件路径>" # 2. 包含base64编码证书的环境变量 - "env-b64:<包含base64编码证书的环境变量>" # 3. Base64编码的证书 - "b64:<base64编码的证书>" # 适用于'root_ca'、'cert_file'和'key_file'配置。 # 根证书文件 root_ca="${AS_ROOT_CA}" # 证书文件 cert_file="${AS_CERT_FILE}" # 密钥文件 key_file="${AS_KEY_FILE}" # 加密key_file的密码。支持以下格式: # 1. 直接指定密码 - "<密码>" # 2. 通过文件指定密码 - "file:<包含密码的文件>" # 3. 通过环境变量指定密码 - "env:<存储密码的环境变量>" # 4. 通过包含base64编码密码的环境变量 - "env-b64:<包含base64编码密码的环境变量>" # 5. Base64编码的密码 - "b64:<base64编码的密码>" key_file_passphrase="${AS_KEY_FILE_PASSPHRASE}" # 用于认证的节点TLS名称 node_tls_name="${AS_NODE_TLS_NAME}" # Aerospike集群安全凭证。 # 支持以下格式: # 1. 直接指定凭证 - "<凭证>" # 2. 通过文件指定凭证 - "file:<包含凭证的文件>" # 3. 通过环境变量指定凭证 - "env:<存储凭证的环境变量>" # 4. 通过包含base64编码凭证的环境变量 - "env-b64:<包含base64编码凭证的环境变量>" # 5. Base64编码的凭证 - "b64:<base64编码的凭证>" # 适用于'user'和'password'配置。 # 数据库用户名 user="${AS_AUTH_USER}" # 数据库密码 password="${AS_AUTH_PASSWORD}" # 认证模式:internal(服务器内置)、external(LDAP等外部认证) auth_mode="${AS_AUTH_MODE}" # 向服务器节点发送命令的超时时间(秒) timeout=${TICKER_TIMEOUT} # 延迟指标导出的直方图桶数量。桶阈值范围从2^0到2^16(共17个桶)。 # 例如,latency_buckets_count=5将导出前5个桶,即<=1ms、<=2ms、<=4ms、<=8ms和<=16ms。 # 默认值:0(导出所有阈值桶)。 latency_buckets_count=${LATENCY_BUCKETS_COUNT} # 指标允许列表 - 如指定,仅收集这些指标。空列表将排除所有指标。 # 注释掉以下允许列表配置将禁用指标过滤(即收集所有指标)。 # 命名空间指标允许列表 # namespace_metrics_allowlist=[${NAMESPACE_METRICS_ALLOWLIST}] # 集合指标允许列表 # set_metrics_allowlist=[${SET_METRICS_ALLOWLIST}] # 节点指标允许列表 # node_metrics_allowlist=[${NODE_METRICS_ALLOWLIST}] # XDR指标允许列表(仅适用于Aerospike 5.0及以上版本) # xdr_metrics_allowlist=[${XDR_METRICS_ALLOWLIST}] # 作业(扫描/查询)指标允许列表 # job_metrics_allowlist = [${JOB_METRICS_ALLOWLIST}] # 二级索引指标允许列表 # sindex_metrics_allowlist = [${SINDEX_METRICS_ALLOWLIST}] # 指标阻止列表 - 如指定,这些指标将不被收集。 # 命名空间指标阻止列表 # namespace_metrics_blocklist=[${NAMESPACE_METRICS_BLOCKLIST}] # 集合指标阻止列表 # set_metrics_blocklist=[${SET_METRICS_BLOCKLIST}] # 节点指标阻止列表 # node_metrics_blocklist=[${NODE_METRICS_BLOCKLIST}] # XDR指标阻止列表(仅适用于Aerospike 5.0及以上版本) # xdr_metrics_blocklist=[${XDR_METRICS_BLOCKLIST}] # 作业(扫描/查询)指标阻止列表 # job_metrics_blocklist = [${JOB_METRICS_BLOCKLIST}] # 二级索引指标阻止列表 # sindex_metrics_blocklist = [${SINDEX_METRICS_BLOCKLIST}] # 用户统计(用户统计仅在Aerospike 5.6+版本可用) # 用户允许列表和阻止列表用于控制收集哪些用户的统计信息。 # 注意:此配置不支持通配符模式。 # user_metrics_users_allowlist=[${USER_METRICS_USERS_ALLOWLIST}] # user_metrics_users_blocklist=[${USER_METRICS_USERS_BLOCKLIST}]
如需使用自定义配置文件,可通过--config选项指定容器内的配置文件路径,并通过卷挂载本地配置文件:
bashdocker run -itd --name exporter1 -v <主机上的配置文件路径>:<容器内的配置文件路径> aerospike/aerospike-prometheus-exporter:latest --config <容器内的配置文件路径>
示例:
bashdocker run -itd --name exporter1 -v /host/config.toml:/app/config.toml aerospike/aerospike-prometheus-exporter:latest --config /app/config.toml
来自真实用户的反馈,见证轩辕镜像的优质服务
免费版仅支持 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 系统配置镜像加速服务
在 Docker Desktop 配置镜像加速
Docker Compose 项目配置加速
Kubernetes 集群配置 Containerd
在宝塔面板一键配置镜像加速
Synology 群晖 NAS 配置加速
飞牛 fnOS 系统配置镜像加速
极空间 NAS 系统配置加速服务
爱快 iKuai 路由系统配置加速
绿联 NAS 系统配置镜像加速
QNAP 威联通 NAS 配置加速
Podman 容器引擎配置加速
HPC 科学计算容器配置加速
ghcr、Quay、nvcr 等镜像仓库
无需登录使用专属域名加速
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429