4.13. 使用 Telemetry 服务
要采用 Telemetry 服务,您可以修补禁用 Telemetry 服务的现有 OpenStackControlPlane 自定义资源(CR),以使用由 Red Hat OpenStack Platform (RHOSP) 17.1 环境提供的配置参数启动该服务。
如果您采用 Telemetry 服务,RHOSP 17.1 环境(Service Telemetry Framework)中使用的可观察性解决方案将从集群中移除。新解决方案部署在 OpenShift (RHOSO)环境中的 Red Hat OpenStack Services 中,允许指标(可选)日志被检索并存储在新的后端中。
您无法自动迁移旧数据,因为使用了不同的后端。指标和日志被视为短期的数据,不应迁移到 RHOSO 环境。有关将旧的自动扩展堆栈模板用于 RHOSO 环境的详情,请参考 采用自动扩展服务。
先决条件
- director 环境正在运行(源云)。
- 单节点 OpenShift 或 OpenShift Local 在 Red Hat OpenShift Container Platform (RHOCP)集群中运行。
- 以前的采用步骤已完成。
流程
对
OpenStackControlPlaneCR 进行补丁来部署cluster-observability-operator:$ oc create -f - <<EOF apiVersion: operators.coreos.com/v1alpha1 kind: Subscription metadata: name: cluster-observability-operator namespace: openshift-operators spec: channel: stable installPlanApproval: Automatic name: cluster-observability-operator source: redhat-operators sourceNamespace: openshift-marketplace EOF等待安装成功:
$ oc wait --for jsonpath="{.status.phase}"=Succeeded csv --namespace=openshift-operators -l operators.coreos.com/cluster-observability-operator.openshift-operators修补
OpenStackControlPlaneCR 来部署 Ceilometer 服务:$ oc patch openstackcontrolplane openstack --type=merge --patch ' spec: telemetry: enabled: true template: ceilometer: passwordSelector: ceilometerService: CeilometerPassword enabled: true secret: osp-secret serviceUser: ceilometer '启用 metrics 存储后端:
$ oc patch openstackcontrolplane openstack --type=merge --patch ' spec: telemetry: template: metricStorage: enabled: true monitoringStack: alertingEnabled: true scrapeInterval: 30s storage: strategy: persistent retention: 24h persistent: pvcStorageRequest: 20G '
验证
验证
alertmanager和prometheuspod 是否可用:$ oc get pods -l alertmanager=metric-storage NAME READY STATUS RESTARTS AGE alertmanager-metric-storage-0 2/2 Running 0 46s alertmanager-metric-storage-1 2/2 Running 0 46s $ oc get pods -l prometheus=metric-storage NAME READY STATUS RESTARTS AGE prometheus-metric-storage-0 3/3 Running 0 46s检查生成的 Ceilometer pod:
CEILOMETETR_POD=`oc get pods -l service=ceilometer | tail -n 1 | cut -f 1 -d' '` oc exec -t $CEILOMETETR_POD -c ceilometer-central-agent -- cat /etc/ceilometer/ceilometer.conf检查已启用的 pollsters:
$ oc get secret ceilometer-config-data -o jsonpath="{.data['polling\.yaml\.j2']}" | base64 -d可选:根据环境要求覆盖默认 pollsters:
$ oc patch openstackcontrolplane controlplane --type=merge --patch ' spec: telemetry: template: ceilometer: defaultConfigOverwrite: polling.yaml.j2: | --- sources: - name: pollsters interval: 100 meters: - volume.* - image.size enabled: true secret: osp-secret '
后续步骤
可选:对
OpenStackControlPlaneCR 进行补丁,使其包含日志记录:$ oc patch openstackcontrolplane openstack --type=merge --patch ' spec: telemetry: template: logging: enabled: false ipaddr: 172.17.0.80 port: 10514 cloNamespace: openshift-logging '