8.2. 在单一命名空间中安装 Operator 时启用监控


当在单一命名空间中安装 Red Hat Quay Operator 时,监控组件为非受管状态。要配置监控,您需要为 OpenShift Container Platform 中的用户定义的命名空间启用它。如需更多信息,请参阅 配置监控堆栈为用户定义的项目启用监控的 OCP 文档。

以下步骤演示了如何根据 OCP 文档为 Quay 配置监控。

8.2.1. 创建集群监控配置映射

  1. 检查 cluster-monitoring-config ConfigMap 对象是否存在:

    $ oc -n openshift-monitoring get configmap cluster-monitoring-config
    
    Error from server (NotFound): configmaps "cluster-monitoring-config" not found
  2. 如果 ConfigMap 对象不存在: 

    1. 创建以下 YAML 清单。在本例中,该文件名为 cluster-monitoring-config.yaml

      $ cat cluster-monitoring-config.yaml
      
      apiVersion: v1
      kind: ConfigMap
      metadata:
        name: cluster-monitoring-config
        namespace: openshift-monitoring
      data:
        config.yaml: |
    2. 创建 ConfigMap 对象:

      $ oc apply -f cluster-monitoring-config.yaml configmap/cluster-monitoring-config created
      $ oc -n openshift-monitoring get configmap cluster-monitoring-config
      
      NAME                        DATA   AGE
      cluster-monitoring-config   1      12s

8.2.2. 创建用户定义的工作负载监控配置映射

  1. 检查 user-workload-monitoring-config ConfigMap 对象是否存在:

    $ oc -n openshift-user-workload-monitoring get configmap user-workload-monitoring-config
    
    Error from server (NotFound): configmaps "user-workload-monitoring-config" not found
  2. 如果 ConfigMap 对象不存在:

    1. 创建以下 YAML 清单。在本例中,该文件名为 user-workload-monitoring-config.yaml

      $ cat user-workload-monitoring-config.yaml
      
      apiVersion: v1
      kind: ConfigMap
      metadata:
        name: user-workload-monitoring-config
        namespace: openshift-user-workload-monitoring
      data:
        config.yaml: |
    2. 创建 ConfigMap 对象:

      $ oc apply -f user-workload-monitoring-config.yaml
      
      configmap/user-workload-monitoring-config created

8.2.3. 为用户定义的项目启用监控

  1. 检查用户定义的项目的监控是否正在运行:

    $ oc get pods -n openshift-user-workload-monitoring
    
    No resources found in openshift-user-workload-monitoring namespace.
  2. 编辑 cluster-monitoring-config ConfigMap:

    $ oc -n openshift-monitoring edit configmap cluster-monitoring-config

     

  3. 将 enableUserWorkload: true 设置为在集群中为用户定义的项目启用监控:

    apiVersion: v1
    data:
      config.yaml: |
        enableUserWorkload: true
    kind: ConfigMap
    metadata:
      annotations:
  4. 保存文件以应用更改,然后检查适当的 pod 是否正在运行:

    $ oc get pods -n openshift-user-workload-monitoring
    
    NAME                                   READY   STATUS    RESTARTS   AGE
    prometheus-operator-6f96b4b8f8-gq6rl   2/2     Running   0          15s
    prometheus-user-workload-0             5/5     Running   1          12s
    prometheus-user-workload-1             5/5     Running   1          12s
    thanos-ruler-user-workload-0           3/3     Running   0          8s
    thanos-ruler-user-workload-1           3/3     Running   0          8s

     

8.2.4. 创建 Service 对象以公开 Quay 指标

  1. 为 Service 对象创建 YAML 文件:

    $ cat quay-service.yaml
    
    apiVersion: v1
    kind: Service
    metadata:
      annotations:
      labels:
        quay-component: monitoring
        quay-operator/quayregistry: example-registry
      name: example-registry-quay-metrics
      namespace: quay-enterprise
    spec:
      ports:
      - name: quay-metrics
        port: 9091
        protocol: TCP
        targetPort: 9091
      selector:
        quay-component: quay-app
        quay-operator/quayregistry: example-registry
      type: ClusterIP

       

  2. 创建 Service 对象:

    $  oc apply -f quay-service.yaml
    
    service/example-registry-quay-metrics created

8.2.5. 创建 ServiceMonitor 对象

通过创建 ServiceMonitor 资源,将 OpenShift Monitoring 配置为提取指标。

  1. 为 ServiceMonitor 资源创建 YAML 文件:

    $ cat quay-service-monitor.yaml
    
    apiVersion: monitoring.coreos.com/v1
    kind: ServiceMonitor
    metadata:
      labels:
        quay-operator/quayregistry: example-registry
      name: example-registry-quay-metrics-monitor
      namespace: quay-enterprise
    spec:
      endpoints:
      - port: quay-metrics
      namespaceSelector:
        any: true
      selector:
        matchLabels:
          quay-component: monitoring
  2. 创建 ServiceMonitor:

    $  oc apply -f quay-service-monitor.yaml
    
    servicemonitor.monitoring.coreos.com/example-registry-quay-metrics-monitor created

8.2.6. 查看 OpenShift 中的指标

您可以在 OpenShift 控制台中访问 Monitoring Metrics 下的指标。在 Expression 字段中输入文本 quay_ 以查看可用指标列表:

Quay metrics

例如,如果您已将用户添加到 registry,请选择 quay-users_rows 指标:

Quay metrics

Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2026 Red Hat
返回顶部