2.5. 所需的配置
2.5.1. 添加 Ansible 插件配置
-
在 OpenShift Developer UI 中,导航到
。 更新 Helm Chart 配置,以在 Red Hat Developer Hub 实例中添加动态插件。在 YAML 文件中的
plugins
部分,添加您要启用的动态插件。global: ... plugins: - disabled: false integrity: <SHA512 Integrity key for ansible-plugin-backstage-rhaap plugin> package: 'http://plugin-registry:8080/ansible-plugin-backstage-rhaap-x.y.z.tgz' pluginConfig: dynamicPlugins: frontend: ansible.plugin-backstage-rhaap: appIcons: - importName: AnsibleLogo name: AnsibleLogo dynamicRoutes: - importName: AnsiblePage menuItem: icon: AnsibleLogo text: Ansible path: /ansible - disabled: false integrity: <SHA512 Integrity key for ansible-plugin-scaffolder-backend-module-backstage-rhaap plugin> package: >- http://plugin-registry:8080/ansible-plugin-scaffolder-backend-module-backstage-rhaap-x.y.z.tgz pluginConfig: dynamicPlugins: backend: ansible.plugin-scaffolder-backend-module-backstage-rhaap: null - disabled: false integrity: <SHA512 Integrity key for ansible-plugin-backstage-rhaap-backend plugin> package: >- http://plugin-registry:8080/ansible-plugin-backstage-rhaap-backend-x.y.z.tgz pluginConfig: dynamicPlugins: backend: ansible.plugin-backstage-rhaap-backend: null
-
在
package
部分中,将插件文件名中的x.y.z
替换为 Ansible 插件的正确版本号。 -
对于每个 Ansible 插件,使用对应的
.integrity
文件内容更新完整性值。 单击
。开发人员 hub pod 重启并安装了插件。
验证
要验证插件是否已安装,请打开 install-dynamic-plugin
容器日志,并检查 Red Hat Developer Hub 中是否可以看到 Ansible 插件:
- 在 OpenShift Web 控制台中,打开 Red Hat Developer Hub 应用程序的 Developer 视角。
- 选择 Topology 视图。
- 选择 Red Hat Developer Hub 部署 pod 来打开一个信息窗格。
- 选择信息窗格的 Resources 选项卡。
- 在 Pods 部分中,点 View logs 打开 Pod 详情页面。
- 在 Pod 详情页面中,选择 Logs 选项卡。
-
从容器下拉列表中,选择
install-dynamic-plugins
来查看容器日志。 在
install-dynamic-plugin
容器日志中,搜索 Ansible 插件。日志中的示例表示其中一个插件成功安装:
=> Successfully installed dynamic plugin http://plugin-registry-1:8080/ansible-plugin-backstage-rhaap-1.1.0.tgz
下图显示了容器登录 Pod 详情页面。版本号和文件名可能会有所不同。
2.5.2. 添加 Ansible Development Tools sidecar 容器
加载插件后,在 Red Hat Developer Hub pod 中添加 Ansible Development Container (ansible-devtools-server
)作为 sidecar 容器。
2.5.2.1. 在 Red Hat Developer Hub Helm 配置中添加 pull secret
前提条件
Ansible 开发容器下载需要一个红帽客户门户网站帐户和 Red Hat Service Registry 帐户。
流程
- 如果需要,创建一个新的 Red Hat Registry Service 帐户。
- 单击 Account name 列下的令牌名称。
- 选择 OpenShift Secret 选项卡,并按照说明将 pull secret 添加到 Red Hat Developer Hub OpenShift 项目中。
将新 secret 添加到 Red Hat Developer Hub Helm 配置中,将 &
lt;your-redhat-registry-pull-secret
> 替换为您在 Red Hat Registry Service Account 网站上生成的 secret 的名称:upstream: backstage: ... image: ... pullSecrets: - <your-redhat-registry-pull-secret> ...
如需更多信息,请参阅 Red Hat Container Registry 文档。
2.5.2.2. 添加 Ansible Developer Tools 容器
您必须更新 Helm Chart 配置来添加额外的容器。
流程
- 登录 OpenShift UI。
-
进入
以打开 Helm Chart。 更新 YAML 文件中的
extraContainers
部分。添加以下代码:
upstream: backstage: ... extraContainers: - command: - adt - server image: >- registry.redhat.io/ansible-automation-platform-25/ansible-dev-tools-rhel8:latest imagePullPolicy: IfNotPresent name: ansible-devtools-server ports: - containerPort: 8000 ...
注意镜像拉取策略为
imagePullPolicy: IfNotPresent
。只有节点上不存在时才拉取镜像。将它更新为imagePullPolicy: Always
,如果总是要使用最新的镜像。- 单击 。
验证
要验证容器是否正在运行,请检查容器日志:

2.5.3. 添加自定义 ConfigMap
按照 Red Hat Developer Hub 管理指南中的 将自定义应用程序配置文件添加到 Red Hat OpenShift Container Platform 的步骤创建 Red Hat Developer Hub ConfigMap。以下示例使用一个名为 app-config-rhdh
的自定义 ConfigMap
要编辑您的自定义 ConfigMap,请登录 OpenShift UI 并导航到
2.5.4. 配置 Ansible Dev Tools 服务器
Ansible 插件需要 creatorService
URL 来使用提供的软件模板调配新项目。
流程
-
编辑您在 添加自定义 ConfigMap 中创建的自定义 Red Hat Developer Hub 配置映射
app-config-rhdh
。 将以下代码添加到 Red Hat Developer Hub
app-config-rhdh.yaml
文件中。kind: ConfigMap apiVersion: v1 metadata: name: app-config-rhdh ... data: app-config-rhdh.yaml: |- ansible: creatorService: baseUrl: 127.0.0.1 port: '8000' ...
2.5.5. 配置 Ansible Automation Platform 详情
Ansible 插件使用令牌通过控制器 API 查询 Ansible Automation Platform 订阅状态。
无论 Ansible Automation Platform 订阅状态如何,Ansible 插件都可以继续正常工作。
流程
- 按照自动化控制器的 添加令牌 部分,使用 自动化控制器中的 "Read"范围创建个人访问令牌(PAT)。
-
编辑自定义 Red Hat Developer Hub 配置映射,如
app-config-rhdh
。 将您的 Ansible Automation Platform 详情添加到
app-config-rhdh.yaml
。-
使用自动化控制器 URL 设置
baseURL
密钥。 -
使用在第 1 步中创建的生成的令牌值设置
令牌
密钥。 将
checkSSL
密钥设为true
或false
。如果
checkSSL
设为true
,Ansible 插件将验证 SSL 证书是否有效。data: app-config-rhdh.yaml: | ... ansible: ... rhaap: baseUrl: '<https://MyControllerUrl>' token: '<AAP Personal Access Token>' checkSSL: true
-
使用自动化控制器 URL 设置
您需要从外部和未经授权的访问保护 Red Hat Developer Hub 安装。像管理任何其他 secret 一样管理后端身份验证密钥。满足强密码要求,不要将其公开在任何配置文件中,而是仅将其作为环境变量注入配置文件中。
2.5.6. 添加 Ansible 插件软件模板
Red Hat Ansible 为 Red Hat Developer Hub 提供软件模板,以根据 Ansible 最佳实践置备新的 playbook 和集合项目。
流程
-
编辑自定义 Red Hat Developer Hub 配置映射,如
app-config-rhdh
。 -
将以下代码添加到 Red Hat Developer Hub
app-config-rhdh.yaml
文件中。
data: app-config-rhdh.yaml: | catalog: ... locations: ... - type: url target: https://github.com/ansible/ansible-rhdh-templates/blob/main/all.yaml rules: - allow: [Template]
如需更多信息,请参阅 Red Hat Developer Hub 管理指南中的管理模板 部分。
2.5.7. 配置基于角色的访问控制
Red Hat Developer Hub 提供基于角色的访问控制(RBAC)功能。然后,RBAC 可以应用到 Ansible 插件内容。
分配以下角色:
-
admin:superUsers
组的成员可以在 Ansible 插件的 Create 选项卡中选择模板,以创建 playbook 和集合项目。 -
admin:users
组的成员可以在 Ansible 插件的 Create 选项卡中查看模板。
以下示例将 RBAC 添加到 Red Hat Developer Hub。
data: app-config-rhdh.yaml: | plugins: ... permission: enabled: true rbac: admin: users: - name: user:default/<user-scm-ida> superUsers: - name: user:default/<user-admin-idb>
如需有关权限策略和管理 RBAC 的更多信息,请参阅 Red Hat Developer Hub 授权 指南。