第 4 章 为服务 Telemetry Framework 配置 Red Hat OpenStack Platform
要收集指标、事件或两个对象,并将其发送到服务遥测框架(STF)存储域,您必须配置 Red Hat OpenStack Platform (RHOSP) overcloud 以启用数据收集和传输。
STF 可支持单一和多个云。RHOSP 和 STF 中的默认配置为单个云安装设置。
- 有关使用默认配置的单个 RHOSP overcloud 部署,请参阅 第 4.1 节 “为服务 Telemetry Framework 部署 Red Hat OpenStack Platform overcloud”。
- 要针对多个云规划 RHOSP 安装和配置 STF,请参阅 第 4.4 节 “配置多个云”。
作为 RHOSP overcloud 部署的一部分,您可能需要在您的环境中配置附加功能:
- 要在 RHOSP 云节点上将数据收集和传输部署到使用路由 L3 域的 RHOSP 云节点上,如分布式计算节点(DCN)或 spine-leaf,请参阅 第 4.3 节 “部署到非标准网络拓扑”。
- 要将指标发送到 Gnocchi 和 STF,请参阅 第 4.2 节 “将指标发送到 Gnocchi 和服务遥测框架”。
要配置 Red Hat OpenStack Platform (RHOSP) overcloud,您必须配置数据收集器,并将数据传输配置为服务 Telemetry Framework (STF),并且部署 overcloud。
其他资源
- 要通过 AMQ Interconnect 收集数据,请查看 amqp1 插件。
4.1.1. 检索 AMQ Interconnect 路由地址 复制链接链接已复制到粘贴板!
为服务 Telemetry Framework (STF)配置 Red Hat OpenStack Platform (RHOSP) overcloud 时,必须在 STF 连接文件中提供 AMQ Interconnect 路由地址。
流程
- 登录您的 Red Hat OpenShift Container Platform 环境。
在
service-telemetry
项目中,检索 AMQ Interconnect 路由地址:oc get routes -ogo-template='{{ range .items }}{{printf "%s\n" .spec.host }}{{ end }}' | grep "\-5671"
$ oc get routes -ogo-template='{{ range .items }}{{printf "%s\n" .spec.host }}{{ end }}' | grep "\-5671" default-interconnect-5671-service-telemetry.apps.infra.watch
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
4.1.2. 为 STF 创建基本配置 复制链接链接已复制到粘贴板!
要配置基础参数,以便为服务 Telemetry Framework (STF)提供兼容数据收集和传输,您必须创建一个定义默认数据收集值的文件。
流程
-
以
stack
用户身份登录 Red Hat OpenStack Platform (RHOSP) undercloud。 在
/home/stack
目录中创建一个名为enable-stf.yaml
的配置文件。重要将
EventPipelinePublishers
和PipelinePublishers
设置为空列表会导致事件或指标数据传递到 RHOSP 传统遥测组件,如 Gnocchi 或 Panko。如果您需要将数据发送到其他管道,CeiloConfig 中的 Ceilometer 轮询间隔为 30 秒,则可能会在ExtraConfig
中指定,可能会给旧组件而造成的,且您必须将间隔增加到更大值,如300
。将该值增大到较长的轮询间隔会导致 STF 中的遥测分辨率减少。要使用 STF 和 Gnocchi 启用遥测集合,请参阅 第 4.2 节 “将指标发送到 Gnocchi 和服务遥测框架”
4.1.3. 为 overcloud 配置 STF 连接 复制链接链接已复制到粘贴板!
要配置 Service Telemetry Framework (STF)连接,您必须创建一个文件,其中包含用于 overcloud 的 AMQ Interconnect 的连接配置到 STF 部署。启用 STF 中事件的事件和存储的集合,并且部署 overcloud。默认配置适用于具有默认消息总线主题的单一云实例。有关配置多个云部署,请参阅 第 4.4 节 “配置多个云”。
前提条件
- 检索 AMQ Interconnect 路由地址。更多信息请参阅 第 4.1.1 节 “检索 AMQ Interconnect 路由地址”。
流程
-
以
stack
用户身份登录到 RHOSP undercloud。 -
在
/home/stack
目录中创建一个名为stf-connectors.yaml
的配置文件。 在
stf-connectors.yaml
文件中,配置MetricsQdrConnectors
地址,将 overcloud 上的 AMQ Interconnect 连接到 STF 部署。-
将
host
参数替换为您在 第 4.1.1 节 “检索 AMQ Interconnect 路由地址” 中检索的HOST/PORT
值。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
将
4.1.4. 部署 overcloud 复制链接链接已复制到粘贴板!
使用所需的环境文件部署或更新 overcloud,以便收集数据并将其传输到服务遥测框架(STF)。
流程
-
以
stack
用户身份登录 Red Hat OpenStack Platform (RHOSP) undercloud。 提供身份验证文件:
source stackrc
[stack@undercloud-0 ~]$ source stackrc (undercloud) [stack@undercloud-0 ~]$
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在 RHOSP director 部署中添加以下文件来配置数据收集和 AMQ Interconnect:
-
collectd-write-qdr.yaml
文件,以确保 collectd 遥测和事件发送到 STF -
ceilometer-write-qdr.yaml
文件,以确保 Ceilometer 遥测和事件发送到 STF -
qdr-edge-only.yaml
文件,以确保消息总线被启用并连接到 STF 消息总线路由器 -
enable-stf.yaml
环境文件,以确保正确配置了默认值 stf-connectors.yaml
环境文件来定义到 STF 的连接Copy to Clipboard Copied! Toggle word wrap Toggle overflow
-
- 部署 overcloud。
4.1.5. 验证客户端安装 复制链接链接已复制到粘贴板!
要验证 Service Telemetry Framework (STF)存储域的数据收集,请查询数据源以传送数据。要在 Red Hat OpenStack Platform (RHOSP)部署中验证单个节点,请使用 SSH 连接到控制台。
某些遥测数据仅在 RHOSP 具有活跃工作负载时才可用。
流程
- 登录 overcloud 节点,如 controller-0。
确保
metrics_qdr
容器在节点上运行:sudo podman container inspect --format '{{.State.Status}}' metrics_qdr
$ sudo podman container inspect --format '{{.State.Status}}' metrics_qdr running
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 返回运行 AMQ Interconnect 的内部网络地址,如
172.17.1.44
侦听端口5666
:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 返回到本地 AMQ Interconnect 的连接列表:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 有四个连接:
- 出站到 STF 的连接
- 来自 ceilometer 的入站连接
- collectd 的入站连接
来自
qdstat
客户端的入站连接出站 STF 连接提供给
MetricsQdrConnectors
主机参数,是 STF 存储域的路由。其他主机是与这个 AMQ Interconnect 的客户端连接的内部网络地址。
为确保传递信息,列出链接,并在
deliv
列中查看用于传递消息的_edge
地址:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 要列出来自 RHOSP 节点到 STF 的地址,请连接到 Red Hat OpenShift Container Platform 以检索 AMQ Interconnect pod 名称,并列出连接。列出可用的 AMQ Interconnect pod:
oc get pods -l application=default-interconnect
$ oc get pods -l application=default-interconnect NAME READY STATUS RESTARTS AGE default-interconnect-7458fd4d69-bgzfb 1/1 Running 0 6d21h
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 连接到 pod 并列出已知的连接。在本例中,有来自 RHOSP 节点的三个
边缘
连接,其连接id
为 22, 23, 和 24。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 要查看网络发送的消息数量,请使用
oc exec
命令的每个地址:Copy to Clipboard Copied! Toggle word wrap Toggle overflow