第 6 章 使用 Helm Chart 在 air-gapped 环境中安装 Orchestrator 插件


您可以使用 Helm Chart 在完全断开连接的或部分断开连接的环境中使用 Orchestrator 插件配置 Red Hat Developer Hub (RHDH)。

您可以使用 Helm Chart 在完全 air-gapped OpenShift Container Platform 环境中使用 Orchestrator 插件安装 Red Hat Developer Hub (RHDH)。

您可以将镜像镜像到中间磁盘,然后从磁盘镜像到目标本地 registry 并应用生成的集群资源。

先决条件

  • 已使用本地 registry 设置断开连接的环境。
  • 您有将 NPM 软件包推送到受限网络中的 NPM 服务器的权限。
  • 已安装 oc-mirror 工具,其版本与 OpenShift Container Platform 集群的版本对应。

流程

  1. oc-mirror 创建 ImageSetConfiguration.yaml 文件。您必须使用 ImageSetConfiguration 文件来包括 Serverless Logic Operator 需要的所有镜像,如下例所示:

    apiVersion: mirror.openshift.io/v2alpha1
    kind: ImageSetConfiguration
    mirror:
      additionalimages:
      - name: registry.redhat.io/openshift-serverless-1/logic-jobs-service-postgresql-rhel8:1.36.0
      - name: registry.redhat.io/openshift-serverless-1/logic-jobs-service-ephemeral-rhel8:1.36.0
      - name: registry.redhat.io/openshift-serverless-1/logic-data-index-postgresql-rhel8:1.36.0
      - name: registry.redhat.io/openshift-serverless-1/logic-data-index-ephemeral-rhel8:1.36.0
      - name: registry.redhat.io/openshift-serverless-1/logic-db-migrator-tool-rhel8:1.36.0
      - name: registry.redhat.io/openshift-serverless-1/logic-swf-builder-rhel8:1.36.0
      - name: registry.redhat.io/openshift-serverless-1/logic-swf-devmode-rhel8:1.36.0
    
      helm:
        repositories:
          - name: openshift-charts
            url: https://charts.openshift.io
            charts:
              - name: redhat-developer-hub
                version: "1.8.1"
              - name: redhat-developer-hub-orchestrator-infra
                version: "1.8.1"
      operators:
        - catalog: registry.redhat.io/redhat/redhat-operator-index:4.19
          # For example: registry.redhat.io/redhat/redhat-operator-index:v4.19
          packages:
          - name: logic-operator-rhel8
            channels:
            - name: alpha
              minVersion: 1.36.0
              maxVersion: 1.36.0
          - name: serverless-operator
            channels:
            - name: stable
              minVersion: 1.36.0
              maxVersion: 1.36.1

    另外,您可以使用 podman 命令来查找缺少的镜像,并在版本更改时将它们添加到 additionalimages 列表中:

    IMG=registry.redhat.io/openshift-serverless-1/logic-operator-bundle:1.36
    mkdir local-manifests-osl
    podman create --name temp-container "$IMG" -c "cat /manifests/logic-operator-rhel8.clusterserviceversion.yaml"
    podman cp temp-container:/manifests ./local-manifests-osl
    podman rm temp-container
    yq -r '.data."controllers_cfg.yaml" | from_yaml | .. | select(tag == "!!str") | select(test("^.\\/.:.*$"))' ./local-manifests-osl/manifests/logic-operator-rhel8-controllers-config_v1_configmap.yaml
  2. 通过运行 oc-mirror 命令,对 ImageSetConfiguration.yaml 文件中的镜像进行镜像(mirror)。例如:

    oc-mirror --config=ImageSetConfiguration.yaml file:///path/to/mirror-archive --authfile /path/to/authfile  --v2
    注意

    oc-mirror 命令拉取在 ImageSetConfiguration 文件中列出的 chart,并使其作为 /path/to/mirror-archive 目录下的 tgz 存档提供。

  3. 应用在推送步骤中生成的集群范围资源,将所有镜像拉取重定向到本地 registry,如下例所示:

    cd <workspace folder>/working-dir/cluster-resources/
    oc apply -f .
  4. 将生成的镜像存档文件(如 /path/to/mirror-archive/mirror_000001.tar )传送到断开连接的环境中的堡垒主机。
  5. 从断开连接的环境中的堡垒主机(可以访问镜像 registry)中,将镜像从存档文件镜像到目标 registry。例如:

    oc-mirror --v2 --from <mirror-archive-file> docker://<target-registry-url:port> --workspace file://<workspace folder> --authfile /path/to/authfile

    其中:

    <mirror-archive-file>
    输入传输的 tar 文件的名称。
    <target-registry-url:port>
    输入您的本地 registry,如 registry.localhost:5000
  6. 使用以下任一方法下载编配器 1.8.2 的节点软件包管理器(NPM)软件包:

  7. 将您下载的 NPM 软件包推送到 NPM 服务器,如下例所示:

    npm publish backstage-plugin-orchestrator-1.8.2.tgz
    npm publish backstage-plugin-orchestrator-backend-dynamic-1.8.2.tgz
    npm publish backstage-plugin-orchestrator-form-widgets-1.8.2.tgz
    npm publish backstage-plugin-scaffolder-backend-module-orchestrator-dynamic-1.8.2.tgz
  8. 应用 redhat-developer-hub-orchestrator-infra Helm Chart 并批准安装计划。详情请参阅使用 Helm Chart 进行 Air-gapped 安装
  9. 应用 RHDH 1.8 Helm Chart。包含 1.8.1 版本并启用 Orchestrator 插件,如下例所示:

    orchestrator.enabled=true
  10. RHDH 1.8 Helm Chart 默认使用完整 URL 引用从官方 Red Hat NPM registry 中拉取 Orchestrator 插件。您必须覆盖此行为以指向本地 registry。

    要将 Orchestrator 插件配置为使用自定义 registry,请完成以下步骤:

    • 打开 values.yaml 文件。
    • 列出 orchestrator.plugins 部分下的 Orchestrator 插件软件包。您必须将简化的软件包引用替换为指向自定义 NPM registry 的完整 URL,如下例所示:

      orchestrator:
        plugins:
          - disabled: false
            package: <custom_NPM_registry_URL>[:<port>]/@redhat/backstage-plugin-orchestrator-backend-dynamic/-/backstage-plugin-orchestrator-backend-dynamic-{product-bundle-version}.tgz
            integrity: sha512-xxxxxx
          - disabled: false
            package: <custom_NPM_registry_URL>[:<port>]/@redhat/backstage-plugin-orchestrator/-/backstage-plugin-orchestrator-{product-bundle-version}.tgz
            integrity: sha512-xxxxxy
          - disabled: false
            package: <custom_NPM_registry_URL>[:<port>]/@redhat/backstage-plugin-orchestrator-form-widgets/-/backstage-plugin-orchestrator-form-widgets-{product-bundle-version}.tgz
            integrity: sha512-xxxxxz
          - disabled: false
            package: <custom_NPM_registry_URL>[:<port>]/@redhat/backstage-plugin-scaffolder-backend-module-orchestrator-dynamic/-/backstage-plugin-scaffolder-backend-module-orchestrator-dynamic-{product-bundle-version}.tgz
            integrity: sha512-xxxx1

      其中:

      <custom_NPM_registry_URL>
      输入自定义 registry 的地址并确保完整性校验和(如 sha512-xxxxxx)与 registry 中的文件匹配。

验证

  • 重新启动 RHDH Pod,并等待组件正确部署。
  • 部署完成后,进入 RHDH UI,并确认 Orchestrator UI 可以访问并正确运行。
注意

Orchestrator UI 的成功访问会确认底层组件正在运行,集群可以识别插件。

Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2026 Red Hat
返回顶部