第 3 章 安装 Service Telemetry Framework 的核心组件
您可以使用 Operator 加载 Service Telemetry Framework (STF)组件和对象。Operator 管理以下每个 STF 核心组件:
- 证书管理
- AMQ Interconnect
- 智能网关
- Prometheus 和 Alertmanager
Service Telemetry Framework (STF)使用其他支持的 Operator 作为部署的一部分。STF 可以自动解决大多数依赖项,但您需要预安装一些 Operator,如 Cluster Observability Operator,它提供 Prometheus 和 Alertmanager 实例,以及 cert-manager for Red Hat OpenShift,它提供管理证书。
先决条件
- 一个 Red Hat OpenShift Container Platform 延长更新支持(EUS)发行版本 4.12 或 4.14 正在运行。
- 您已准备了 Red Hat OpenShift Container Platform 环境,并确保有持久性存储和充足的资源可在 Red Hat OpenShift Container Platform 环境上运行 STF 组件。有关 STF 性能的更多信息,请参阅红帽知识库文章 Service Telemetry Framework 性能和扩展。
- 您已在完全连接或 Red Hat OpenShift Container Platform 的情况下部署了 STF。在网络代理环境中无法使用 STF。
STF 与 Red Hat OpenShift Container Platform 版本 4.12 和 4.14 兼容。
其他资源
- 如需有关 Operator 的更多信息,请参阅了解 Operator 指南。
- 如需有关 Operator 目录的更多信息,请参阅 红帽提供的 Operator 目录。
- 有关 Red Hat 的 cert-manager Operator 的更多信息,请参阅 cert-manager Operator for Red Hat OpenShift overview。
- 如需有关 Cluster Observability Operator 的更多信息,请参阅 Cluster Observability Operator 概述。
- 如需有关 OpenShift 生命周期政策和延长更新支持(EUS)的更多信息,请参阅 Red Hat OpenShift Container Platform 生命周期政策。
3.1. 在 Red Hat OpenShift Container Platform 环境中部署 Service Telemetry Framework
部署 Service Telemetry Framework (STF)以收集和存储 Red Hat OpenStack Platform (RHOSP)遥测。
3.1.1. 部署 Cluster Observability Operator
如果 observabilityStrategy
设置为 use_redhat
,且在 ServiceTelemetry 对象中将 backend. metrics.prometheus.enabled
设置为 true
,则必须在创建 Service Telemetry
Framework (STF)实例前安装 Cluster Observability Operator (COO)。如需有关 COO 的更多信息,请参阅 OpenShift Container Platform 文档中的 Cluster Observability Operator 概述。
流程
- 登录到托管 STF 的 Red Hat OpenShift Container Platform 环境。
要在 Prometheus 中存储指标,请使用
redhat-operators
CatalogSource 启用 Cluster Observability Operator:$ oc create -f - <<EOF apiVersion: operators.coreos.com/v1alpha1 kind: Subscription metadata: name: cluster-observability-operator namespace: openshift-operators spec: channel: development installPlanApproval: Automatic name: cluster-observability-operator source: redhat-operators sourceNamespace: openshift-marketplace EOF
验证 Cluster Observability Operator 的
ClusterServiceVersion
的状态是否为Succeeded
:$ oc wait --for jsonpath="{.status.phase}"=Succeeded csv --namespace=openshift-operators -l operators.coreos.com/cluster-observability-operator.openshift-operators clusterserviceversion.operators.coreos.com/observability-operator.v0.0.26 condition met
3.1.2. 为 Red Hat OpenShift 部署 cert-manager
在创建 Service Telemetry Framework (STF)实例之前,必须先预安装 Red Hat OpenShift (cert-manager) Operator 的 cert-manager。有关 cert-manager 的更多信息,请参阅 cert-manager for Red Hat OpenShift 概述。
在以前的 STF 版本中,唯一可用的 cert-manager 频道 是技术预览
,直到 Red Hat OpenShift Container Platform v4.12 为止。在 Red Hat OpenShift Container Platform v4.14 及更新版本上安装 cert-manager 必须从 stable-v1
频道安装。对于 STF 的新安装,建议从 stable-v1
频道安装 cert-manager。
每个 Red Hat OpenShift Container Platform 集群只能安装一个 cert-manager 部署。在多个项目中订阅 cert-manager 会导致部署相互冲突。
流程
- 登录到托管 STF 的 Red Hat OpenShift Container Platform 环境。
验证 Red Hat OpenShift Container Platform 集群中尚未安装 cert-manager。如果返回任何结果,请不要安装另一个 cert-manager 实例:
$ oc get sub --all-namespaces -o json | jq '.items[] | select(.metadata.name | match("cert-manager")) | .metadata.name'
为 cert-manager Operator 创建命名空间:
$ oc create -f - <<EOF apiVersion: project.openshift.io/v1 kind: Project metadata: name: cert-manager-operator spec: finalizers: - kubernetes EOF
为 cert-manager Operator 创建 OperatorGroup:
$ oc create -f - <<EOF apiVersion: operators.coreos.com/v1 kind: OperatorGroup metadata: name: cert-manager-operator namespace: cert-manager-operator spec: targetNamespaces: - cert-manager-operator upgradeStrategy: Default EOF
使用 redhat-operators CatalogSource 订阅 cert-manager Operator:
$ oc create -f - <<EOF apiVersion: operators.coreos.com/v1alpha1 kind: Subscription metadata: name: openshift-cert-manager-operator namespace: cert-manager-operator labels: operators.coreos.com/openshift-cert-manager-operator.cert-manager-operator: "" spec: channel: stable-v1 installPlanApproval: Automatic name: openshift-cert-manager-operator source: redhat-operators sourceNamespace: openshift-marketplace EOF
验证您的 ClusterServiceVersion。确保 cert-manager Operator 显示
Succeeded
的阶段:oc wait --for jsonpath="{.status.phase}"=Succeeded csv --namespace=cert-manager-operator --selector=operators.coreos.com/openshift-cert-manager-operator.cert-manager-operator clusterserviceversion.operators.coreos.com/cert-manager-operator.v1.12.1 condition met
3.1.3. 部署 Service Telemetry Operator
在 Red Hat OpenShift Container Platform 上部署 Service Telemetry Operator,为创建 Service Telemetry Framework (STF)实例提供支持,以监控 Red Hat OpenStack Platform (RHOSP)云平台。
先决条件
- 已安装 Cluster Observability Operator 以允许存储指标。如需更多信息,请参阅 第 3.1.1 节 “部署 Cluster Observability Operator”。
- 您已安装了 Red Hat OpenShift 的 cert-manager 以允许证书管理。如需更多信息,请参阅 第 3.1.2 节 “为 Red Hat OpenShift 部署 cert-manager”。
流程
创建一个命名空间来包含 STF 组件,如
service-telemetry
:$ oc new-project service-telemetry
在命名空间中创建 OperatorGroup,以便您可以调度 Operator pod:
$ oc create -f - <<EOF apiVersion: operators.coreos.com/v1 kind: OperatorGroup metadata: name: service-telemetry-operator-group namespace: service-telemetry spec: targetNamespaces: - service-telemetry EOF
如需更多信息,请参阅 OperatorGroup。
创建 Service Telemetry Operator 订阅来管理 STF 实例:
$ oc create -f - <<EOF apiVersion: operators.coreos.com/v1alpha1 kind: Subscription metadata: name: service-telemetry-operator namespace: service-telemetry spec: channel: stable-1.5 installPlanApproval: Automatic name: service-telemetry-operator source: redhat-operators sourceNamespace: openshift-marketplace EOF
验证 Service Telemetry Operator 和依赖 Operator 的阶段为 Succeeded :
$ oc wait --for jsonpath="{.status.phase}"=Succeeded csv --namespace=service-telemetry -l operators.coreos.com/service-telemetry-operator.service-telemetry ; oc get csv --namespace service-telemetry clusterserviceversion.operators.coreos.com/service-telemetry-operator.v1.5.1700688542 condition met NAME DISPLAY VERSION REPLACES PHASE amq7-interconnect-operator.v1.10.17 Red Hat Integration - AMQ Interconnect 1.10.17 amq7-interconnect-operator.v1.10.4 Succeeded observability-operator.v0.0.26 Cluster Observability Operator 0.1.0 Succeeded service-telemetry-operator.v1.5.1700688542 Service Telemetry Operator 1.5.1700688542 Succeeded smart-gateway-operator.v5.0.1700688539 Smart Gateway Operator 5.0.1700688539 Succeeded