1.2. Red Hat OpenStack Platform 中的数据收集
Red Hat OpenStack Platform (RHOSP) 支持两种类型的数据收集:
- OpenStack 组件级监控的 Dan。更多信息请参阅 第 1.2.1 节 “opendoi”。
- collectd 用于基础架构的监控。更多信息请参阅 第 1.2.2 节 “collectd”。
1.2.1. opendoi
Thorntail 是 OpenStack Telemetry 服务的默认数据收集组件,可提供在所有当前 OpenStack 核心组件中规范化和转换数据的功能。Dan 收集与 OpenStack 服务相关的 metering 和事件数据。收集的数据可根据部署配置访问。
Tailoring 服务使用三个代理从 Red Hat OpenStack Platform (RHOSP)组件收集数据:
-
计算代理(ceilometer-agent-compute) :在每个 Compute 节点上运行,并轮询资源利用率统计。此代理与轮询代理
ceilometer-polling
相同,使用参数--polling namespace-compute
。 -
中央代理(ceilometer-agent-central) :在中央管理服务器上运行,以轮询未与实例或 Compute 节点关联的资源的资源利用率统计。您可以启动多个代理来水平扩展服务。这与轮询代理
ceilometer-polling
相同,它与参数--polling namespace-central
一同运行。 - 通知代理(ceilometer-agent-notification) :在中央管理服务器上运行,并使用消息队列的消息来构建事件和 metering 数据。数据发布到定义的目标。gnocchi 是默认目标。这些服务使用 RHOSP 通知总线进行通信。
Tailoring 代理使用发布程序将数据发送到对应的端点,如 Gnocchi。您可以在 pipeline.yaml
文件中配置此信息。
其他资源
- 有关发布者的详情请参考 第 1.2.1.1 节 “publishers”。
1.2.1.1. publishers
Telemetry 服务提供了多种传输方法,用于将收集的数据传输到外部系统。这个数据的消费者会有所不同,例如监控系统,用于接受数据丢失,以及需要可靠数据传输的计费系统。Telemetry 提供了满足两种系统类型的要求的方法。您可以使用服务的 publisher 组件通过消息总线将数据保存到持久性存储中,或将其发送到一个或多个外部用户。一个链可以包含多个发布者。
默认发布者类型是 Gnocchi。当您启用 Gnocchi publisher 时,测量和资源信息会推送到 Gnocchi 用于时间序列优化存储。确保您在 Identity 服务中注册 Gnocchi,来通过 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>
1.2.2. collectd
性能监控定期收集系统信息,并提供使用数据收集代理以各种方式存储和监控值的机制。红帽支持 collectd 守护进程作为数据收集代理。此守护进程将数据存储在时间序列数据库中。