linux怎么查看本机内存大小
340
2022-10-09
#yyds干货盘点# Prometheus Exporter(二十一) Ceph Exporter
本文已经收录在 Prometheus 合集 Prometheus 都可以采集那些指标?-- 常用 Exporter 合集 中。
Ceph是一个统一的分布式存储系统,设计初衷是提供较好的性能、可靠性和可扩展性。在经过了数年的发展之后,目前已得到众多云计算厂商的支持并被广泛应用。RedHat 及 OpenStack 都可与 Ceph 整合以支持虚拟机镜像的后端存储。
针对 Ceph,DigitalOcean 开源了一个 Exporter ,叫做 Ceph Exporter ,是的,所有的 Exporter 命名都非常简单易懂。它的官方仓库是 ,当前最新版本是 3.0.0-nautilus,发布于一年前 ,它没有提供二进制的执行文件,如果需要的话,需要自己构建。
Ceph Exporter 会抓取运行 Ceph 集群的元信息,从集群收集的所有信息都是通过在 rados_mon_command() 上使用适当的包装器与监视器交互完成的。因此,除了拥有一个工作的 Ceph 集群外,不需要其他的设置。
依赖关系
正常情况下,Ceph Exporter 和其他 Ceph 客户端一样,它需要以下文件才能正确运行,并且与 Ceph 集群进行交互。
ceph.conf 连接 Ceph 集群的配置文件.
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,它可会工作不正常。
支持的完整的环境变量如下:
Name | Description | Default |
---|---|---|
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 端口暴露监控数据。
docker run -v /etc/ceph:/etc/ceph -p=9128:9128 -it digitalocean/ceph_exporter
自己构建镜像需要先下拉仓库代码,然后执行
docker build -t digitalocean/ceph_exporter .
如果在构建过程中需要执行单元测试,可以使用 --build-args TEST=true 参数
docker build -t digitalocean/ceph_exporter . --build-arg TEST=true --no-cache
你必须确保你的镜像能和 Ceph 的 monitor 通信。如果它需要访问您的主机的网络堆栈,在容器需要添加 --net=host 参数,让他使用本地网络。。这个时候可以删除 -p 参数,-p 是使用网桥的时候的参数。
Ceph RADOSGW Usage Exporterhttps://github.com/blemmenes/radosgw_usage_exporter
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~