4.22. 自定义服务目录选项


服务目录在安装过程中默认启用。启用服务代理允许您在目录中注册服务代理。启用服务目录后,OpenShift Ansible 代理和模板服务代理也会被安装。如需更多信息,请参阅配置 OpenShift Ansible Broker配置 Template Service Broker。如果您禁用服务目录,则不会安装 OpenShift Ansible 代理和模板服务代理。

要禁用服务目录的自动部署,请在清单文件中设置以下集群变量:

openshift_enable_service_catalog=false

如果使用自己的 registry,您必须添加:

  • openshift_service_catalog_image_prefix:拉取服务目录镜像时,强制使用特定的前缀(如 registry)。您必须提供镜像名称前的完整 registry 名称。
  • openshift_service_catalog_image_version:拉取服务目录镜像时,强制使用特定镜像版本。

例如:

openshift_service_catalog_image="docker-registry.default.example.com/openshift/ose-service-catalog:${version}"
openshift_service_catalog_image_prefix="docker-registry-default.example.com/openshift/ose-"
openshift_service_catalog_image_version="v3.9.30"

4.22.1. 配置 OpenShift Ansible Broker

OpenShift Ansible 代理(OAB)在安装过程中默认启用。

如果您不想安装 OAB,请在清单文件中将 ansible_service_broker_install 参数值设置为 false:

ansible_service_broker_install=false
表 4.10. 服务代理自定义变量
变量用途

openshift_service_catalog_image_prefix

指定服务目录组件镜像的前缀。

4.22.1.1. 为 OpenShift Ansible Broker 配置持久性存储

OAB 部署其自身的 etcd 实例与 OpenShift Container Platform 集群的其他集群使用的 etcd 实例不同。OAB 的 etcd 实例需要使用持久性卷(PV)的独立存储才能正常工作。如果没有 PV 可用,etcd 将等待到 PV 满足为止。OAB 应用程序将进入 CrashLoop 状态,直到 etcd 实例可用。

为了进行部署,一些 Ansible playbook 捆绑包(APB)还需要一个 PV。例如,每个数据库 APB 都有两个计划:Development 计划使用临时存储且不需要 PV,而 Production 计划会使用持久性存储,且需要一个 PV。

APBPV 需要吗?

postgresql-apb

需要,但只适用于 Production 计划

mysql-apb

需要,但只适用于 Production 计划

mariadb-apb

需要,但只适用于 Production 计划

mediawiki-apb

为 OAB 配置持久性存储:

注意

以下示例显示使用 NFS 主机来提供所需的 PV,但可使用其他持久性存储供应商

  1. 在清单文件中,在 [OSEv3: Child] 部分添加 nfs 来启用 [nfs] 组:

    [OSEv3:children]
    masters
    nodes
    nfs
  2. 添加 [nfs] 组部分并为系统添加将会是 NFS 主机的主机名:

    [nfs]
    master1.example.com
  3. [OSEv3:vars] 部分添加以下内容:

    # nfs_directory must conform to DNS-1123 subdomain must consist of lower case
    # alphanumeric characters, '-' or '.', and must start and end with an alphanumeric character
    
    openshift_hosted_etcd_storage_kind=nfs
    openshift_hosted_etcd_storage_nfs_options="*(rw,root_squash,sync,no_wdelay)"
    openshift_hosted_etcd_storage_nfs_directory=/opt/osev3-etcd 1
    openshift_hosted_etcd_storage_volume_name=etcd-vol2 2
    openshift_hosted_etcd_storage_access_modes=["ReadWriteOnce"]
    openshift_hosted_etcd_storage_volume_size=1G
    openshift_hosted_etcd_storage_labels={'storage': 'etcd'}
    1 2
    [nfs] 组中的主机上将使用路径 <nfs_directory>/<volume_name> 创建 NFS 卷。例如:使用这些选项的卷路径为 /opt/osev3-etcd/etcd-vol2

    这些设置会创建一个持久性卷,在集群安装过程中附加到 OAB 的 etcd 实例。

4.22.1.2. 为本地 APB 开发配置 OpenShift Ansible Broker

要将 APB 开发与 OpenShift Container Registry 和 OAB 结合,必须定义 OAB 可访问的镜像白名单。如果没有定义白名单,代理将忽略 APB,用户将不会看到可用的 APB。

默认情况下,白名单为空,用户在没有配置代理的情况下无法将 APB 镜像添加到代理中。将所有以 -apb 结尾的镜像列入白名单:

  1. 在清单文件中,将以下内容添加到 [OSEv3:vars] 部分:

    ansible_service_broker_local_registry_whitelist=['.*-apb$']
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.