
blemmenes/radosgw_usage_exporterCeph RADOSGW Usage Exporter是一款Prometheus导出器,用于抓取Ceph RADOSGW(对象网关)的使用信息(包括操作和存储桶数据)。该信息通过Ceph RADOSGW的管理员操作API收集,并转换为Prometheus可抓取的指标格式。本导出器基于编写Jenkins导出器的指南及Jenkins导出器项目开发。
RADOSGW默认未启用使用信息收集,需通过ceph.conf配置以下参数:
rgw enable usage log = true
更多配置选项可参考Ceph官方文档
rgw admin entry = "admin" # 默认值为'admin'
rgw enable apis = "s3, admin" # 默认已启用admin API
导出器需要具有以下权限的RADOSGW用户,配置方法参考Ceph管理员指南:
json"caps": [ { "type": "buckets", "perm": "read" }, { "type": "metadata", "perm": "read" }, { "type": "usage", "perm": "read" }, { "type": "users", "perm": "read" } ]
注意:若在RADOSGW前使用负载均衡器,需调整超时设置(如haproxy的
timeout server),避免因存储桶或用户数量过多导致查询超时。
bashgit clone ***:blemmenes/radosgw_usage_exporter.git cd radosgw_usage_exporter pip install -r requirements.txt
bashusage: radosgw_usage_exporter.py [-h] [-H HOST] [-e ADMIN_ENTRY] [-a ACCESS_KEY] [-s SECRET_KEY] [-p PORT] RADOSGW地址、本地监听端口以及S3访问密钥配置 可选参数: -h, --help 显示帮助信息并退出 -H HOST, --host HOST RADOSGW API的服务器URL(示例: [***] -e ADMIN_ENTRY, --admin_entry ADMIN_ENTRY 管理员请求URL的入口点 [默认值: 'admin'] -a ACCESS_KEY, --access_key ACCESS_KEY S3访问密钥 -s SECRET_KEY, --secret_key SECRET_KEY S3密钥 -p PORT, --port PORT 本地监听端口
bash./radosgw_usage_exporter.py -H [***] -a JXUABTZZYHAFLCMF9VYV -s jjP8RDD0R156atS6ACSy2vNdJLdEPM0TJQ5jD1pw
bashdocker run -d -p 9242:9242 blemmenes/radosgw_usage_exporter:latest \ -H <RADOSGW服务器URL> -a <ACCESS_KEY> -s <SECRET_KEY> -p 9242
bashdocker run -d -p 9242:9242 \ -e "RADOSGW_SERVER=<RADOSGW服务器URL>" \ -e "VIRTUAL_PORT=9242" \ -e "ACCESS_KEY=<S3访问密钥>" \ -e "SECRET_KEY=<S3密钥>" \ blemmenes/radosgw_usage_exporter:latest
部署后,Prometheus可通过以下端点抓取指标:
http://<导出器主机>:9242/metrics
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务