Atom feed of this document
  

 存储样本

Telemetry 模块有一个单独的服务,负责保留来自分析者或作为通知接收的数据。该数据可以保存在一个文件或数据库后端中,因为支持的数据库列表可以在 “支持的数据库”一节 中找到。该数据也可以通过 HTTP 调度发送到一个外部数据存储中。

ceilometer-collector 服务将数据作为消息从配置的 AMQP 服务消息总线中接收。它对这些数据不做任何修改,发送到配置的目标。该服务必须运行在一台可以访问已配置的调度程序的主机上。

[注意]注意

Telemetry可同时配置多个分发器。

同时可运行多个ceilometer-collector进程。每个 collector也支持启动多个线程。在配置文件ceilometer.conf collector 一节有对collector_workers配置属性作修改的说明。

[注意]注意

从Juno版本发布后,不建议在后端数据库使用了PostgreSQL而在每个collector进程使用多个线程。

 数据库分发器

如果数据库调度器作为数据存储进行配置,您可以选择为样品设置 time_to_live 选项 (ttl)。默认情况下,样品活动的事件值设置为 -1,意为它们将在数据库中永远保留。

生存时间值是按秒来指定的。每个样本都有一时间戳,ttl的值说明当从样本读取时间戳后过去了秒数大于ttl时,样本就会从数据库中被删除。举例来说,如果生存时间的设置为600的话,所有的大于600秒的样本都会被从数据库中清理掉。

确保数据库本身支持TTL过期。假如没有也没有关系,你可以使用一个命令行脚本 ceilometer-expirer达到同样的目的。你可以在计划任务中运行它,计划任务就可以帮助你的数据库保持一致性的状态。

配置后端的情况不同而支持的级别也不同:

表 8.3. 后端数据库所支持的存活时间
数据库 TTL所支持的值 提示
MongoDB MongoDB本身就支持TTL,用于删除那些早于配置的ttl值的样本。
后端基于SQL ceilometer-expirer 被用来删除数据库中的样本及其相关的数据。
HBase Telemetry 的 HBase所支持的并不包括本地TTL和ceilometer-expirer
DB2 NoSQL DB2 NoSQL 既不支持本地TTL也不支持ceilometer-expirer

 HTTP 分发器

Telemetry模块支持发送样本到外部的HTTP目标。样本无需任何的变更就可被发出。要设置这些属性作为收集器的目录,在配置文件filename>ceilometer.conf

 文件分发器

你可以通过在配置文件ceilometer.conf中设置dispatcher 属性来将样本存储到一个文件。对于配置属性列表,请参阅OpenStack 配置指南中的dispatcher_file 一节

Questions? Discuss on ask.openstack.org
Found an error? Report a bug against this page


loading table of contents...