配置 Prometheus

Prometheus 支持

此页面展示了如何配置 Kueue 以使用 Prometheus 指标。

此页面适用于批处理管理员

开始之前

确保满足以下条件:

  • 一个 Kubernetes 集群正在运行。
  • kubectl 命令行工具可以与集群通信。
  • Kueue 已安装
  • Prometheus 已安装
  • Cert Manager 已安装(可选地)

Kueue 支持 Kustomize 或通过 Helm chart 安装。

Kustomize 安装

  1. config/default/kustomization.yaml 中启用 prometheus,并取消注释中所有包含 ‘PROMETHEUS’ 的部分。

使用证书的 Kustomize Prometheus

如果你想为指标端点启用 TLS 验证,请遵循以下步骤。

  1. 在 Kueue 配置中将 internalCertManagement.enable 设置为 false
  2. config/default/kustomization.yaml 中注释掉 internalcert 文件夹。
  3. config/default/kustomization.yaml 中启用 cert-manager,并取消注释所有包含 ‘CERTMANAGER’ 的部分。
  4. 要启用带有 TLS 保护的安全指标,请取消注释所有包含 ‘PROMETHEUS-WITH-CERTS’ 的部分。

Helm 安装

Prometheus 安装

Kueue 也支持通过 Helm 部署 Prometheus。

  1. 在你的 values.yaml 文件中将 enablePrometheus 设置为 true。

使用证书的 Helm Prometheus

如果你想使用外部证书保护指标端点:

  1. 在 kueue 配置中禁用内部证书管理(更多详情参见自定义配置)。
  2. enableCertManagerenablePrometheus 都设置为 true。
  3. 提供 tlsConfig 的值,见下面的例子:

在 Helm Chart 中,你的 tlsConfig 示例可以如下所示:

...
metrics:
  prometheusNamespace: monitoring
  # serviceMonitor 的 tls 配置
  serviceMonitor:
    tlsConfig:
      serverName: kueue-controller-manager-metrics-service.kueue-system.svc
      ca:
        secret:
          name: kueue-metrics-server-cert
          key: ca.crt
      cert:
        secret:
          name: kueue-metrics-server-cert
          key: tls.crt
      keySecret:
        name: kueue-metrics-server-cert
        key: tls.key

这些 Secret 必须引用 cert-manager 生成的 Sercret。