11.3. 为 Red Hat OpenShift 安装 External Secrets Operator


默认情况下,Red Hat OpenShift 的 External Secrets Operator 不会在 OpenShift Container Platform 上安装。使用 Web 控制台或命令行界面(CLI)安装外部 Secrets Operator。

重要

Red Hat OpenShift 的 External Secrets Operator 只是一个技术预览功能。技术预览功能不受红帽产品服务等级协议(SLA)支持,且功能可能并不完整。红帽不推荐在生产环境中使用它们。这些技术预览功能可以使用户提早试用新的功能,并有机会在开发阶段提供反馈意见。

有关红帽技术预览功能支持范围的更多信息,请参阅技术预览功能支持范围

以下是安装和卸载 external-secrets 应用程序期间 Red Hat OpenShift 的外部 Secrets Operator 的限制。

  • 为 Red Hat OpenShift 卸载 External Secrets Operator 不会删除为 external-secrets 应用程序创建的资源。您必须手动清理资源。
  • 当您在 externalsecrets.operator.openshift.io 对象中添加 cert-manager Operator 配置时,请手动删除 external-secrets-cert-controller 部署资源,以防止出现 external-secrets 应用程序的问题。
  • 仅在 x86_64 和 arm64 架构上的 OpenShift Cluster 上安装时,在 externalsecrets.operator.openshift.io 对象中启用 BitwardenSecretManagerProvider 字段。
  • 在为 Red Hat OpenShift 部署 External Secrets Operator 前,请确保已安装了 cert-manager Operator 并运行。如果稍后安装 cert-manager Operator,请手动重启 external-secrets-operator pod,以便在 externalsecrets.operator.openshift.io 对象中应用 cert-manager 配置。

您可以使用 Web 控制台为 Red Hat OpenShift 安装外部 Secrets Operator。

先决条件

  • 您可以使用 cluster-admin 权限访问集群。
  • 访问 OpenShift Container Platform web 控制台。

流程

  1. 登陆到 OpenShift Container Platform Web 控制台。
  2. 导航至 Operators OperatorHub
  3. 在搜索框中输入 External Secrets Operator
  4. 从生成的列表中选择 Red Hat OpenShift 的 External Secrets Operator,然后点 Install
  5. Install Operator 页中:

    1. 如果需要,更新更新频道。频道默认为 tech-preview-v0.1,它会安装外部 Secrets Operator 的最新稳定版本。
    2. Version 下拉列表中选择版本。
    3. 为 Operator 选择 Installed Namespace

      • 要使用默认 Operator 命名空间,请选择 Operator recommended Namespace 选项。
      • 要使用您创建的命名空间,请选择 Select a Namespace 选项,然后从下拉列表中选择命名空间。
      • 如果默认 external-secrets-operator 命名空间不存在,则由 Operator Lifecycle Manager (OLM) 为您创建。
    4. 选择一个 更新批准策略

      • Automatic 策略可让 OLM 在有新版本可用时自动更新 Operator。
      • Manual 策略需要拥有适当凭证的用户批准 Operator 更新。
    5. Install

验证

  1. 导航到 Operators Installed Operators
  2. 验证列出的 External Secrets Operatorexternal-secrets-operator 命名空间中的 StatusSucceeded

您可以使用命令行界面 (CLI) 为 Red Hat OpenShift 安装外部 Secrets Operator。

先决条件

  • 您可以使用 cluster-admin 权限访问集群。

流程

  1. 运行以下命令,创建一个名为 external-secrets-operator 的新项目:

    $ oc new-project external-secrets-operator
    Copy to Clipboard Toggle word wrap
  2. 通过定义包含以下内容的 YAML 文件来创建 OperatorGroup 对象:

    operatorGroup.yaml 文件示例

    apiVersion: operators.coreos.com/v1
    kind: OperatorGroup
    metadata:
      name: openshift-external-secrets-operator
      namespace: external-secrets-operator
    spec:
      targetNamespaces: []
    Copy to Clipboard Toggle word wrap

  3. 运行以下命令来创建 OperatorGroup 对象:

    $ oc create -f operatorGroup.yaml
    Copy to Clipboard Toggle word wrap
  4. 通过定义包含以下内容的 YAML 文件来创建 Subscription 对象:

    subscription.yaml 文件示例

    apiVersion: operators.coreos.com/v1alpha1
    kind: Subscription
    metadata:
      name: openshift-external-secrets-operator
      namespace: external-secrets-operator
    spec:
      channel: tech-preview-v0.1
      name: openshift-external-secrets-operator
      source: redhat-operators
      sourceNamespace: openshift-marketplace
      installPlanApproval: Automatic
    Copy to Clipboard Toggle word wrap

  5. 运行以下命令来创建 Subscription 对象:

    $ oc create -f subscription.yaml
    Copy to Clipboard Toggle word wrap

验证

  1. 运行以下命令验证 OLM 订阅是否已创建:

    $ oc get subscription -n external-secrets-operator
    Copy to Clipboard Toggle word wrap

    输出示例

    NAME                                  PACKAGE                               SOURCE          CHANNEL
    openshift-external-secrets-operator   openshift-external-secrets-operator   eso-010-index   tech-preview-v0.1
    Copy to Clipboard Toggle word wrap

  2. 运行以下命令验证 Operator 是否已成功安装:

    $ oc get csv -n external-secrets-operator
    Copy to Clipboard Toggle word wrap

    输出示例

    NAME                               DISPLAY                                           VERSION   REPLACES   PHASE
    external-secrets-operator.v0.1.0   External Secrets Operator for Red Hat OpenShift   0.1.0                Succeeded
    Copy to Clipboard Toggle word wrap

  3. 输入以下命令验证外部 Secrets Operator 的状态是否为 Running:

    $ oc get pods -n external-secrets-operator
    Copy to Clipboard Toggle word wrap

    输出示例

    NAME                                                            READY   STATUS    RESTARTS   AGE
    external-secrets-operator-controller-manager-5699f4bc54-kbsmn   1/1     Running   0          25h
    Copy to Clipboard Toggle word wrap

您可以使用命令行界面 (CLI) 安装外部 Secret 操作对象。

先决条件

  • 您可以使用 cluster-admin 权限访问集群。

流程

  1. 通过定义包含以下内容的 YAML 文件来创建 externalsecrets.openshift.operator.io 对象:

    externalsecrets.yaml 文件示例

    apiVersion: operator.openshift.io/v1alpha1
    kind: ExternalSecrets
    metadata:
      labels:
        app.kubernetes.io/name: external-secrets-operator
      name: cluster
    spec: {}
    Copy to Clipboard Toggle word wrap

    如需有关 spec 配置的更多信息,请参阅 "External Secrets Operator for Red Hat OpenShift API"。

  2. 运行以下命令来创建 externalsecrets.openshift.operator.io 对象:

    $ oc create -f externalsecrets.yaml
    Copy to Clipboard Toggle word wrap

验证

  1. 输入以下命令验证 external-secrets pod 是否正在运行:

    $ oc get pods -n external-secrets
    Copy to Clipboard Toggle word wrap

    输出示例

    NAME                                                READY   STATUS    RESTARTS   AGE
    external-secrets-75d47cb9c8-6p4n2                   1/1     Running   0          4h5m
    external-secrets-cert-controller-676444b897-qb6ft   1/1     Running   0          4h5m
    external-secrets-webhook-b566658ff-7m4d5            1/1     Running   0          4h5m
    Copy to Clipboard Toggle word wrap

  2. 运行以下命令,验证 external-secrets-operator 部署对象是否报告成功状态:

    $ oc get externalsecrets.operator.openshift.io cluster -n external-secrets-operator -o jsonpath='{.status.conditions}' | jq .
    Copy to Clipboard Toggle word wrap

    输出示例

    [
      {
        "lastTransitionTime": "2025-06-17T14:57:04Z",
        "message": "",
        "observedGeneration": 1,
        "reason": "Ready",
        "status": "False",
        "type": "Degraded"
      },
      {
        "lastTransitionTime": "2025-06-17T14:57:04Z",
        "message": "reconciliation successful",
        "observedGeneration": 1,
        "reason": "Ready",
        "status": "True",
        "type": "Ready"
      }
    ]
    Copy to Clipboard Toggle word wrap

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2025 Red Hat