This documentation is for a release that is no longer maintained
See documentation for the latest supported version.第 2 章 在 OpenShift Container Platform 上部署 Red Hat Developer Hub
您可以使用以下方法之一在 OpenShift Container Platform 上安装 Red Hat Developer Hub:
- Helm chart
- Red Hat Developer Hub Operator
您可以使用 Red Hat OpenShift Container Platform 中的 Helm chart 来安装 Developer Hub,这是灵活的安装方法。
Helm 是 OpenShift Container Platform 上的软件包管理器,它提供以下功能:
- 使用自定义 hook 应用常规应用程序更新
- 管理复杂应用程序的安装
- 提供可在公共和私有服务器上托管的图表
- 支持回滚到以前的应用程序版本
Red Hat Developer Hub Helm chart 位于 OpenShift Dedicated 和 OpenShift Container Platform 的 Helm 目录中。
先决条件
- 已登陆到 OpenShift Container Platform 帐户。
-
具有 OpenShift Container Platform
admin
角色的用户在项目中配置了适当的角色和权限,以创建应用程序。如需有关 OpenShift Container Platform 角色的更多信息,请参阅使用 RBAC 定义和应用权限。 - 您已在 OpenShift Container Platform 中创建了一个项目。有关在 OpenShift Container Platform 中创建项目的更多信息,请参阅 Red Hat OpenShift Container Platform 文档。
流程
- 从 Developer Hub web 控制台的 Developer 视角,点 +Add。
- 在 Developer Catalog 面板中点 Helm Chart。
- 在 Filter by keyword 框中,输入 Developer Hub 并点 Red Hat Developer Hub 卡。
- 在 Red Hat Developer Hub 页面中,点 Create。
-
从集群中移除,复制 OpenShift Container Platform 路由器主机(例如:
apps.<clusterName>.com
)。 选择单选按钮,以使用表单视图或 YAML 视图来配置 Developer Hub 实例。默认选择 Form view。
使用 Form view
-
要使用 Form 视图配置实例,请进入 Backstage 实例中的 Root Schema
global Enable service authentication,并将 OpenShift Container Platform 路由器主机粘贴到表单上的字段中。
-
要使用 Form 视图配置实例,请进入 Backstage 实例中的 Root Schema
使用 YAML 视图
要使用 YAML 视图配置实例,请将 OpenShift Container Platform 路由器主机名粘贴到
global.clusterRouterBase
参数值中,如下例所示:Copy to Clipboard Copied! Toggle word wrap Toggle overflow
如果需要,请编辑其他值。
注意有关主机的信息会被复制,并可以被 Developer Hub 后端访问。
当自动生成 OpenShift Container Platform 路由时,路由的主机值会被推断出来,并将相同的主机信息发送到 Developer Hub。另外,如果自定义域中存在使用值手动设置主机,则自定义主机将具有优先权。
- 点 Create 并等待数据库和 Developer Hub 启动。
点 Open URL 图标开始使用 Developer Hub 平台。
如果 Developer Hub 容器无法访问配置文件,则 developer-hub
pod 可能会处于 CrashLoopBackOff
状态。这个错误由以下日志表示:
Loaded config from app-config-from-configmap.yaml, env ... 2023-07-24T19:44:46.223Z auth info Configuring "database" as KeyStore provider type=plugin Backend failed to start up Error: Missing required config value at 'backend.database.client'
Loaded config from app-config-from-configmap.yaml, env
...
2023-07-24T19:44:46.223Z auth info Configuring "database" as KeyStore provider type=plugin
Backend failed to start up Error: Missing required config value at 'backend.database.client'
要解决这个错误,请验证配置文件。
air-gapped 环境(也称为 air-gapped 网络或隔离的网络)通过隔离系统或网络来确保安全性。建立这个隔离以防止 air-gapped 系统和外部源间的未授权访问、数据传输或通信。
您可以在 air-gapped 环境中安装 Red Hat Developer Hub,以确保安全性并满足特定的法规要求。
要在 air-gapped 环境中安装 Developer Hub,您必须有权访问 registry.redhat.io
和 air-gapped 环境的 registry。
先决条件
- 已安装 Red Hat OpenShift Container Platform 4.12 或更高版本。
-
您可以访问
registry.redhat.io
。 - 您可以访问集群的 Red Hat OpenShift Container Platform 镜像 registry。有关公开镜像 registry 的更多信息,请参阅有关 公开 registry 的 Red Hat OpenShift Container Platform 文档。
-
您已在工作站上安装了
oc
命令行工具。 -
您已在工作站上安装了
podman
命令行工具。 - 您在 Red Hat Developer Portal 中有一个帐户。
流程
运行以下命令,使用
oc
命令行工具登录到 OpenShift Container Platform 帐户:oc login -u <user> -p <password> https://api.<hostname>:6443
oc login -u <user> -p <password> https://api.<hostname>:6443
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 运行以下命令,使用
podman
命令行工具登录到 OpenShift Container Platform 镜像 registry:podman login -u kubeadmin -p $(oc whoami -t) default-route-openshift-image-registry.<hostname>
podman login -u kubeadmin -p $(oc whoami -t) default-route-openshift-image-registry.<hostname>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注意您可以运行以下命令来获取 OpenShift Container Platform 镜像 registry 的完整主机名,然后使用命令中的主机名登录:
REGISTRY_HOST=$(oc get route default-route -n openshift-image-registry --template='{{ .spec.host }}')
REGISTRY_HOST=$(oc get route default-route -n openshift-image-registry --template='{{ .spec.host }}')
Copy to Clipboard Copied! Toggle word wrap Toggle overflow podman login -u kubeadmin -p $(oc whoami -t) $REGISTRY_HOST
podman login -u kubeadmin -p $(oc whoami -t) $REGISTRY_HOST
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 运行以下命令,登录到
podman
中的registry.redhat.io
:podman login registry.redhat.io
podman login registry.redhat.io
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 有关 registry 身份验证的更多信息,请参阅 Red Hat Container Registry 身份验证。
运行以下命令,将 Developer Hub 和 PostgreSQL 镜像从 Red Hat Image registry 拉取到您的工作站:
podman pull registry.redhat.io/rhdh/rhdh-hub-rhel9:{product-chart-version}
podman pull registry.redhat.io/rhdh/rhdh-hub-rhel9:{product-chart-version}
Copy to Clipboard Copied! Toggle word wrap Toggle overflow podman pull registry.redhat.io/rhel9/postgresql-15:latest
podman pull registry.redhat.io/rhel9/postgresql-15:latest
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 运行以下命令,将这两个镜像推送到内部 OpenShift Container Platform 镜像 registry:
podman push --remove-signatures registry.redhat.io/rhdh/rhdh-hub-rhel9:{product-chart-version} default-route-openshift-image-registry.<hostname>/<project_name>/rhdh-hub-rhel9:{product-chart-version}
podman push --remove-signatures registry.redhat.io/rhdh/rhdh-hub-rhel9:{product-chart-version} default-route-openshift-image-registry.<hostname>/<project_name>/rhdh-hub-rhel9:{product-chart-version}
Copy to Clipboard Copied! Toggle word wrap Toggle overflow podman push --remove-signatures registry.redhat.io/rhel9/postgresql-15:latest default-route-openshift-image-registry.<hostname>/<project_name>/postgresql-15:latest
podman push --remove-signatures registry.redhat.io/rhel9/postgresql-15:latest default-route-openshift-image-registry.<hostname>/<project_name>/postgresql-15:latest
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 有关直接将镜像推送到 OpenShift Container Platform 镜像 registry 的更多信息,请参阅 如何直接将镜像推送到 OpenShift 4 registry 中。
重要如果发生 x509 错误,请验证您已在 系统上安装了用于 OpenShift Container Platform 路由的 CA 证书。
使用以下命令验证 OpenShift Container Platform 内部 registry 中是否存在这两个镜像:
oc get imagestream -n <project_name>
oc get imagestream -n <project_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 运行以下命令,为这两个镜像启用本地镜像查找:
oc set image-lookup postgresql-15
oc set image-lookup postgresql-15
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc set image-lookup rhdh-hub-rhel9
oc set image-lookup rhdh-hub-rhel9
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 进入 YAML 视图,并使用以下值更新
backstage
和postgresql
的image
部分:Developer Hub 镜像的值示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow PostgreSQL 镜像的值示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 使用 Helm Chart 安装 Red Hat Developer Hub。有关安装 Developer Hub 的更多信息,请参阅 第 2.1 节 “使用 Helm Chart 在 OpenShift Container Platform 上部署 Red Hat Developer Hub”。