1.2. Red Hat OpenStack Platform 中的数据收集
Red Hat OpenStack Platform (RHOSP) 支持两种类型的数据收集:
- 适用于 OpenStack 组件级监控的 Ceilometer。更多信息请参阅 第 1.2.1 节 “ceilometer”。
- collectd 用于基础架构的监控。更多信息请参阅 第 1.2.2 节 “collectd”。
1.2.1. ceilometer
Ceilometer 是 OpenStack 遥测服务的默认数据收集组件,能够在所有当前 OpenStack 核心组件中规范化和转换数据。Ceilometer 收集与 OpenStack 服务相关的计量和事件数据。根据部署配置,用户可以访问收集的数据。
Ceilometer 服务使用三个代理从 Red Hat OpenStack Platform (RHOSP)组件收集数据:
-
计算代理(ceilometer-agent-compute) :在每个 Compute 节点上运行,并轮询资源利用率统计信息。此代理与使用 parameter-polling
namespace-compute 运行的轮询代理
相同。ceilometer-polling
-
中央代理(ceilometer-agent-central): 在中央管理服务器上运行,以轮询未绑定到实例或 Compute 节点的资源利用率统计信息。您可以启动多个代理来水平扩展服务。这与轮询代理
ceilometer-polling
相同,它与 parameter-polling namespace-central 一同运行
。 - 通知代理(ceilometer-agent-notification) :在中央管理服务器上运行,并使用消息队列中的消息来构建事件和计量数据。将数据发布到定义的目标。Gnocchi 是默认目标。这些服务使用 RHOSP 通知总线进行通信。
Ceilometer 代理使用发布者将数据发送到对应的端点,如 Gnocchi。您可以在 pipeline.yaml
文件中配置此信息。
其他资源
- 有关发布者的更多信息,请参阅 第 1.2.1.1 节 “Publishers”。
1.2.1.1. Publishers
遥测服务提供多种传输方法,可以将收集的数据传输至外部系统。此数据的消费者有所不同,例如,监控系统,哪些数据丢失是可以接受的,以及计费系统,这需要可靠的数据传输。Telemetry 提供了满足这两个系统类型的要求的方法。您可以使用服务的发布程序组件通过消息总线将数据保存到持久性存储中,或者将其发送到一个或多个外部消费者。一个链可以包含多个发布程序。
默认发布程序类型是 Gnocchi。当您启用 Gnocchi publisher 时,测量和资源信息将推送到 Gnocchi 以进行时间序列优化的存储。确保您在 Identity 服务中注册 Gnocchi,因为 Ceilometer 发现通过 Identity 服务的确切路径。
配置发布者参数
您可以为 Telemetry 服务中的每个数据点配置多发布程序,允许多次向多个目的地发布相同的技术计量或事件,每个目的地都可能使用不同的传输方法。
流程
创建一个 YAML 文件来描述可能的发布者参数和默认值,如
ceilometer-publisher.yaml
。在parameter_defaults
中插入以下参数:parameter_defaults: ManagePipeline: true ManageEventPipeline: true EventPipelinePublishers: - gnocchi://?archive_policy=high PipelinePublishers: - gnocchi://?archive_policy=high
部署 overcloud。在
openstack overcloud deploy
命令中包含修改后的 YAML 文件。在以下示例中,将 <environment_files
> 替换为您要包含在部署中的其他 YAML 文件:$ openstack overcloud deploy --templates \ -e /home/custom/ceilometer-publisher.yaml -e <environment_files>
其他资源
- 有关参数的更多信息,请参阅 Overcloud 参数指南中的 Telemetry 参数 和高级 Overcloud 自定义指南中的 参数。
1.2.2. collectd
性能监控定期收集系统信息,并提供使用数据收集代理以各种方式存储和监控值的机制。红帽支持 collectd 守护进程,作为数据收集代理。此守护进程将数据存储在时间序列数据库中。