Calamari架构分析之Diamond

Diamond是一个数据采集器,可以采集CPU使用情况,磁盘使用情况等多达几十种服务器软硬件的信息。Calamari基于Diamond实现了对Ceph关键数据的采集。

采集的数据可以通过Handler发送到其它后端处理程序进行进一步的处理。后端可以普通的日志,也可以是其它程序,例如Graphite等。只需要简单的配置就能确定后端数据处理的方式。如图为Diamond软件结构示意图。

calamari-ar

Diamond的数据采用metric格式,也即数据的基本格式如下:

metric value timestamp

数据点的格式遵循如下格式:

    每个数据点是一行文本

    位置0是带点的指标项名称

    位置1是一个值

    位置2是一个Unix时间戳

    空格作为各个位置之间的分隔符

如下是Diamond获取的数据示例。

servers.ceph-osd4.memory.MemTotal 1027108864 1450074353

servers.ceph-osd4.memory.MemFree 565506048 1450074353

servers.ceph-osd4.memory.Buffers 45137920 1450074353

servers.ceph-osd4.memory.Cached 179257344 1450074353

servers.ceph-osd4.memory.SwapCached 0 1450074353

servers.ceph-osd4.memory.Active 217587712 1450074353

servers.ceph-osd4.memory.Inactive 105525248 1450074353

servers.ceph-osd4.memory.SwapTotal 1069543424 1450074353

servers.ceph-osd4.memory.SwapFree 1069543424 1450074353

servers.ceph-osd4.memory.Dirty 0 1450074353

servers.ceph-osd4.cpu.total.iowait 0 1450074353

servers.ceph-osd4.cpu.cpu0.guest_nice 0 1450074353

servers.ceph-osd4.cpu.total.steal 0 1450074353

servers.ceph-osd4.cpu.total.guest 0 1450074353

servers.ceph-osd4.cpu.total.guest_nice 0 1450074353

servers.ceph-osd4.iostat.sda.read_byte_per_second 12888 1450074353

servers.ceph-osd4.iostat.sda.read_requests_merged_per_second 0 1450074353

servers.ceph-osd4.iostat.sda.reads 163 1450074353

servers.ceph-osd4.iostat.sda.iops 1 1450074353

servers.ceph-osd4.iostat.sda.io 260 1450074353

servers.ceph-osd4.iostat.sda.write_requests_merged_per_second 0 1450074353

servers.ceph-osd4.iostat.sda.average_request_size_byte 17833 1450074353

servers.ceph-osd4.iostat.sda.read_await 7 1450074353

servers.ceph-osd4.iostat.sda.io_milliseconds_weighted 1332 1450074353

servers.ceph-osd4.iostat.sda.reads_byte 3866624 1450074353

servers.ceph-osd4.iostat.sda.writes 97 1450074353

配置文件

Diamond的配置文件在/etc/diamond/中,其中包含所使用的后端程序,以及后端程序的具体参数。

原文链接:,转发请注明来源!

发表评论