Prometheus Exporter (二十一)Ceph Exporter
本文已经收录在 Prometheus 合集 Prometheus 都可以采集那些指标?-- 常用 Exporter 合集 中。
Ceph 是一个统一的分布式存储系统,设计初衷是提供较好的性能、可靠性和可扩展性。在经过了数年的发展之后,目前已得到众多云计算厂商的支持并被广泛应用。RedHat 及 OpenStack 都可与 Ceph 整合以支持虚拟机镜像的后端存储。
针对 Ceph,DigitalOcean 开源了一个 Exporter ,叫做 Ceph Exporter ,是的,所有的 Exporter 命名都非常简单易懂。它的官方仓库是 https://github.com/digitalocean/ceph_exporter ,当前最新版本是 3.0.0-nautilus,发布于一年前 ,它没有提供二进制的执行文件,如果需要的话,需要自己构建。
Ceph Exporter 会抓取运行 Ceph 集群的元信息,从集群收集的所有信息都是通过在 rados_mon_command() 上使用适当的包装器与监视器交互完成的。因此,除了拥有一个工作的 Ceph 集群外,不需要其他的设置。
依赖关系
正常情况下,Ceph Exporter 和其他 Ceph 客户端一样,它需要以下文件才能正确运行,并且与 Ceph 集群进行交互。
ceph.conf 连接 Ceph 集群的配置文件.
ceph.<user>.keyring 为了通过 ceph 集群的认证。
这两个文件在缺省位置的时候,Ceph Exporter 可以自动识别,如果不在缺省位置,那么可以通过如下环境变量来指定
CEPH_CLUSTER: 集群的名称 (default ceph)
CEPH_CONFIG: Ceph 客户端用来连接 Ceph 集群的配置文件,(default /etc/ceph/ceph.conf)
CEPH_USER: Ceph 客户端用来连接 Ceph 集群的用户。(default admin)
如果需要可以使用 Ceph 的官方 Golang 客户端在集群上运行命令,ceph_exporters 分支只在 Ceph Nautilus 版本上进行测试。对于旧版本或非 lts 版本的 Ceph,它可会工作不正常。
支持的完整的环境变量如下:
TELEMETRY_ADDR ceph_exporter 暴露监控指标的地址和端口,默认是 *:9128
TELEMETRY_PATH 暴露数据供 Prometheus 获取的接口路径 /metrics
EXPORTER_CONFIG Ceph Exporter 的配置文件路径 /etc/ceph/exporter.yml
RGW_MODE Enable collection of stats from RGW (0:disabled 1:enabled 2:background) 0
CEPH_CLUSTER Ceph 集群名称,默认是 ceph
CEPH_CONFIG Ceph 客户端用来连接 Ceph 集群的配置文件, /etc/ceph/ceph.conf
CEPH_USER Ceph 客户端用来连接 Ceph 集群的用户,默认是 admin
CEPH_RADOS_OP_TIMEOUT Ceph rados_osd_op_timeout 和 rados_mon_op_timeout 用来连接集群的超时时间 (0s means no limit) 默认是 30s
LOG_LEVEL 日志级别,这几个中的一种: [trace, debug, info, warn, error, fatal, panic] 默认是 info
安装运行
Ceph Exporter 需要 Ceph 的配置文件,以便与 Ceph 的 monitor 建立通信。Ceph 的配置文件可以通过命令行参数传递进来,或者将 ceph.conf
和ceph.<user>.keyring
的目录挂载到 /etc/ceph
下。
作者已经将构建好的镜像传到了 Docker Hub,下载好以后使用如下命令即可启动,启动后会在 9128 端口暴露监控数据。
自己构建镜像需要先下拉仓库代码,然后执行
如果在构建过程中需要执行单元测试,可以使用 --build-args TEST=true
参数
你必须确保你的镜像能和 Ceph 的 monitor 通信。如果它需要访问您的主机的网络堆栈,在容器需要添加 --net=host
参数,让他使用本地网络。。这个时候可以删除 -p 参数,-p 是使用网桥的时候的参数。
版权声明: 本文为 InfoQ 作者【耳东@Erdong】的原创文章。
原文链接:【http://xie.infoq.cn/article/3d03ca54979fc4f1e747d1ea3】。未经作者许可,禁止转载。
评论