搜索

在 Red Hat OpenShift Container Platform 上部署 Red Hat Process Automation Manager

download PDF
Red Hat Process Automation Manager 7.12

摘要

本文档论述了如何在 Red Hat OpenShift Container Platform 上部署各种 Red Hat Process Automation Manager 环境,如编写环境、受管服务器环境、不可变服务器环境和其他支持的环境选项。

前言

作为开发者或系统管理员,您可以在 Red Hat OpenShift Container Platform 上部署各种 Red Hat Process Automation Manager 环境,如编写环境、受管服务器环境、不可变服务器环境和其他支持的环境选项。

使开源包含更多

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。我们从这四个术语开始:master、slave、黑名单和白名单。由于此项工作十分艰巨,这些更改将在即将推出的几个发行版本中逐步实施。详情请查看 CTO Chris Wright 信息

部分 I. 使用 Operator 在 Red Hat OpenShift Container Platform 4 上部署 Red Hat Process Automation Manager 环境

作为系统工程师,您可以在 Red Hat OpenShift Container Platform 4 上部署红帽流程自动化管理器环境,以提供开发或执行服务、处理应用程序和其他业务资产的基础架构。您可以使用 OpenShift Operator 部署结构化 YAML 文件中定义的环境,并根据需要维护和修改此环境。

注意

有关使用模板在 Red Hat OpenShift Container Platform 3 上部署 Red Hat Process Automation Manager 环境的说明,请参阅使用模板 在 Red Hat OpenShift Container Platform 3 上部署 Red Hat Process Automation Manager 环境

先决条件

  • Red Hat OpenShift Container Platform 4 环境可用。有关当前版本支持的 Red Hat OpenShift Container Platform 的具体版本,请参阅 Red Hat Process Automation Manager 7 支持的配置
  • 创建了用于部署的 OpenShift 项目。
  • 使用 OpenShift Web 控制台登录到项目。
  • 以下资源可在 OpenShift 集群中使用:根据应用程序负载,可能需要高资源分配才能接受接受的性能。

    • 对于编写环境,4GB 内存和 2 个虚拟 CPU 内核用于 Business Central pod。在高可用性部署中,每个副本都需要这些资源,默认创建两个副本。
    • 对于生产环境或不可变环境,每个 Business Central Monitoring pod 副本 2GB 内存和 1 个虚拟 CPU 内核。
    • 每个 KIE Server pod 的每个副本的 2GB 内存和 1 个虚拟 CPU 内核。
    • 1GB 内存和一半的智能路由器 pod 副本的虚拟 CPU 内核.
    • 在高可用性编写部署中,MySQL、Red Hat AMQ 和 Red Hat Data Grid pod 需要根据配置的默认值进行其他资源。

      注意

      MaxMetaspaceSize 的默认值为:

      • Business Central 镜像:1024m
      • KIE Server 镜像:512m
      • 对于其他镜像:256m
  • 启用动态持久性卷(PV)置备。或者,如果没有启用动态 PV 置备,则必须有足够的持久性卷。默认情况下,部署的组件需要以下 PV 大小:

    • 默认情况下,每个 KIE 服务器部署都需要一个 1Gi PV 用于数据库。您可以更改数据库 PV 大小。您可以部署多个 KIE 服务器;每个服务器都需要单独的数据库 PV。如果您使用外部数据库服务器,则此要求不适用。
    • 默认情况下,Business Central 需要 1Gi PV。您可以更改 Business Central 持久性存储的 PV 大小。
    • Business Central Monitoring 需要 64Mi PV。
    • 智能路由器需要一个 64Mi PV。
  • 如果您打算使用 Business Central Monitoring pod 部署高可用性编写环境或任何环境,您的 OpenShift 环境支持使用 ReadWriteMany 模式的持久性卷。如果您的环境不支持这个模式,您可以使用 NFS 来置备卷。有关在 OpenShift 公共云和专用云中支持访问模式的详情,请参阅 Red Hat OpenShift Container Platform 文档中的访问模式

第 1 章 Red Hat OpenShift Container Platform 上的 Red Hat Process Automation Manager 概述

您可以将 Red Hat Process Automation Manager 部署到 Red Hat OpenShift Container Platform 环境中。

在这个解决方案中,Red Hat Process Automation Manager 的组件被部署为单独的 OpenShift pod。您可以单独扩展和缩减每个 pod,以便根据特定组件的要求提供所需数量的或多个容器。您可以使用标准的 OpenShift 方法管理容器集并平衡负载。

OpenShift 提供了 Red Hat Process Automation Manager 的以下关键组件:

  • KIE Server (也称为 执行服务器 )是运行决策服务、处理应用程序和其他可部署资产(统称为 服务)的基础架构元素。服务的所有逻辑都在执行服务器上运行。

    KIE 服务器通常需要数据库服务器。您可以在另一个 OpenShift pod 中提供数据库服务器,或者将 OpenShift 上的执行服务器配置为使用任何其他数据库服务器。或者,KIE 服务器可以使用 H2 数据库;在这种情况下,您无法扩展 pod。

    在某些模板中,您可以扩展 KIE Server pod 来根据需要提供任意数量的副本,在同一主机或不同的主机上运行。当您扩展或缩减 pod 时,其所有副本都使用相同的数据库服务器并运行相同的服务。OpenShift 提供负载平衡,请求可以由任何容器集进行处理。

    您可以部署单独的 KIE Server pod 来运行不同的服务组。该 pod 也可以扩展或缩减。您可以根据需要拥有多个单独的复制 KIE Server pod。

  • Business Central 是用于编写服务的基于 Web 的互动环境。它还提供管理和监控控制台。您可以使用 Business Central 来开发服务并将其部署到 KIE 服务器。您还可以使用 Business Central 监控进程的执行。

    Business Central 是一个集中的应用程序。但是,您可以将它配置为高可用性,其中多个 pod 运行并共享相同的数据。

    Business Central 包括一个 Git 存储库,用于存储在其上开发的服务的来源。它还包括内置的 Maven 存储库。根据配置,Business Central 可将编译的服务(KJAR 文件)放在内置的 Maven 存储库中,或者(如果配置)到外部 Maven 存储库中。

  • Business Central Monitoring 是一个基于 Web 的管理和监控控制台。它可以管理服务到 KIE 服务器,并提供监控信息,但不包括编写功能。您可以使用此组件来管理暂存和生产环境。
  • 智能路由器是 KIE 服务器和与之交互的其他组件之间的可选层。当您的环境包含不同 KIE 服务器上运行的许多服务时,智能路由器为所有客户端应用提供单一端点。客户端应用可以发出需要任何服务的 REST API 调用。智能路由器自动调用可以处理特定请求的 KIE 服务器。

您可以在 OpenShift 中将这些和其他组件划分为不同的环境配置。

1.1. 编写环境的构架

在 Red Hat Process Automation Manager 中,Business Central 组件为编写服务提供了一个基于 Web 的交互式用户界面。KIE 服务器组件运行服务。

KIE 服务器使用数据库服务器来存储进程服务的状态。

您还可以使用 Business Central 将服务部署到 KIE 服务器上。您可以使用多个 KIE 服务器来运行不同的服务,并控制来自同一 Business Central 的服务器。

单个编写环境

在单个编写环境中,只有一个 Business Central 实例正在运行。多个用户可以同时访问其 Web 界面,但性能可能会限制,且没有故障转移功能。

Business Central 包括一个内置 Maven 存储库,用于存储您开发的服务的内置 Maven 存储库(KJAR 文件/artifacts)。您可以使用持续集成和持续部署(CICD)工具从存储库中检索这些工件,并根据需要移动它们。

Business Central 将源代码保存在内置的 Git 存储库中,该存储库存储在 .niogit 目录中。它使用内置索引机制来索引服务中的资产。

Business Central 将持久性存储用于 Maven 存储库和 Git 存储库。

默认情况下,单个编写环境包含一个 KIE 服务器实例。此 KIE 服务器实例使用内置 H2 数据库引擎来存储进程服务的状态。

单个编写环境可以使用控制器策略。Business Central 包含 控制器,它是可以管理 KIE 服务器的组件。当您将 KIE 服务器配置为连接到 Business Central 时,KIE 服务器使用 REST API 连接到控制器。此连接将打开持久的 WebSocket。在使用控制器策略的 OpenShift 部署中,每个 KIE 服务器实例都最初配置为连接到 Business Central Controller。

当您使用 Business Central 用户界面在 KIE 服务器上部署和管理服务时,KIE 服务器会通过 Controller 连接 WebSocket 接收请求。要部署服务,KIE 服务器从作为 Business Central 一部分的 Maven 存储库请求必要的构件。

客户端应用使用 REST API 来使用 KIE 服务器上运行的服务。

图 1.1. 单个编写环境的架构图

集群 KIE 服务器和使用多个 KIE 服务器

您可以扩展 KIE Server pod 来运行集群的 KIE 服务器环境。要扩展 KIE 服务器,您必须确保它使用独立 pod 或外部数据库服务器中的数据库服务器,而不是内置的 H2 数据库引擎。

在集群部署中,KIE 服务器的几个实例运行相同的服务。这些服务器可以使用相同的服务器 ID 连接到 Business Central Controller,因此他们可以从控制器接收相同的请求。Red Hat OpenShift Container Platform 在服务器间提供负载均衡。在集群 KIE 服务器实例上运行的 OptaPlanner 服务和红帽构建的 OptaPlanner 服务必须无状态,因为来自同一客户端的请求可能会被不同的实例处理。

您还可以部署几个独立的 KIE 服务器来运行不同的服务。在这种情况下,服务器使用不同的服务器 ID 值连接到 Business Central Controller。您可以使用 Business Central UI 将服务部署到每个服务器。

智能路由器

可选的智能路由器组件在客户端应用程序和 KIE 服务器实例之间提供一个层。如果您使用几个独立的 KIE 服务器实例,它很有用。

客户端应用可以使用在不同 KIE 服务器实例上运行的服务,但始终连接到智能路由器。Smart Router 会自动将请求传递给运行所需服务的 KIE 服务器实例。智能路由器还支持管理服务版本,并提供额外的负载平衡层。

高可用性编写环境

在高可用性(HA)编写环境中,Business Central pod 被扩展,因此多个 Business Central 实例正在运行。Red Hat OpenShift Container Platform 为用户请求提供负载均衡。此环境为多个用户提供最佳性能并支持故障转移。

Business Central 的每个实例都包含构建工件的 Maven 存储库,并使用 .niogit Git 存储库进行源代码。实例将共享持久性存储用于存储库。此存储需要具有 ReadWriteMany 访问的持久性卷。

Red Hat DataGrid 的实例提供了在 Business Central 中开发的所有项目和资产的索引。

Red Hat AMQ 实例在所有 Business Central 实例之间传播 Java CDI 信息。例如,当创建新项目或某个实例上的资产被锁定或修改时,这些信息会立即反映在所有其他实例中。

控制器策略不适用于集群部署。在 OpenShift 部署中,高可用性 Business Central 必须使用 OpenShift 启动策略 来管理 KIE 服务器。

每个 KIE 服务器部署(可以扩展)都会创建一个反映其当前状态的 ConfigMap。Business Central 通过阅读 ConfigMap 发现所有 KIE 服务器。

当用户请求 KIE 服务器配置中的更改(例如,部署或取消部署服务时),Business Central 发起与 KIE 服务器的连接并发送 REST API 请求。KIE 服务器更改 ConfigMap 以反应新配置状态,然后触发自己的重新部署,以便所有实例都已重新部署,并反映了新配置。

您可以在 OpenShift 环境中部署几个独立的 KIE 服务器。每个 KIE 服务器都有带有必要配置的独立 ConfigMap。您可以单独扩展每个 KIE 服务器。

您可以在 OpenShift 部署中包括 Smart Router。

图 1.2. 高可用性编写环境的架构图

第 2 章 准备在 OpenShift 环境中部署 Red Hat Process Automation Manager

在 OpenShift 环境中部署 Red Hat Process Automation Manager 之前,您必须完成几个流程。如果要部署附加镜像,例如用于新版本的进程或其他进程,则不需要重复这些步骤。

注意

如果要部署试用环境,请完成 第 2.1 节 “确保您的环境已向红帽 registry 进行身份验证” 中描述的步骤,且不完成任何其他准备过程。

2.1. 确保您的环境已向红帽 registry 进行身份验证

要部署 Red Hat OpenShift Container Platform 的 Red Hat Process Automation Manager 组件,您必须确保 OpenShift 可以从 Red Hat registry 下载正确的镜像。

OpenShift 必须配置为使用您的服务帐户用户名和密码与红帽 registry 进行身份验证。此配置特定于命名空间,如果操作器工作,则配置已针对 openshift 命名空间完成。

但是,如果 openshift 命名空间中找不到 Red Hat Process Automation Manager 的镜像流,或者如果 Operator 配置为自动将 Red Hat Process Automation Manager 更新至新版本,Operator 需要将镜像下载到项目的命名空间。您必须完成此命名空间的身份验证配置。

流程

  1. 确保您已使用 oc 命令登录到 OpenShift,并且您的项目处于活动状态。
  2. 完成 共享文件系统服务的 Registry Service Accounts 中记录的步骤。您必须登录红帽客户门户网站以访问文档并完成步骤以创建 registry 服务帐户。
  3. 选择 OpenShift Secret 选项卡,再单击 Download secret 下的链接来下载 YAML 机密文件。
  4. 查看下载的文件并记录 name: 条目中列出的名称。
  5. 运行以下命令:

    oc create -f <file_name>.yaml
    oc secrets link default <secret_name> --for=pull
    oc secrets link builder <secret_name> --for=pull

    <file_name > 替换为下载的文件名,&lt ;secret_name > 替换为文件 name: 条目中列出的名称。

2.2. 为 KIE 服务器创建 secret

OpenShift 使用名为 secret 的对象 来保存敏感信息,如密码或密钥存储。如需有关 OpenShift secret 的更多信息,请参阅 Red Hat OpenShift Container Platform 文档中的 什么是 secret

为了提供 HTTPS 访问,KIE 服务器使用 SSL 证书。部署可以自动创建示例 secret。但是,在生产环境中,您必须为 KIE 服务器创建一个 SSL 证书,并将其作为机密提供给 OpenShift 环境。

流程

  1. 生成名为 keystore.jks 的 SSL 密钥存储,该密钥存储带有用于 KIE Server 的 SSL 加密的私钥。有关如何创建带有自签名或购买 SSL 证书的密钥存储的更多信息,请参阅 生成 SSL 加密密钥和证书

    注意

    在生产环境中,生成与 KIE 服务器预期 URL 匹配的有效签名证书。

  2. 记录证书的名称。Red Hat Process Automation Manager 配置中此名称的默认值为 jboss
  3. 记录密钥存储文件的密码。Red Hat Process Automation Manager 配置中此名称的默认值为 mykeystorepass
  4. 使用 oc 命令从新密钥存储文件中生成名为 kieserver-app-secret 的 secret:

    $ oc create secret generic kieserver-app-secret --from-file=keystore.jks

2.3. 为 Business Central 创建 secret

为了提供 HTTPS 访问,Business Central 使用 SSL 证书。部署可以自动创建示例 secret。但是,在生产环境中,您必须为 Business Central 创建一个 SSL 证书,并将其作为 secret 提供给 OpenShift 环境。

不要将相同的证书和密钥用于 Business Central 和 KIE 服务器。

流程

  1. 生成名为 keystore.jks 的 SSL 密钥存储,该密钥存储带有用于 KIE Server 的 SSL 加密的私钥。有关如何创建带有自签名或购买 SSL 证书的密钥存储的更多信息,请参阅 生成 SSL 加密密钥和证书

    注意

    在生产环境中,生成与 Business Central 的预期 URL 匹配的有效签名证书。

  2. 记录证书的名称。Red Hat Process Automation Manager 配置中此名称的默认值为 jboss
  3. 记录密钥存储文件的密码。Red Hat Process Automation Manager 配置中此名称的默认值为 mykeystorepass
  4. 使用 oc 命令从新密钥存储文件中生成名为 businesscentral-app-secret 的 secret:

    $ oc create secret generic businesscentral-app-secret --from-file=keystore.jks

2.4. 为 AMQ 代理连接创建 secret

如果要将任何 KIE 服务器连接到 AMQ 代理并使用 SSL 作为 AMQ 代理连接,您必须为连接创建一个 SSL 证书,并将其作为 secret 提供给 OpenShift 环境。

流程

  1. 生成名为 keystore.jks 的 SSL 密钥存储,该密钥存储带有用于 KIE Server 的 SSL 加密的私钥。有关如何创建带有自签名或购买 SSL 证书的密钥存储的更多信息,请参阅 生成 SSL 加密密钥和证书

    注意

    在生产环境中,生成与 AMQ 代理连接的预期 URL 匹配的有效签名证书。

  2. 记录证书的名称。Red Hat Process Automation Manager 配置中此名称的默认值为 jboss
  3. 记录密钥存储文件的密码。Red Hat Process Automation Manager 配置中此名称的默认值为 mykeystorepass
  4. 使用 oc 命令从新密钥存储文件中生成名为 broker-app-secret 的 secret:

    $ oc create secret generic broker-app-secret --from-file=keystore.jks

2.5. 为智能路由器创建 secret

为了提供 HTTPS 访问,智能路由器使用 SSL 证书。部署可以自动创建示例 secret。但是,在生产环境中,您必须为智能路由器创建一个 SSL 证书,并将其作为机密提供给 OpenShift 环境。

不要将证书和密钥存储用于智能路由器,与 KIE Server 或 Business Central 所使用的证书相同。

流程

  1. 生成名为 keystore.jks 的 SSL 密钥存储,该密钥存储带有用于 KIE Server 的 SSL 加密的私钥。有关如何创建带有自签名或购买 SSL 证书的密钥存储的更多信息,请参阅 生成 SSL 加密密钥和证书

    注意

    在生产环境中,生成与智能路由器预期 URL 匹配的有效签名证书。

  2. 记录证书的名称。Red Hat Process Automation Manager 配置中此名称的默认值为 jboss
  3. 记录密钥存储文件的密码。Red Hat Process Automation Manager 配置中此名称的默认值为 mykeystorepass
  4. 使用 oc 命令从新密钥存储文件中生成名为 smartrouter-app-secret 的 secret:

    $ oc create secret generic smartrouter-app-secret --from-file=keystore.jks

2.6. 为外部数据库构建自定义 KIE 服务器扩展镜像

如果要将外部数据库服务器用于 KIE 服务器,且数据库服务器不是 MySQL 或 PostgreSQL 服务器,您必须在部署您的环境前为这个服务器构建带有驱动程序的自定义 KIE 服务器扩展镜像。

完成此构建中的步骤,为以下任何数据库服务器提供驱动程序:

  • Microsoft SQL Server
  • IBM DB2
  • Oracle 数据库
  • sisu

另外,您可以使用这个流程为以下任何数据库服务器构建新版本驱动程序:

  • MySQL
  • MariaDB
  • PostgreSQL

有关数据库服务器支持的版本,请参阅 Red Hat Process Automation Manager 7 支持的配置

构建程序会创建一个可扩展现有 KIE Server 镜像的自定义扩展镜像。您必须将此自定义扩展镜像导入到 OpenShift 环境中,然后在 EXTENSIONS_IMAGE 参数中引用它。

先决条件

  • 使用 oc 命令登录到 OpenShift 环境。您的 OpenShift 用户必须具有 registry-viewer 角色。有关分配 registry-viewer 角色的更多信息,请参阅 OpenShift Container Platform 4.8 文档中的"Registry"章节中的"访问 registry"部分。
  • 对于 Oracle Database、IBM DB2 或 datacenter,您可以从数据库服务器供应商下载 JDBC 驱动程序。
  • 已安装以下所需的软件:

    • Docker:对于安装说明,请参阅 获取 Docker
    • CEKit 版本 3.11.0 或更高版本:有关安装说明,请参阅安装
    • 以下 CEKit 库和扩展:如需更多信息,请参阅 依赖项

      • Docker,由 python3-docker 软件包提供,或类似软件包
      • docker-squash,由 python3-docker-squash 软件包提供
      • 行为,由 python3-behave 软件包提供

流程

  1. 对于 IBM DB2,Oracle Database (或 datacenter)在本地目录中提供 JDBC 驱动程序 JAR 文件。
  2. 从红帽客户门户网站的 Software Downloads 页面下载 rhpam-7.12.0-openshift-templates.zip 产品提供的可交付文件。
  3. 解压文件,并通过命令行更改为解压缩文件的 templates/contrib/jdbc/cekit 目录。此目录包含自定义构建的源代码。
  4. 根据数据库服务器类型,输入以下命令之一:

    • 对于 Microsoft SQL Server:

      make mssql
    • 对于 MySQL:

      make mysql
    • 对于 PostgreSQL:

      make postgresql
    • 对于 MariaDB:

      make mariadb
    • 对于 IBM DB2:

      make db2 artifact=/tmp/db2jcc4.jar version=10.2

      在这个命令中,将 /tmp/db2jcc4.jar 替换为 IBM DB2 驱动程序的路径名称,将 10.2 替换为驱动程序的版本。

    • 对于 Oracle 数据库:

      make oracle artifact=/tmp/ojdbc7.jar version=7.0

      在此命令中,将 /tmp/ojdbc7.jar 替换为 Oracle Database 驱动程序的路径名称,将 7.0 替换为驱动程序的版本。

    • 对于 datacenter :

      make build sybase artifact=/tmp/jconn4-16.0_PL05.jar version=16.0_PL05

      在这个命令中,将 /tmp/jconn4-16.0_PL05.jar 替换为下载的 datacenter 驱动程序的路径名称,将 16.0_PL05 替换为驱动程序的版本。

      或者,如果您需要为 wlp 驱动程序更新驱动程序类或驱动程序 XA 类,您可以为这个命令设置 DRIVER_CLASSDRIVER_XA_CLASS 变量,例如:

      export DRIVER_CLASS=another.class.Sybase && make sybase artifact=/tmp/jconn4-16.0_PL05.jar version=16.0_PL05
  5. 输入以下命令列出本地可用的 Docker 镜像:

    docker images

    请注意所构建的镜像的名称,如 jboss-kie-db2-extension-openshift-image,以及镜像的 version 标签,如 11.1.4.4 (不是 latest 标签)。

  6. 直接访问 OpenShift 环境的注册表,并将镜像推送至注册表。根据您的用户权限,您可以将镜像推送(push)到 openshift 命名空间或项目命名空间中。有关访问 registry 和推送镜像的说明,请参阅 Red Hat OpenShift Container Platform 产品文档中 直接从集群访问 registry

2.7. 准备 Git hook

在编写环境中,您可以在 Business Central 中更改项目的源代码时,使用 Git hook 来执行自定义操作。Git hook 的典型用途是与上游存储库交互。

要启用 Git hook 以使用 SSH 身份验证与上游存储库交互,还必须提供一个 secret 密钥和已知主机文件来与存储库进行身份验证。

如果您不想配置 Git hook,请跳过这个过程。

流程

  1. 创建 Git hook 文件。具体步骤请查看 Git hook 参考文档

    注意

    Business Central 不支持 pre-commit 脚本。使用 post-commit 脚本。

  2. 使用文件创建配置映射(ConfigMap)或持久性卷。

    • 如果 Git hook 由一个或多个固定的脚本文件组成,请使用 oc 命令创建配置映射。例如:

      oc create configmap git-hooks --from-file=post-commit=post-commit
    • 如果 Git hook 由长文件组成,或者依赖于可执行或 JAR 文件等二进制文件,请使用持久性卷。您必须创建一个持久性卷,创建一个持久性卷声明,并将卷与声明相关联,并将文件传送到卷。

      有关持久性卷和持久性卷声明的说明,请参阅 Red Hat OpenShift Container Platform 文档中的存储。有关将文件复制到持久性卷的说明,请参阅 和容器中的 传输文件

  3. 如果 Git hook 脚本必须使用 SSH 身份验证与上游存储库交互,请为 secret 准备必要的文件:

    1. 使用与存储库中存储的公钥匹配的私钥准备 id_rsa 文件。
    2. 使用存储库的正确名称、地址和公钥准备 known_hosts 文件。
    3. 使用 oc 命令创建带有两个文件的 secret,例如:

      oc create secret git-hooks-secret --from-file=id_rsa=id_rsa --from-file=known_hosts=known_hosts
      注意

      当部署使用此 secret 时,它会将 id_rsaknown_hosts 文件挂载到 Business Central Pod 上的 /home/jboss/.ssh 目录中。

2.8. 使用 NFS 使用 ReadWriteMany 访问模式置备持久性卷

如果要部署 Business Central Monitoring 或高可用性 Business Central,您的环境必须使用 ReadWriteMany 访问模式配置持久性卷。

如果您的配置需要使用 ReadWriteMany 访问模式置备持久性卷,但您的环境不支持这样的置备,请使用 NFS 来置备卷。否则,请跳过这个过程。

流程

部署 NFS 服务器并使用 NFS 调配持久卷。有关使用 NFS 置备持久性卷的详情,请参考 OpenShift Container Platform Storage 指南中的"使用 NFS 持久性存储"部分。

2.9. 从 Business Central 中提取源代码,以便在 S2I 构建中使用

如果您计划使用 Source-to-image (S2I)过程创建不可变的 KIE 服务器,则必须在 Git 存储库中为您的服务提供源代码。如果您使用 Business Central 编写服务,您可以提取服务的源代码,并将其放在单独的 Git 存储库中,如 GitHub 或 GitLab 的内部安装,以便在 S2I 构建中使用。

如果您不打算使用 S2I 流程,或者您没有使用 Business Central 编写服务,请跳过此步骤。

流程

  1. 使用以下命令提取源代码:

    git clone https://<business-central-host>:443/git/<MySpace>/<MyProject>

    在这个命令中,替换以下变量:

    • < business-central-host > 带有运行 Business Central 的主机
    • <MySpace >,带有项目所在的 Business Central 空间的名称
    • <myproject >,使用项目名称
    注意

    要在 Business Central 中查看项目的完整 Git URL,请点击 MenuDesign → < MyProject>Settings

    注意

    如果您使用自签名证书进行 HTTPS 通信,命令可能会失败,并显示 SSL 证书问题 错误消息。在这种情况下,在 git 中禁用 SSL 证书验证,例如使用 GIT_SSL_NO_VERIFY 环境变量:

    env GIT_SSL_NO_VERIFY=true git clone https://<business-central-host>:443/git/<MySpace>/<MyProject>
  2. 将源代码上传到另一个 Git 存储库,如 GitHub 或 GitLab,用于 S2I 构建。

2.10. 准备在受限网络中部署

您可以在没有连接到公共互联网的受限网络中的红帽流程自动化管理器部署。有关受限网络中的 Operator 部署的说明,请参阅 Red Hat OpenShift Container Platform 文档中的在受限网络中使用 Operator Lifecycle Manager

重要

在 Red Hat Process Automation Manager 7.12 中,受限网络中的部署仅用于技术预览。有关红帽技术预览功能支持范围的更多信息,请参阅技术预览功能支持范围

要使用没有公共互联网访问的部署,还必须使用所有必要的工件镜像准备 Maven 存储库。有关创建此软件仓库的步骤,请参阅 第 2.11 节 “准备 Maven 镜像存储库以供离线使用”

2.11. 准备 Maven 镜像存储库以供离线使用

如果您的 Red Hat OpenShift Container Platform 环境没有公共互联网访问,则必须使用所有必要的工件镜像准备 Maven 存储库,并将此存储库提供给您的环境。

注意

如果您的 Red Hat OpenShift Container Platform 环境连接到互联网,则不需要完成这个步骤。

先决条件

  • 具有一个可以传出访问公共互联网的计算机。

流程

  1. 配置您具有写入访问权限的 Maven 发行版本存储库。存储库必须在不进行身份验证的情况下进行读取访问权限,并且您的 OpenShift 环境必须具有对此存储库的网络访问。

    您可以在 OpenShift 环境中部署 Nexus 存储库管理器。有关在 OpenShift 上设置 Nexus 的说明,请参阅 Red Hat OpenShift Container Platform 3.11 文档中的 设置 Nexus。本文档的步骤适用于 Red Hat OpenShift Container Platform 4。

    使用此存储库作为镜像来托管公开可用的 Maven 工件。您还可以在此存储库中提供自己的服务,以便在不可变服务器上部署这些服务,或使用 Business Central 监控将这些服务部署到受管服务器上。

  2. 在与公共互联网的传出连接的计算机上,完成以下步骤:
  3. 导航到红帽客户门户网站中的 Software Downloads 页面(需要登录),然后从下拉菜单中选择产品和版本:

    • 产品: Red Hat Process Automation Manager
    • Version: 7.12

      1. 下载并提取 Red Hat Process Automation Manager 7.12.0 Offliner 内容列表 (rhpam-7.12.0-offliner.zip)产品提供可交付的文件。
      2. rhpam-7.12.0-offliner.zip 文件的内容提取到任何目录中。
      3. 进入该目录并输入以下命令:

        ./offline-repo-builder.sh offliner.txt

        此命令会创建 存储库 子目录,并将所需的工件下载到此子目录中。这是镜像存储库。

        如果消息报告了一些下载失败,请再次运行相同的命令。如果下载再次失败,请联系红帽支持。

      4. 将所有工件 从存储库 子目录上传到您准备的 Maven 镜像存储库。您可以使用 Maven 存储库工具 Git 存储库中的 Maven Repository Provisioner 实用程序上传工件。
  4. 如果您在 Business Central 之外开发服务,并且有额外的依赖项,请将依赖项添加到镜像存储库。如果将服务作为 Maven 项目开发,您可以使用以下步骤自动准备这些依赖项。在与公共互联网传出连接的计算机上完成步骤。

    1. 创建本地 Maven 缓存目录(~/.m2/repository)的备份,然后清除该目录。
    2. 使用 mvn clean install 命令构建项目源。
    3. 对于每个项目,输入以下命令来确保 Maven 下载项目生成的所有工件的所有运行时依赖项:

      mvn -e -DskipTests dependency:go-offline -f /path/to/project/pom.xml --batch-mode -Djava.net.preferIPv4Stack=true

      /path/to/project/pom.xml 替换为项目的 pom.xml 文件的路径。

    4. 将本地 Maven 缓存目录(~/.m2/repository)中的所有工件上传到您准备的 Maven 镜像存储库。您可以使用 Maven 存储库工具 Git 存储库中的 Maven Repository Provisioner 实用程序上传工件。

第 3 章 使用 OpenShift operator 部署和管理 Red Hat Process Automation Manager 环境

要部署 Red Hat Process Automation Manager 环境,OpenShift operator 使用描述环境的 YAML 源。Red Hat Process Automation Manager 提供了一个安装程序,可用于组成 YAML 源并部署环境。

当业务自动化操作员部署环境时,它会创建一个环境的 YAML 描述,然后确保环境始终与描述一致。您可以编辑描述来修改环境。

您可以通过删除 Red Hat OpenShift Container Platform 中的 Operator 应用程序来删除环境。

注意

当您删除带有高可用性 Business Central 的环境时,操作员不会删除作为 JBoss Datagrid 和 JBoss AMQ StatefulSet 创建一部分创建的持久性卷声明。这个行为是 Kubernetes 设计的一部分,因为删除持久性卷声明可能会导致数据丢失。有关在删除 StatefulSet 过程中处理持久性卷的更多信息,请参阅 Kubernetes 文档

如果您使用同一命名空间和相同应用程序名称创建新环境,则环境会重复使用持久性卷以提高性能。

为确保新部署不使用任何旧数据,您可以手动删除持久性卷声明。

3.1. 订阅业务 Automation operator

为了能够使用操作器部署红帽流程自动化管理器,您必须在 OpenShift 中订阅 Business Automation operator。

流程

  1. 在 OpenShift Web 集群控制台中输入项目。
  2. 在 OpenShift Web 控制台导航面板中,选择 Catalog → OperatorHubOperators → OperatorHub
  3. 搜索 Business Automation,选择它并点 Install
  4. Create Operator Subscription 页面中,选择目标命名空间和批准策略。

    可选:将 批准策略 设置为 Automatic 以启用自动 Operator 更新。operator 更新不会立即更新产品,但在更新产品前是必需的。使用每个特定产品部署中的设置配置自动或手动产品更新。

  5. 点击 Subscribe 创建订阅。

3.2. 使用 Operator 部署 Red Hat Process Automation Manager 环境

订阅 Business Automation operator 后,您可以使用安装程序向导来配置和部署红帽流程自动化管理器环境。

重要

在 Red Hat Process Automation Manager 7.12 中,Operator 安装程序向导仅用于技术预览。有关红帽技术预览功能支持范围的更多信息,请参阅技术预览功能支持范围

3.2.1. 使用 Business Automation operator 启动 Red Hat Process Automation Manager 环境部署

要使用 Business Automation operator 开始部署 Red Hat Process Automation Manager 环境,请访问安装程序向导。订阅 Operator 时,会部署安装程序向导。

先决条件

流程

  1. 在 Red Hat OpenShift Container Platform Web 集群控制台菜单中,选择 Catalog → Installed operatorsOperators → Installed operator
  2. 点包含 businessautomation 的 operator 名称。此时会显示有关此 Operator 的信息。
  3. 点击位于窗口右侧的 安装程序 链接。
  4. 若有提示,使用 OpenShift 凭据登录。

结果

此时会显示向导的 Installation 选项卡。

3.2.2. 设置环境的基本配置

开始使用 Business Automation operator 部署 Red Hat Process Automation Manager 环境后,您必须选择环境的类型并设置其他基本配置。

先决条件

流程

  1. Application Name 字段中输入 OpenShift 应用的名称。此名称用于所有组件的默认 URL。
  2. Environment 列表中,选择环境的类型。这个类型决定了默认配置;您可以根据需要修改此配置。以下类型可用于 Red Hat Process Automation Manager:

    • RHPAM-trial :您可以快速设置的试用环境,用于评估或演示开发和运行资产。包括 Business Central 和 KIE 服务器.此环境不使用任何持久性存储,并且您在环境中所做的任何工作都不会保存。
    • RHPAM- authoring:使用 Business Central 创建和修改服务的环境.它由为编写工作和 KIE 服务器提供 Business Central 的 pod 组成,用于测试服务的执行。
    • RHPAM-authoring-ha :使用 Business Central 创建和修改服务的环境。它由为编写工作和 KIE 服务器提供 Business Central 的 pod 组成,用于测试服务的执行。此编写环境版本支持扩展 Business Central pod,以确保高可用性。

      重要

      在 Red Hat Process Automation Manager 7.12 中,使用操作器的高可用性 Business Central 功能部署仅用于技术预览。有关红帽技术预览功能支持范围的更多信息,请参阅技术预览功能支持范围。对于完全支持的高可用性部署,在 Red Hat OpenShift Container Platform 版本 3.11 中使用高可用性的编写模板。有关部署此模板的步骤,请参阅 第 II 部分 “使用模板在 Red Hat OpenShift Container Platform 3 上部署 Red Hat Process Automation Manager 环境”

    • RHPAM-production :用于运行现有服务以进行临时和生产目的的环境。此环境包括 Business Central Monitoring、智能路由器和两个 KIE 服务器 pod 组。您可以在每一个这样的组上部署和取消部署服务,并根据需要扩展组。使用 Business Central Monitoring 部署、运行和停止服务并监控其执行。
    • RHPAM-production-immutable :用于运行现有服务的替代环境,用于暂存和生产目的。您可以配置一个或多个 KIE Server pod,从源构建服务,或者从 Maven 存储库拉取服务。然后,您可以根据需要复制每个 pod。

      您无法从 pod 中删除任何服务,或将任何新服务添加到 pod。如果要使用服务的另一个版本,或者以任何其他方式修改配置,请部署新的服务器镜像来替换旧服务器镜像。您可以使用任何基于容器的集成工作流来管理 pod。

      配置此环境时,在 KIE Servers 选项卡中,您必须自定义 KIE Server,再单击 Set immutable 服务器配置 按钮,或者设置 KIE_SERVER_CONTAINER_DEPLOYMENT 环境变量。有关配置 KIE 服务器的步骤,请参考 第 3.2.5 节 “设置环境的自定义 KIE 服务器配置”

      另外,您还可以使用 Console 选项卡在此环境中包含 Business Central Monitoring 来监控、停止和重新启动进程服务的执行。有关配置 Business Central Monitoring 的步骤,请参考 第 3.2.4 节 “设置环境的 Business Central 配置”

  3. 如果要启用自动升级到新版本,请选择 Enable Upgrades 复选框。如果选中此框,则在有新的 Red Hat Process Automation Manager 7.12 补丁版本可用时,Operator 会自动将部署升级到此版本。所有服务都会保留,并通常会在升级过程中保留。

    当有新的 Red Hat Process Automation Manager 7.x 次版本可用时,还要启用相同的自动升级过程,请选择 Include 次版本升级 框。

    注意

    如果要对 Red Hat Process Automation Manager 的任何组件使用自定义镜像,则禁用自动更新。

  4. 如果要使用镜像标签下载镜像,请选择 Use Image Tags 复选框。如果您使用自定义 registry,或者由红帽支持指示,则此设置很有用。
  5. 如果要禁用到部署的 SSL 连接,请选择 Disable SSL Routes 复选框。在这种情况下,外部公开的所有路由都使用明文(HTTP)连接。

    注意

    如果没有选择此框,则只有安全(HTTPS)路由会在外部公开。

  6. 如果要使用自定义镜像 registry,在 Custom registry 下,在 Image registry 字段中输入 registry 的 URL。如果此 registry 没有正确签名和可识别的 SSL 证书,请选择 Insecure 框。

    注意

    要使用自定义 registry 中的特定镜像,请在 ConsoleKIE Server 选项卡中设置镜像上下文、名称和标签。

  7. Admin user 下,在 UsernamePassword 字段中输入 Red Hat Process Automation Manager 的管理用户的用户名和密码。

    重要

    如果使用 RH-SSO 或 LDAP 身份验证,则必须在使用 Red Hat Process Automation Manager 的 kie-server,rest-all,admin 角色在身份验证系统中配置相同的用户。

  8. 可选:选择启动策略。OpenShiftStartupStrategy 设置默认为启用。

    在某些编写环境中,您可能需要确保多个用户可以同时在同一 KIE 服务器上部署服务。默认情况下,在使用 Business Central 将服务部署到 KIE 服务器后,用户必须等待几秒钟才能部署更多服务。OpenShiftStartupStrategy 设置默认为启用,并导致这个限制。要删除限制,请从 Startup Strategy 列表中选择 ControllerBasedStartupStrategy 设置。

    注意

    不要在具有高可用性的 Business Central 的环境中启用基于控制器的启动策略。

  9. 可选: 如果要使用 OpenShift CA 捆绑包作为 HTTPS 通信的信任存储,请选择 Use OpenShift CA Bundle 复选框。

后续步骤

如果要使用默认配置部署环境,请单击 Finish,然后单击 Deploy 以部署环境。否则,继续设置其他配置参数。

3.2.3. 设置环境的安全配置

使用 Business Automation operator 设置 Red Hat Process Automation Manager 环境的基本配置后,您可以选择为环境配置身份验证(安全)设置。

先决条件

  • 根据 第 3.2.2 节 “设置环境的基本配置” 中的说明,您使用安装程序向导中的 Business Automation operator 完成 Red Hat Process Automation Manager 环境的基本配置。
  • 如果要使用 RH-SSO 或 LDAP 进行身份验证,您可以在身份验证系统中使用正确的角色。您必须至少创建一个管理用户(如 adminUser),使用 kie-server,rest-all,admin 角色。此用户必须具有您在 Installation 选项卡中配置的用户名和密码。
  • 如果要使用 RH-SSO 身份验证,您可以在 RH-SSO 系统中为环境的所有组件创建客户端,指定正确的 URL。此操作可确保最大控制。另外,部署也可以创建客户端。

流程

  1. 如果打开了 Installation 选项卡,点 Next 查看 Security 选项卡。
  2. Authentication mode 列表中,选择以下模式之一:

    • 内部 :您可以在部署环境时配置初始管理用户。您可以创建一个 post-configuration 脚本来在 Elytron 安全子系统中添加用户。有关创建安装后脚本的步骤,请参考 第 3.4 节 “提供 Elytron 用户配置或其他安装后设置”
    • RH-SSO :红帽流程自动化管理器使用红帽单点登录进行身份验证。
    • LDAP :红帽流程自动化管理器使用 LDAP 进行身份验证
  3. 根据您选择的 Authentication 模式 完成安全配置。

    如果选择了 RH-SSO,请配置 RH-SSO 身份验证:

    1. RH-SSO URL 字段中,输入 RH-SSO URL。
    2. Realm 字段中,输入 RH-SSO 域名。
    3. 如果没有为环境组件创建 RH-SSO 客户端,请在 SSO admin 用户和 SSO admin 密码字段中输入 RH-SSO 系统 的管理员用户 凭据。
    4. 如果您的 RH-SSO 系统没有正确的签名 SSL 证书,请选择 Disable SSL certificate validation 复选框。
    5. 如果要更改用于用户名的 RH-SSO 主体属性,在 Principal 属性 字段中输入新属性的名称。

    如果选择了 LDAP,请配置 LDAP 身份验证:

    1. LDAP URL 字段中,输入 LDAP URL。
    2. 设置 LDAP 参数。这些参数使用红帽 JBoss EAP 的 Elytron 子系统配置 LDAP 身份验证。有关在 LDAP 中使用 Red Hat JBoss EAP 的 Elytron 子系统的更多信息,请参阅使用 基于 LDAP 的身份存储配置身份验证

      注意

      如果要启用 LDAP 故障转移,您可以在 AUTH_LDAP_URL 参数中设置两个或多个 LDAP 服务器地址,用空格分隔。

  4. 如果选择了 RH-SSOLDAP,如果您的 RH-SSO 或 LDAP 系统没有定义部署所需的所有角色,您可以将身份验证系统角色映射到 Red Hat Process Automation Manager 角色。

    要启用角色映射,您必须以单一配置字符串或角色映射形式提供角色映射。如果使用文件进行角色映射配置,则必须在项目命名空间中的 OpenShift 配置映射或机密对象中提供该文件。

    字符串必须使用 role=role1,role2;another-role=role2 模式,如 admins=kie-server,rest-all,admin;developers=kie-server,rest-all

    该文件必须包含以下格式的条目:

    ldap_role=product_role1, product_role2...

    例如:

    admins=kie-server,rest-all,admin

    要启用这个字符串或文件,请进行以下更改:

    1. RoleMapper 下,在 Roles properties file 字段中输入角色配置字符串或角色映射配置文件的完全限定路径名称,如 /opt/eap/standalone/configuration/rolemapping/rolemapping.properties
    2. 可选: 选择 Roles keep mapped 框或 Roles 保留非映射 框。如果您定义角色映射,默认情况下,只有映射中定义的角色可用。如果要保留身份验证系统中定义的原始角色,并且映射映射到其他角色,请选择 Roles keep mapped 框。如果要保留身份验证系统中定义的原始角色,且未在映射中提及,请选择 角色会保留非映射 框。
    3. 如果使用角色配置文件,请在 RoleMapper Configuration 对象 下配置字段:

      • Kind 标签下,选择提供文件的对象类型(ConfigMapSecret)。
      • Name 字段中输入对象名称。此对象自动挂载到您为角色映射配置文件指定的路径中的 Business Central 和 KIE Server pod。
  5. 如果需要,配置其他密码:

后续步骤

如果要使用所有组件的默认配置部署环境,请单击 Finish,然后单击 Deploy 以部署环境。否则,请继续为 Business Central、KIE 服务器和智能路由器设置配置参数。

3.2.4. 设置环境的 Business Central 配置

使用 Business Automation operator 设置 Red Hat Process Automation Manager 环境的基本和安全配置后,您可以选择为环境中的 Business Central 或 Business Central Monitoring 组件配置设置。

rhpam-production-immutable 外的所有环境类型都包括此组件。

默认情况下,rhpam-production-immutable 环境不包括 Business Central Monitoring。要在此环境中包括 Business Central Monitoring Monitoring,您必须在 Replicas 字段中设置 Business Central Monitoring pod 的副本数,或对 Business Central 配置字段进行任何其他更改。

先决条件

流程

  1. 如果打开了 InstallationSecurity 选项卡,请单击 Next,直到您查看 Console 选项卡。
  2. 如果您根据 第 2.3 节 “为 Business Central 创建 secret” 中的说明为 Business Central 创建 secret,请在 Keystore secret 字段中输入 secret 的名称。
  3. 可选: 如果要为 Business Central 部署使用自定义镜像,请完成以下步骤:

    1. Installation 选项卡中设置自定义 registry。如果没有设置自定义 registry,安装会使用默认的 Red Hat registry。有关设置自定义 registry 值的更多信息,请参阅 第 3.2.2 节 “设置环境的基本配置”
    2. Console 选项卡中,设置以下字段:

      • 镜像上下文 :注册表中镜像的上下文。
      • Image :镜像的名称。
      • 镜像标签 :镜像标签。如果没有设置此字段,安装将使用 latest 标签。

        例如,如果镜像的完整地址为 registry.example.com/mycontext/mycentral:1.0-SNAPSHOT,将自定义 registry 设置为 registry.example.comImage context 字段设为 mycontextImage 字段为 mycentralImage tag 字段为 1.0-SPSHOT

  4. 可选: 要为外部路由设置自定义主机名,请在 Business Central 外部 Route 字段中输入要使用的域,如下例所示:

    `businesscentral.example.com`
    注意

    自定义主机名必须有效并可解析。

    要更改自定义主机名,您可以修改 routeHostname 属性。

  5. 可选:配置 Git hook。

    在编写环境中,您可以使用 Git hook 来简化 Business Central 的内部 Git 存储库和外部 Git 存储库之间的交互。如果要使用 Git hook,您必须在项目命名空间中的 OpenShift 配置映射、secret 或持久性卷声明对象中准备 Git hook 目录。您还可以使用 SSH 密钥和已知主机文件准备 secret,以进行 Git SSH 身份验证。有关准备 Git hook 的说明,请参阅 第 2.7 节 “准备 Git hook”

    要使用 Git hook 目录,请进行以下更改:

    1. GitHooks 下,在 Mount path 字段中输入该目录的完全限定路径,例如 /opt/kie/data/git/hooks
    2. GitHooks Configuration 对象 下的字段 中,选择提供文件(ConfigMapSecretPersistentVolumeClaim)的对象 Kind,并输入对象的 Name。此对象自动挂载到您为 Git hook 目录指定的路径中的 Business Central pod。
    3. 可选:在 SSH secret 字段中,使用 SSH 密钥和已知主机文件输入 secret 的名称。
  6. 可选:在 Replicas 字段中输入 Business Central 监控的副本数。不要在 rhpam-authoring 环境中更改这个数字。
  7. 可选: 要在 Console 组件 页面中设置 Business Central 持久性卷大小 pvSize,请在 Persistent Volume Size 字段中输入所需的大小。对于 Business Central,默认大小为 1Gi,用于 Business Central Monitoring ( Business Central Monitoring)为 64Mb。
  8. 可选:在 资源配额 下的字段中输入请求和最大 CPU 和内存限值。
  9. 如果要在 Business Central pod 上自定义 Java 虚拟机的配置,请选择 Enable JVM 配置 框,然后在 Enable JVM 配置 下的任意字段中输入信息。所有字段都是可选的。有关您可以配置的 JVM 参数,请参阅 第 3.5 节 “JVM 配置参数”
  10. 如果您选择了 RH-SSO 身份验证,请为 Business Central 配置 RH-SSO:

    1. Client name 字段中输入客户端名称,在 Client secret 字段中输入 client secret。如果具有此名称的客户端不存在,部署将尝试使用此名称和 secret 创建新客户端。
    2. 如果部署要创建新客户端,请输入 HTTP 和 HTTPS URL,它们将用于访问 Business Central 到 SSO HTTP URLSSO HTTPS URL 字段。此信息记录在客户端中。
  11. 可选: 如果要配置高可用性环境,请在 DataGrid username 和 DataGrid 密码字段中为 DataGrid 组件设置 用户名和密码。默认情况下,用户名是 infinispan,密码会自动生成。
  12. 可选: 根据您的需要,设置环境变量。要设置环境变量,请单击 Add new Environment 变量,然后在 NameValue 字段中输入变量的名称和值。

    • rhpam-productionrhpam-production-immutable 环境中,如果您希望 Business Central Monitoring 在不使用文件系统的简单模式下运行,请将 ORG_APPFORMER_SIMPLIFIED_MONITORING_ENABLED 设置为 true

      在简化的模式中,Business Central Monitoring 不需要持久性卷声明。您可以在不支持 ReadWriteMany 访问持久性存储的环境中使用此模式。您不能在简化的模式中使用 Business Central Monitoring 来设计自定义仪表板。

    • 可选:如果要配置代理设置,请使用以下环境变量:

      • HTTPS_ PROXY : https 代理的位置。这优先于 HTTPS_PROXYhttp_proxyHTTP_PROXY,用于 Maven 构建和 Java 运行时。例如: myuser:mypass@127.0.0.1:8080.
      • HTTPS_PROXY : https 代理的位置。这优先于 http_proxyHTTP_PROXY,用于 Maven 构建和 Java 运行时。例如: myuser@127.0.0.1:8080.
      • HTTP_ PROXY :http 代理的位置。这优先于 HTTP_PROXY,用于 Maven 构建和 Java 运行时。例如: http://127.0.0.1:8080
      • HTTP_PROXY :http 代理的位置。这同时用于 Maven 构建和 Java 运行时。例如: 127.0.0.1:8080.
      • NO_ PROXY :可以直接访问的以逗号分隔的主机、IP 地址或域的列表。这优先于 NO_PROXY,用于 Maven 构建和 Java 运行时。例如:*.example.com
      • NO_PROXY :可以直接访问的以逗号分隔的主机、IP 地址或域的列表。这同时用于 Maven 构建和 Java 运行时。例如: foo.example.com,bar.example.com
    • 如果要使用外部 Maven 存储库,请设置以下变量:

      • MAVEN_REPO_URL: Maven 存储库的 URL
      • MAVEN_REPO_ID: Maven 存储库的标识符,如 repo-custom
      • MAVEN_REPO_USERNAME: Maven 存储库的用户名
      • MAVEN_REPO_PASSWORD 用于 Maven 存储库的密码

        重要

        在编写环境中,如果您希望 Business Central 将项目推送到外部 Maven 存储库,您必须在部署期间配置此存储库,并且配置每个项目中的存储库。有关将 Business Central 项目导出到外部 Maven 存储库的详情,请参考 打包和部署红帽流程自动化管理器项目

    • 如果您的 OpenShift 环境没有连接到公共互联网,请配置对根据 第 2.11 节 “准备 Maven 镜像存储库以供离线使用” 设置的 Maven 镜像的访问。设置以下变量:

      • MAVEN_MIRROR_URL: 您在 第 2.11 节 “准备 Maven 镜像存储库以供离线使用” 中设置的 Maven 镜像存储库的 URL。此 URL 必须从 OpenShift 环境中的容器集访问。
      • MAVEN_MIRROR_OF :决定可以从镜像检索哪些工件的值。有关设置 mirrorOf 值的说明,请参阅 Apache Maven 文档中的 Mirror Settings。默认值为 external:*。使用此值,Maven 从镜像检索每个所需的工件,且不会查询任何其他存储库。

        如果您配置外部 Maven 存储库(MAVEN_REPO_URL),请更改 MAVEN_MIRROR_OF,以从镜像中排除此仓库中的工件,如 external:*,!repo-custom。将 repo-custom 替换为您在 MAVEN_REPO_ID 中配置的 ID。

        如果您的编写环境使用内置的 Business Central Maven 存储库,请更改 MAVEN_MIRROR_OF,将该存储库中的工件从镜像中排除: external:*,!repo-rhpamcentr

    • 在某些情况下,您可能想要为 Business Central 持久保留 Maven 存储库缓存。默认情况下,缓存不会被保留,因此在重启或扩展 Business Central pod 时,所有 Maven 工件都会再次下载,且 Business Central 中的所有项目都必须再次构建。如果您为缓存启用持久性,则不需要下载,在某些情况下可以改进启动时间。但是,需要具有 Business Central persistence 卷上的大量额外空间。

      要为 Maven 存储库缓存启用持久性,请将 KIE_PERSIST_MAVEN_REPO 环境变量设置为 true

      如果将 KIE_PERSIST_MAVEN_REPO 设置为 true,您可以选择使用 KIE_M2_REPO_DIR 变量为缓存设置自定义路径。默认路径为 /opt/kie/data/m2/opt/kie/data 目录树中的文件是永久的。

后续步骤

如果要使用默认配置 KIE 服务器(没有 Smart Router)部署环境,且没有进程实例迁移,请单击 Finish,然后点 Deploy 来部署环境。否则,请继续为 KIE 服务器和智能路由器设置配置参数。

3.2.5. 设置环境的自定义 KIE 服务器配置

默认情况下,业务自动化运算符中的每种环境类型包括一个或多个 KIE 服务器。

另外,您可以为 KIE 服务器设置自定义配置。在这种情况下,不会创建默认的 KIE 服务器,且只部署您配置的 KIE 服务器。

先决条件

流程

  1. 如果打开了 安装安全控制台选项卡,请单击 Next,直到您查看 KIE Servers 选项卡。
  2. 单击 Add new KIE Server 以添加新的 KIE 服务器配置。
  3. Id 字段中输入此 KIE 服务器实例的标识符。如果 KIE 服务器实例连接到 Business Central 或 Business Central Monitoring 实例,该标识符决定服务器加入的服务器组。
  4. Name 字段中输入 KIE Server 的名称。
  5. Deployments 字段中,输入要部署的类似 KIE Servers 的数量。安装程序可以使用相同的配置部署多个 KIE 服务器。KIE 服务器的标识符和名称会自动修改,并保持唯一性。
  6. 如果您根据 第 2.2 节 “为 KIE 服务器创建 secret” 中的说明为 KIE Server 创建 secret,请在 Keystore secret 字段中输入 secret 的名称。
  7. 可选:在 Replicas 字段中输入 KIE 服务器部署的副本数量。
  8. 可选: 要为外部路由设置自定义主机名,请在 KIE Server external Route 字段中输入自定义主机名中使用的 域,如下例所示:

    `kieserver.example.com`
    注意

    自定义主机名必须有效并可解析。

    要更改自定义主机名,您可以修改 routeHostname 属性。

  9. 可选: 如果要使用自定义 KIE 服务器镜像,请完成以下步骤:

    1. 单击 Set KIE Server 镜像
    2. Kind 类别中,选择 ImageStreamTag(如果要从 OpenShift 镜像流中拉取镜像),或者选择 DockerImage (如果要从任何 Docker registry 拉取镜像)。

      注意

      要使用 DockerImage kind,您必须使用 Red Hat Process Automation Manager 版本 7.12.1 或更高版本。

    3. 通过完成以下步骤之一设置镜像名称:

      • 如果选择了 ImageStreamTag kind,请在 Name 字段中输入镜像的镜像流标签名称,如 my-custom-is-tag:1.0

        如果环境中不存在对应的镜像流,Operator 会使用默认的 Red Hat registry 和标签创建此镜像流。如果在 Installation 选项卡中配置了自定义 registry,Operator 会使用此 registry 创建镜像流。

      • 如果选择了 DockerImage kind,请在 Name 字段中输入镜像的完全限定域名,如 registry.io/test/testing:1.0

        您可以从环境可访问的任何 registry 配置镜像。

    4. 如果要使用不在 openshift 命名空间中的镜像流,在 Namespace 字段中输入命名空间。

      有关创建自定义镜像的步骤,请参阅 第 3.6 节 “为 KIE 服务器和智能路由器创建自定义镜像”

  10. 可选:如果要使用 Source to Image (S2I)构建来配置不可变 KIE 服务器,请完成以下步骤:

    重要

    如果要配置一个从 Maven 存储库拉取服务的不可变 KIE 服务器,请不要点击 Set Immutable 服务器配置,且不完成这些步骤。相反,设置 KIE_SERVER_CONTAINER_DEPLOYMENT 环境变量。

    1. Set Immutable server configuration
    2. KIE Server 容器部署字段中,输入部署 必须从 Source 到 Image (S2I)构建的结果中提取的服务(KJAR 文件)的识别信息。格式为 <containerId>=<groupId>:<artifactId>:<version>,或如果您要为容器设置一个别名,则为<containerId>(<aliasId>)=<groupId>:<artifactId>:<version>。您可以使用 | 分隔符提供两个或多个 KJAR 文件,如下例所示: containerId=groupId:artifactId:version|c2 (alias2)=g2:a2:v2
    3. 如果您的 OpenShift 环境没有与公共互联网的连接,请在 Maven mirror URL 字段中输入您设置为 第 2.11 节 “准备 Maven 镜像存储库以供离线使用”Maven 镜像的 URL
    4. Artifact 目录 字段中,在 Maven 构建成功后,输入包含所需二进制文件(KJAR 文件和任何其他必要文件)的项目内的路径。通常,此目录是构建的目标目录。但是,您可以在 Git 存储库中的这个目录中提供预构建二进制文件。
    5. 如果要将自定义基础 KIE Server 镜像用于 S2I 构建,请单击 Set Base build image,然后在 Name 字段中输入镜像流的名称。如果镜像流不在 openshift 命名空间中,在 Namespace 字段中输入命名空间。如果要使用 Docker 镜像名称而不是 OpenShift 镜像流标签,请将 Kind 值改为 DockerImage
    6. Set Git source,在以下字段中输入信息:

      • S2I Git URI :包含服务源的 Git 存储库的 URI。
      • 参考 :Git 存储库中的分支。
      • 上下文目录 :(可选)从 Git 存储库下载的项目中源的路径。默认情况下,下载的项目的根目录是源目录。

        注意

        如果没有配置 Git 源,则不可变 KIE 服务器不使用 S2I 构建。相反,它会从配置的 Maven 存储库拉取您在 KIE Server 容器部署 字段中定义的工件。

    7. 如果您使用 S2I,并希望设置 Git Webhook,以便 Git 存储库中的更改会导致自动重建 KIE 服务器,点 Add new Webhook。然后在 Type 字段中选择 Webhook 类型,然后在 Secret 字段中输入 Webhook 的 secret 字符串。
    8. 如果要为 S2I 构建设置构建环境变量,请单击 Add new Build Config Environment 变量,然后在 NameValue 字段中输入变量的名称和值。
  11. 可选:在 资源配额 下的字段中输入请求和最大 CPU 和内存限值。如果您要配置多个 KIE 服务器,则限制会单独应用于每台服务器。
  12. 如果选择了 RH-SSO 身份验证,请为 KIE 服务器配置 RH-SSO:

    1. Client name 字段中输入客户端名称,在 Client secret 字段中输入 client secret。如果具有此名称的客户端不存在,部署将尝试使用此名称和 secret 创建新客户端。
    2. 如果部署要创建新客户端,请输入将用于访问此 KIE 服务器实例的 HTTP 和 HTTPS URL 进入 SSO HTTP URLSSO HTTPS URL 字段。此信息记录在客户端中。
  13. 如果要使用外部 AMQ 消息代理通过 JMS API 与 KIE 服务器交互,请启用 Enable JMS Integration 设置。此时会显示用于配置 JMS Integration 的其他字段,您必须根据需要输入值:

    • User name, Password: 如果您的环境需要在代理中进行身份验证,标志代理用户的用户名和密码。
    • executor :选择此设置来禁用 JMS executor。默认情况下启用 executor。
    • 执行程序处理器 :选择此设置以在 executor 队列中启用 JMS 事务。
    • 启用信号 :选择此设置,以启用通过 JMS 进行信号配置。
    • 启用审计 :选择此设置,以启用通过 JMS 进行审计日志记录。
    • 审计转换 :选择此设置,以在审计队列上启用 JMS 事务。
    • Queue executor队列请求队列响应队列信号队列审计 :要使用的队列的自定义 JNDI 名称。如果设置了任何这些值,还必须设置 AMQ 队列 参数。
    • AMQ Queues :AMQ 队列名称,用逗号分开。这些队列会在代理启动时自动创建,并可作为 JBoss EAP 服务器中的 JNDI 资源访问。如果使用任何自定义队列名称,则必须在此字段中输入服务器使用的所有队列的名称。
    • 启用 SSL 集成 :如果要使用到 AMQ 代理的 SSL 连接,请选择此设置。在这种情况下,您必须提供您在 第 2.4 节 “为 AMQ 代理连接创建 secret” 中创建的 secret 名称,以及用于 secret 的密钥存储和信任存储的名称。
  14. 如果要在 KIE Server pod 上自定义 Java 虚拟机的配置,请选择 Enable JVM 配置 框,然后在 Enable JVM 配置 下的任何字段中输入信息。所有字段都是可选的。有关您可以配置的 JVM 参数,请参阅 第 3.5 节 “JVM 配置参数”
  15. Database type 字段中,选择 KIE Server 必须使用的数据库。可用的值如下:

    • MySQL :在独立 pod 中创建的 MySQL 服务器。
    • PostgreSQL :在独立 pod 中创建的 PostgreSQL 服务器。除非有特定原因使用任何其他设置,否则请使用此设置。
    • h2 :不需要单独 pod 的内置 h2 数据库引擎。如果使用此设置,请不要扩展 KIE Server pod。
    • 外部 :外部数据库服务器。
  16. 如果您选择了除 外部 之外的任何数据库,则会创建一个持久性卷声明来存储数据库。另外,还可为持久性卷设置配置参数:

    • Size 字段中输入持久性卷的大小。
    • StorageClass name 字段中,为持久性卷输入存储类名称。
  17. 可选:如果您选择了 外部数据库,请配置 KIE Server 扩展镜像。如果要使用除 PostgreSQL、MySQL 或 MariaDB 以外的任何数据库服务器,您必须根据 第 2.6 节 “为外部数据库构建自定义 KIE 服务器扩展镜像” 中的说明为数据库服务器驱动程序提供一个 KIE Server 扩展镜像。要将 KIE 服务器配置为使用此扩展镜像,请进行以下更改:

    1. 选择 Enable extension 镜像流 框。
    2. Extension 镜像流标签 字段中,输入您创建的镜像的 ImageStreamTag 定义,例如 jboss-kie-db2-extension-openshift-image:11.1.4.4
    3. 可选: 在 Extension image stream namespace 字段中,输入您将镜像推送到的命名空间。如果没有在此字段中输入任何值,Operator 预期镜像位于 openshift 命名空间中。
    4. 可选: 在 Extension image install directory 字段中,输入扩展所在 extensions 镜像中的目录。如果您使用 第 2.6 节 “为外部数据库构建自定义 KIE 服务器扩展镜像” 中的步骤构建镜像,请不要为此字段输入任何值。
  18. 如果您选择了一个外部数据库服务器,请在附加字段中提供以下信息:

    1. driver :输入数据库服务器驱动程序,具体取决于服务器类型:

      • mysql
      • postgresql
      • mariadb
      • mssql
      • db2
      • oracle
      • sisu
    2. Dialect :根据服务器类型,为服务器输入 Hibernate 空间。常见设置有:

      • org.hibernate.dialect.MySQL5InnoDBDialect
      • org.hibernate.dialect.MySQL8Dialect
      • org.hibernate.dialect.MariaDB102Dialect
      • org.hibernate.dialect.PostgreSQL95Dialect
      • org.hibernate.dialect.PostgresPlusDialect (用于 EntrepriseDB Postgres Advanced Server)
      • org.hibernate.dialect.SQLServer2012Dialect (用于 MS SQL)
      • org.hibernate.dialect.DB2Dialect
      • org.hibernate.dialect.Oracle10gDialect
      • org.hibernate.dialect.SybaseASE15Dialect

        有关支持的 dialects 列表,请参阅 Red Hat JBoss EAP 文档中的 Hibernate 属性中的 Hibernate SQL Dialects 表。

    3. 主机 :输入外部数据库服务器的主机名。
    4. 端口 :输入外部数据库服务器的端口号。
    5. JDBC URL :输入外部数据库服务器的 JDBC URL。

      注意

      如果您使用 EntrepriseDB Postgres 数据库服务器,请使用以 jdbc:postgresql:// 开头的 URL,而不使用 jdbc:edb://。或者,不要设置 URL,而是设置主机和端口参数。

    6. NonXA :如果您要在非 XA 模式中配置数据源,请选择此框。
    7. JNDI name :输入应用用于数据源的 JNDI 名称。
    8. 用户名和密码 输入外部数据库服务器的用户名和密码。
    9. 后台验证 :(可选)选择此框来启用后台 SQL 验证,并输入后台验证间隔。
    10. 可选:为数据库服务器设置最小和最大连接池大小、有效连接检查器类和异常分类器类。
  19. 如果您使用 MySQL 版本 8 外部数据库服务器,请启用 mysql_native_password 插件并使用它来进行身份验证。有关此插件的说明,请参阅 MySQL 8.0 Reference Manual 中的 原生可插拔身份验证

    如果您在 Red Hat OpenShift Container Platform 上使用红帽提供的 MySQL 版本 8 镜像来启用该插件,请将 MYSQL_DEFAULT_AUTHENTICATION_PLUGIN 环境变量设置为 mysql_native_password

    如果在启用 mysql_native_password 插件前在 MySQL 版本 8 服务器上创建用户,则必须在启用插件后更新 mysql-user 表。

  20. 可选:如果要配置代理设置,请使用以下环境变量:

    • HTTPS_ PROXY : https 代理的位置。这优先于 HTTPS_PROXYhttp_proxyHTTP_PROXY,用于 Maven 构建和 Java 运行时。例如: myuser:mypass@127.0.0.1:8080.
    • HTTPS_PROXY : https 代理的位置。这优先于 http_proxyHTTP_PROXY,用于 Maven 构建和 Java 运行时。例如: myuser@127.0.0.1:8080.
    • HTTP_ PROXY :http 代理的位置。这优先于 HTTP_PROXY,用于 Maven 构建和 Java 运行时。例如: http://127.0.0.1:8080
    • HTTP_PROXY :http 代理的位置。这同时用于 Maven 构建和 Java 运行时。例如: 127.0.0.1:8080.
    • NO_ PROXY :可以直接访问的以逗号分隔的主机、IP 地址或域的列表。这优先于 NO_PROXY,用于 Maven 构建和 Java 运行时。例如:*.example.com
    • NO_PROXY :可以直接访问的以逗号分隔的主机、IP 地址或域的列表。这同时用于 Maven 构建和 Java 运行时。例如: foo.example.com,bar.example.com
  21. 可选: 根据您的需要,设置环境变量。要设置环境变量,请单击 Add new Environment 变量,然后在 NameValue 字段中输入变量的名称和值。

    • 如果要配置从配置的 Maven 存储库拉取服务的不可变 KIE 服务器,请输入以下设置:

      1. 设置 KIE_SERVER_CONTAINER_DEPLOYMENT 环境变量。变量必须包含部署必须从 Maven 存储库拉取的服务(KJAR 文件)的识别信息。格式为 <containerId>=<groupId>:<artifactId>:<version>,或如果您要为容器设置一个别名,则为<containerId>(<aliasId>)=<groupId>:<artifactId>:<version>。您可以使用 | 分隔符提供两个或多个 KJAR 文件,如下例所示: containerId=groupId:artifactId:version|c2 (alias2)=g2:a2:v2
      2. 配置外部 Maven 存储库。
    • 如果要配置外部 Maven 存储库,请设置以下变量:

      • MAVEN_REPO_URL: Maven 存储库的 URL
      • MAVEN_REPO_ID: Maven 存储库的标识符,如 repo-custom
      • MAVEN_REPO_USERNAME: Maven 存储库的用户名
      • MAVEN_REPO_PASSWORD: Maven 存储库的密码
    • 如果您的 OpenShift 环境没有连接到公共互联网,请配置对根据 第 2.11 节 “准备 Maven 镜像存储库以供离线使用” 设置的 Maven 镜像的访问。设置以下变量:

      • MAVEN_MIRROR_URL: 您在 第 2.11 节 “准备 Maven 镜像存储库以供离线使用” 中设置的 Maven 镜像存储库的 URL。此 URL 必须从 OpenShift 环境中的容器集访问。如果您将此 KIE 服务器配置为 S2I,您已输入了这个 URL。
      • MAVEN_MIRROR_OF :决定可以从镜像检索哪些工件的值。如果您将此 KIE 服务器配置为 S2I,请不要设置这个值。有关设置 mirrorOf 值的说明,请参阅 Apache Maven 文档中的 Mirror Settings。默认值为 external:*。使用此值,Maven 从镜像检索每个所需的工件,且不会查询任何其他存储库。

        如果您配置外部 Maven 存储库(MAVEN_REPO_URL),请更改 MAVEN_MIRROR_OF,以从镜像中排除此仓库中的工件,如 external:*,!repo-custom。将 repo-custom 替换为您在 MAVEN_REPO_ID 中配置的 ID。

        如果您的编写环境使用内置的 Business Central Maven 存储库,请更改 MAVEN_MIRROR_OF,将该存储库中的工件从镜像中排除: external:*,!repo-rhpamcentr

    • 如果要将 KIE Server 部署配置为使用 Prometheus 来收集和存储指标,请将 PROMETHEUS_SERVER_EXT_DISABLED 环境变量设置为 false。有关配置 Prometheus 指标集合的说明,请参阅 管理和监控 KIE Server
    • 如果您使用 Red Hat Single Sign-On 身份验证,并且应用程序与红帽单点登录的交互需要支持跨原始资源共享(CORS),请配置 CORS 过滤器配置

      • 要使用带有默认设置的 CORS,请确保从 CORS Filters configuration 类别中选择 Default configuration,然后选择 Enable CORS with Default values
      • 要使用自定义配置的 CORS,从 CORS Filters configuration 列表中选择 Custom configuration,并为 CORS 过滤器输入相关值。

后续步骤

要配置额外的 KIE 服务器,请再次单击 Add new KIE Server,并为新服务器配置重复这些步骤。

如果要在没有智能路由器且没有进程实例迁移的情况下部署环境,请单击 Finish,然后单击 Deploy 以部署环境。否则,请继续为智能路由器设置配置参数。

3.2.6. 为环境设置智能路由器配置

默认情况下,部署的环境不包括智能路由器。您可以将智能路由器添加到环境中。您还可以为智能路由器设置配置选项。

先决条件

流程

  1. 如果打开了 Installation, Security, Console, 或 KIE Servers 标签页,点 Next 直到您看到 Smart Router 标签页。
  2. 单击 Set Smart Router,将智能路由器添加到环境中并配置智能路由器。
  3. 如果您根据 第 3.6.3 节 “使用额外 JAR 文件创建自定义智能路由器镜像,以实施自定义路由” 中的说明创建了自定义智能路由器镜像,请设置以下值:

    • 镜像构建器 :项目名称,如 rhpam-project
    • Image :自定义镜像名称,如 rhpam-smartrouter-rhel8-custom

      如果您为镜像使用自定义标签,请将 Image tag 字段设置为此标签。

  4. 如果您根据 第 2.5 节 “为智能路由器创建 secret” 中的说明为 Smart Router 创建 secret,请在 Secret 字段中输入 secret 的名称。
  5. 可选:在 Replicas 字段中输入智能路由器的副本数。
  6. 可选: 要为外部路由设置自定义主机名,请在 Smart Router external Route 字段中输入自定义主机名中使用的 域,如下例所示:

    `smartrouter.example.com`
    注意

    自定义主机名必须有效并可解析。

    要更改自定义主机名,您可以修改 routeHostname 属性。

  7. 可选:在 资源配额 下的字段中输入请求和最大 CPU 和内存限值。
  8. 可选:使用环境变量设置日志级别:

    1. 单击 Add new Environment 变量
    2. Name 字段中输入 LOG_LEVEL
    3. Value 字段中输入 Java 日志级别。有关可用日志级别的列表,请参阅类级别
    4. 可选:按软件包名称为组件设置不同的日志记录级别:

      1. 单击 Add new Environment 变量
      2. Name 字段中输入 LOG_LEVEL
      3. Value 字段中输入软件包和日志记录级别,如下例所示:

        com.example.abc=FINEST,com.example.def=SEVERE,com.example.xyz=FINE

后续步骤

如果要部署 Process Instance Migration 服务,请继续部署该服务。否则,请单击 Finish,然后单击 Deploy 以部署环境。

3.2.7. 为环境设置流程实例迁移配置

您可以使用 Operator 部署 Process Instance Migration (PIM)服务。您可以使用 PIM 服务定义两个不同的进程定义(称为迁移计划)之间的迁移。您可以将迁移计划应用到特定 KIE 服务器中的正在运行的进程实例。

PIM 服务将数据库服务器用于其操作。

先决条件

流程

  1. 如果打开 Installation, Security, Console, KIE Servers, 或 Smart Router tab is 标签页,点 Next 直到您看到 Process Instance Migration 标签页。
  2. Set Process Instance Migration 将 PIM 添加到环境中并配置 PIM。
  3. Database type 字段中,选择 PIM 服务必须使用的数据库。可用的值如下:

    • MySQL :在独立 pod 中创建的 MySQL 服务器。
    • PostgreSQL :在独立 pod 中创建的 PostgreSQL 服务器。除非有特定原因使用任何其他设置,否则请使用此设置。
    • h2 :不需要单独 pod 的内置 h2 数据库引擎。
  4. 可选:为数据库设置持久性卷的配置参数:

    • Size 字段中输入持久性卷的大小
    • StorageClass name 字段中,为持久性卷输入存储类名称

后续步骤

单击 Finish,然后单击 Deploy 以部署环境。

有关使用 PIM 服务的说明,请参阅 Business Central 中管理和监控业务流程中的流程 实例迁移

3.3. 修改使用 Operator 部署的环境

如果使用操作器部署环境,则无法使用典型的 OpenShift 方法进行修改。例如,如果您删除部署配置或服务,则会使用相同的参数自动创建它。

要修改环境,您必须修改环境的 YAML 描述。您可以更改常见的设置,如密码、添加新的 KIE 服务器,以及扩展 KIE 服务器。

流程

  1. 在 OpenShift Web 集群控制台中输入项目。
  2. 在 OpenShift Web 控制台导航面板中,选择 Catalog → Installed operatorsOperators → Installed operator
  3. 表中找到业务自动化 operator 行,并单击中的 KieApp。此时会显示有关使用此 Operator 部署的环境的信息。
  4. 点部署环境的名称。
  5. 选择 YAML 选项卡。

    此时会显示 YAML 源。在这个 YAML 源中,您可以编辑 spec: 下的内容,以更改环境的配置。

  6. 如果要更改 Red Hat Process Automation Manager 的部署版本,请在 spec 下添加以下行:

      version: 7.12.0

    您可以将 7.12.0 替换为另一个所需的版本。如果禁用了自动更新,请使用此设置将 Red Hat Process Automation Manager 升级到新版本,例如,如果使用自定义镜像。

  7. 如果要更改通用设置,如密码,请在 commonConfig: 下编辑值。
  8. 如果要添加新的 KIE 服务器,请在 服务器下的块末尾添加其描述:,如下例所示:

    • 要添加两个名为 server-aserver-a-2 的服务器,请添加以下行:

      - deployments: 2
        name: server-a
    • 要添加包含 S2I 进程中源代码构建的不可变 KIE 服务器,请添加以下行:

      - build:
          kieServerContainerDeployment: <deployment>
          gitSource:
            uri: <url>
            reference: <branch>
            contextDir: <directory>

      替换以下值:

      • <deployment > :从您的源构建的决策服务(KJAR 文件)的识别信息。格式为 <containerId>=<groupId>:<artifactId>:<version>。您可以使用 | 分隔符提供两个或多个 KJAR 文件,如 containerId=groupId:artifactId:version|c2=g2:a2:v2。Maven 构建过程必须从 Git 存储库中的源生成所有这些文件。
      • &lt;URL> :包含决策服务源的 Git 存储库的 URL。
      • <branch > :Git 存储库中的分支。
      • <directory > :从 Git 存储库下载的项目中源的路径。
  9. 如果要扩展 KIE 服务器,请在 servers: 下在块中找到服务器的描述,并在该描述下添加一个 replicas: 设置。例如,replicas: 3 将服务器扩展到三个 pod。
  10. 如果要进行其他更改,请查看可用设置的 CRD 源。要查看 CRD 源,请以管理用户身份使用 oc 命令登录到 Red Hat OpenShift Container Platform 环境,然后输入以下命令:

    oc get crd kieapps.app.kiegroup.org -o yaml
  11. 单击 Save,然后等待 已更新的 弹出消息。
  12. Reload 以查看环境的新 YAML 描述。

3.4. 提供 Elytron 用户配置或其他安装后设置

如果不使用 LDAP 或 RH-SSO 身份验证,Red Hat Process Automation Manager 依赖于 Red Hat JBoss EAP 的 Elytron 子系统中的内部用户。默认情况下,只创建管理用户。您可能需要将其他用户添加到 Red Hat JBoss EAP 的 Elytron 安全子系统。为此,您必须运行 Red Hat JBoss EAP 后配置脚本。

您可以在 Red Hat OpenShift Container Platform 部署 Red Hat Process Automation Manager 中,配置此安装后脚本或任何其他 Red Hat JBoss EAP 后配置脚本。

流程

  1. GitHub 存储库 下载示例文件。
  2. 根据示例文件准备以下文件:

    • postconfigure.sh :Red Hat JBoss EAP 必须运行的、后配置 shell 脚本。在这个示例中,此脚本使用 add-users.cli 脚本来添加 Elytron 用户。如果要在 CLI 脚本之外完成安装后任务,请修改此脚本。
    • delayedpostconfigure.sh: 一个空文件,Red Hat Process Automation Manager 版本 7.12.0 需要。
    • add-users.cli :用于配置 Elytron 用户或任何其他 CLI 任务的红帽 JBoss EAP 命令行界面脚本。在以下行间添加您的命令:

      embed-server --std-out=echo --server-config=standalone-openshift.xml batch
      
        <your jboss-cli commands>
      
      run-batch quit
  3. 使用 oc 命令登录到 Red Hat OpenShift Container Platform 集群,并更改到部署的命名空间。
  4. 使用以下命令,使用您准备的文件创建 ConfigMap:

    oc create configmap postconfigure \
        --from-file=add-users.cli=add-users.cli \
        --from-file=delayedpostconfigure.sh=delayedpostconfigure.sh \
        --from-file=postconfigure.sh=postconfigure.sh
  5. 输入以下命令编辑 kieconfigs-7.12.0 配置映射:

    oc edit cm kieconfigs-7.12.0
  6. 在 文件中,修改 console: 部分下的部署配置,将配置添加到 Business Central,并修改 servers: 部分下的所有部署配置,以将配置添加到 KIE 服务器实例。

    在每个部署配置中,进行以下更改:

    • deploymentConfigs.metadata.spec.template.spec.containers.volumeMounts 下添加以下行:

      - name: postconfigure-mount
        mountPath: /opt/eap/extensions
    • deploymentConfigs.metadata.spec.template.spec.containers.volumeMounts 下添加以下行:

      - name: "postconfigure-mount"
        configMap:
          name: "postconfigure"
          defaultMode: 0555
  7. 保存该文件。此时,新的 operator 部署包含配置后设置。

在现有部署中,如果没有自动添加配置后设置,您可以删除 Business Central 和 KIE Server pod。Operator 使用安装后设置自动启动更新版本。

3.5. JVM 配置参数

使用操作器部署 Red Hat Process Automation Manager 时,您可以选择为 Business Central 和 KIE 服务器设置多个 JVM 配置参数。这些参数为对应容器设置环境变量。

下表列出了在使用 Operator 部署 Red Hat Process Automation Manager 时可以设置的所有 JVM 配置参数。

默认设置适用于大多数用例。仅在需要时才进行任何更改。

表 3.1. JVM 配置参数
配置字段环境变量描述示例

Java Opts append

JAVA_OPTS_APPEND

用户指定的 Java 选项,以附加到 JAVA_OPTS 中生成的选项。

-Dsome.property​=foo

Java 最大内存比率

JAVA_MAX_MEM_RATIO

可用于 Java 虚拟机的最大容器内存百分比。剩余的内存用于操作系统。默认值为 50,限制为 50%。设置 -Xmx JVM 选项。如果您输入的值为 0, 则不会设置 -Xmx 选项。

40

Java 初始内存比率

JAVA_INITIAL_MEM_RATIO

最初用于 Java 虚拟机的容器内存百分比。默认值为 25,因此如果该值不超过 Java Max Initial Memory 值,则最初为 JVM 分配 25% 的 pod 内存。设置 -Xms JVM 选项。如果您输入的值为 0, 则不会设置 -Xms 选项。

25

Java 最大初始内存

JAVA_MAX_INITIAL_MEM

最初用于 Java 虚拟机的最大内存量(以 MB 为单位)。如果初始分配的内存如 Java 初始内存比率 参数中设置的,否则会大于这个值,则该值中设置的内存数量将使用 -Xms JVM 选项进行分配。默认值为 4096

4096

Java 诊断

JAVA_DIAGNOSTICS

启用此设置,将其他 JVM 诊断信息的输出启用到标准输出。默认禁用此选项。

true

Java 调试

JAVA_DEBUG

启用此设置以在远程调试时切换。默认禁用此选项。添加 -⁠agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=${debug_port} JVM 选项,其中 ${debug_port} 默认为 5005

true

Java 调试端口

JAVA_DEBUG_PORT

用于远程调试的端口。默认值为 5005

8787

GC min heap free ratio

GC_MIN_HEAP_FREE_RATIO

垃圾回收(GC)后最少的堆百分比,以避免扩展。设置 -XX:MinHeapFreeRatio JVM 选项。

20

GC 最大堆可用比率

GC_MAX_HEAP_FREE_RATIO

GC 后的最大堆可用百分比以避免缩小。设置 -XX:MaxHeapFreeRatio JVM 选项。

40

GC 时间比率

GC_TIME_RATIO

指定垃圾回收之外的时间(例如,应用程序执行所花费的时间)与垃圾回收中花费的时间比。设置 -XX:GCTimeRatio JVM 选项。

4

GC 自适应大小策略 weight

GC_ADAPTIVE_SIZE_POLICY_WEIGHT

提供给当前 GC 时间与之前的 GC 时间的权重。设置 -XX:AdaptiveSizePolicyWeight JVM 选项。

90

GC 最大元空间大小

GC_MAX_METASPACE_SIZE

最大元空间大小。设置 -XX:MaxMetaspaceSize JVM 选项。

100

3.6. 为 KIE 服务器和智能路由器创建自定义镜像

您可以创建自定义镜像,来向 KIE 服务器和智能路由器部署添加文件。您必须将镜像推送(push)到您自己的容器 registry。在部署 Red Hat Process Automation Manager 时,您可以将 Operator 配置为使用自定义镜像。

如果使用自定义镜像,则必须禁用自动版本更新。当您想安装新版本时,请使用与之前名称相同的构建镜像,以及新版本标签并将镜像推送(push)到 registry 中。然后,您可以更改版本,Operator 会自动拉取新镜像。有关在 Operator 中更改产品版本的步骤,请参阅 第 3.3 节 “修改使用 Operator 部署的环境”

特别是,您可以创建以下类型的自定义镜像:

  • KIE Server 的自定义镜像,其中包含额外的 RPM 软件包
  • KIE Server 的自定义镜像,其中包含额外的 JAR 类库
  • 智能路由器(智能路由器)的自定义镜像,其中包含额外的 JAR 类库来实施自定义路由

3.6.1. 使用附加 RPM 软件包创建自定义 KIE 服务器镜像

您可以创建一个安装额外 RPM 软件包的自定义 KIE Server 镜像。您可以将此镜像推送到自定义 registry 中,然后使用它部署 KIE 服务器。

您可以从 Red Hat Enterprise Linux 8 软件仓库安装任何软件包。这个示例安装 procps-ng 软件包,它提供 ps 实用程序,但您可以修改它来安装其他软件包。

流程

  1. 使用 podman login 命令向 registry.redhat.io registry 进行身份验证。有关向 registry 进行身份验证的说明,请参阅 Red Hat Container Registry 身份验证
  2. 要下载支持的 KIE 服务器基础镜像,请输入以下命令:

    podman pull registry.redhat.io/rhpam-7/rhpam-kieserver-rhel8:7.12.0
  3. 创建一个 Dockerfile,以基于基础镜像定义自定义镜像。该文件必须将当前用户更改为 root,使用 yum 命令安装 RPM 软件包,然后恢复到 USER 185 (红帽 JBoss EAP 用户)。以下示例显示了 Dockerfile 文件的内容:

    FROM registry.redhat.io/rhpam-7/rhpam-kieserver-rhel8:7.12.0
    USER root
    RUN yum -y install procps-ng
    USER 185

    根据需要替换 RPM 文件的名称。yum 命令从 Red Hat Enterprise Linux 8 软件仓库自动安装所有依赖项。在这种情况下,您可能需要安装多个 RPM 文件,请使用几个 RUN 命令。

  4. 使用 Dockerfile 构建自定义镜像。提供镜像的完全限定名称,包括 registry 名称。您必须使用与基础镜像版本相同的 version 标签。要构建镜像,请输入以下命令:

    podman build . --tag registry_address/image_name:7.12.0

    例如:

    podman build . --tag registry.example.com/custom/rhpam-kieserver-rhel8:7.12.0
  5. 构建完成后,运行镜像,登录镜像,并验证自定义是否成功。使用以下命令:

    podman run -it --rm registry_address/image_name:7.12.0 /bin/bash

    例如:

    podman run -it --rm registry.example.com/custom/rhpam-kieserver-rhel8:7.12.0 /bin/bash

    在镜像的 shell 提示符中,输入命令来测试 RPM 是否已安装,然后输入 exit。例如,对于 procps-ng,请运行 ps 命令:

    [jboss@c2fab36b778e ~]$ ps
    PID TTY          TIME CMD
      1 pts/0    00:00:00 bash
     13 pts/0    00:00:00 ps
    [jboss@c2fab36b778e ~]$ exit
  6. 要将自定义镜像推送到 registry 中,请输入以下命令:

    podman push registry_address/image_name:7.12.0 docker://registry_address/image_name:7.12.0

    例如:

    podman push registry.example.com/custom/rhpam-kieserver-rhel8:7.12.0 docker://registry.example.com/custom/rhpam-kieserver-rhel8:7.12.0

后续步骤

在部署 KIE 服务器时,设置镜像名称和命名空间,以在 registry 中指定自定义镜像。点 Set KIE Server 镜像,将 Kind 值改为 DockerImage,然后提供镜像名称,包括 registry 名称,但没有 version 标签,例如:

registry.example.com/custom/rhpam-kieserver-rhel8

有关使用 Operator 部署 KIE 服务器的步骤,请参考 第 3.2.5 节 “设置环境的自定义 KIE 服务器配置”

3.6.2. 使用额外 JAR 文件创建自定义 KIE 服务器镜像

您可以创建自定义 KIE Server 镜像,其中安装了额外的 JAR 文件(或多个 JAR 文件)来扩展服务器的功能。您可以将此镜像推送到自定义 registry 中,然后使用它部署 KIE 服务器。

例如,您可以创建一个自定义类 JAR 来在 KIE 服务器中提供自定义 Prometheus 指标。有关创建自定义类的说明,请参阅 管理和监控 KIE Server 中的使用自定义指标在 KIE 服务器中扩展 Prometheus 指标监控

流程

  1. 开发与 KIE 服务器一起使用的自定义库。您可以使用以下文档和示例来开发库:

  2. 使用 Maven 构建库,以便 JAR 文件放置在 目标目录中。本例使用 custom-kieserver-ext-1.0.0.Final.jar 文件名。
  3. 使用 podman login 命令向 registry.redhat.io registry 进行身份验证。有关向 registry 进行身份验证的说明,请参阅 Red Hat Container Registry 身份验证
  4. 要下载支持的 KIE 服务器基础镜像,请输入以下命令:

    podman pull registry.redhat.io/rhpam-7/rhpam-kieserver-rhel8:7.12.0
  5. 创建一个 Dockerfile,以基于基础镜像定义自定义镜像。该文件必须将 JAR 文件(或多个 JAR 文件)复制到 /opt/eap/standalone/deployments/ROOT.war/WEB-INF/lib/ 目录中。以下示例显示了 Dockerfile 文件的内容:

    FROM registry.redhat.io/rhpam-7/rhpam-kieserver-rhel8:7.12.0
    COPY target/custom-kieserver-ext-1.0.0.Final.jar /opt/eap/standalone/deployments/ROOT.war/WEB-INF/lib/
  6. 使用 Dockerfile 构建自定义镜像。提供镜像的完全限定名称,包括 registry 名称。您必须使用与基础镜像版本相同的 version 标签。要构建镜像,请输入以下命令:

    podman build . --tag registry_address/image_name:7.12.0

    例如:

    podman build . --tag registry.example.com/custom/rhpam-kieserver-rhel8:7.12.0
  7. 要将自定义镜像推送到 registry 中,请输入以下命令:

    podman push registry_address/image_name:7.12.0 docker://registry_address/image_name:7.12.0

    例如:

    podman push registry.example.com/custom/rhpam-kieserver-rhel8:7.12.0 docker://registry.example.com/custom/rhpam-kieserver-rhel8:7.12.0

后续步骤

在部署 KIE 服务器时,设置镜像名称和命名空间,以在 registry 中指定自定义镜像。点 Set KIE Server 镜像,将 Kind 值改为 DockerImage,然后提供镜像名称,包括 registry 名称,但没有 version 标签,例如:

registry.example.com/custom/rhpam-kieserver-rhel8

有关使用 Operator 部署 KIE 服务器的步骤,请参考 第 3.2.5 节 “设置环境的自定义 KIE 服务器配置”

3.6.3. 使用额外 JAR 文件创建自定义智能路由器镜像,以实施自定义路由

默认情况下,智能路由器根据容器别名路由请求。如果几个 KIE 服务器提供具有相同容器别名的服务,智能路由器会在它们之间平衡负载。

在某些情况下,需要自定义路由功能。您可以创建自定义类来实施自定义路由,然后使用类创建自定义智能路由器镜像。您可以将此镜像推送到自定义 registry 中,然后使用它部署 Smart Router。

先决条件

  • 已安装 JDK 和 Apache Maven。
  • 部署 Red Hat Process Automation Manager 的项目是在 Red Hat OpenShift Container Platform 环境中创建的
  • 您知道 Red Hat OpenShift Container Platform 镜像 registry 的路由,并有权将镜像推送到 registry。有关配置 registry 的说明,请参阅 Red Hat OpenShift Container Platform 产品文档中的 Registry

流程

  1. GitHub 存储库 下载路由器扩展示例源。
  2. 根据需要修改路由器扩展的示例源。现有代码根据容器的版本实施简单的路由。
  3. 使用 Maven 构建源代码:

    mvn clean package

    构建过程生成以下 JAR 文件: target/router-ext-0.0.1-SNAPSHOT.jar

  4. 创建用于创建自定义镜像的工作目录,将生成的 JAR 文件复制到目录中,然后更改到该目录,例如:

    mkdir /tmp/smartrouter
    cp target/router-ext-0.0.1-SNAPSHOT.jar /tmp/smartrouter
    cd /tmp/smartrouter
  5. 使用 podman login 命令向 registry.redhat.io registry 进行身份验证。有关向 registry 进行身份验证的说明,请参阅 Red Hat Container Registry 身份验证
  6. 要下载支持的智能路由器基础镜像,请输入以下命令:

    podman pull registry.redhat.io/rhpam-7/rhpam-smartrouter-rhel8:7.12.0
  7. 从官方智能路由器镜像中提取 openshift-launch.sh 文件:

    podman run --rm registry.redhat.io/rhpam-7/rhpam-smartrouter-rhel8:7.12.0 \
       cat /opt/rhpam-smartrouter/openshift-launch.sh > openshift-launch.sh
  8. 编辑 openshift-launch.sh 文件。在文件的最后一行中,找到类似如下的 exec 指令:

    exec ${JAVA_HOME}/bin/java ${SHOW_JVM_SETTINGS} ${JAVA_OPTS} ${JAVA_OPTS_APPEND} ${JAVA_PROXY_OPTIONS} "${D_ARR[@]}" -jar /opt/${JBOSS_PRODUCT}/${KIE_ROUTER_DISTRIBUTION_JAR}

    将指令改为以下文本:

    exec ${JAVA_HOME}/bin/java ${SHOW_JVM_SETTINGS} "${D_ARR[@]}" \
        -cp /opt/${JBOSS_PRODUCT}/router-ext-0.0.1-SNAPSHOT.jar:/opt/${JBOSS_PRODUCT}/${KIE_ROUTER_DISTRIBUTION_JAR} \
        org.kie.server.router.KieServerRouter

    此更改会将扩展 JAR 文件添加到 Java 类路径。

  9. 创建一个 Dockerfile 文件,该文件基于基础镜像定义自定义镜像。以下示例显示了 Dockerfile 文件的内容:

    FROM registry.redhat.io/rhpam-7/rhpam-smartrouter-rhel8:7.12.0
    RUN rm -rfv /opt/rhpam-smartrouter/openshift-launch.sh
    COPY openshift-launch.sh  /opt/rhpam-smartrouter/openshift-launch.sh
    COPY router-ext-0.0.1-SNAPSHOT.jar /opt/rhpam-smartrouter/router-ext-0.0.1-SNAPSHOT.jar
    
    USER root
    RUN chown jboss. /opt/rhpam-smartrouter/router-ext-0.0.1-SNAPSHOT.jar /opt/rhpam-smartrouter/openshift-launch.sh
    RUN chmod +x /opt/rhpam-smartrouter/openshift-launch.sh
    USER 185

    此文件包括以下操作:

    • 添加 JAR 文件和新的 openshift-launch.sh 文件
    • 将当前用户更改为 root
    • openshift-launch.sh 文件设置所需的权限
    • 恢复到 USER 185,即红帽 JBoss EAP 用户
  10. 使用 oc 命令登录到您的 Red Hat OpenShift Container Platform 集群。
  11. 使用 podman login 命令登录到 Red Hat OpenShift Container Platform 集群 registry。
  12. 使用 Dockerfile 构建自定义镜像。为 Red Hat OpenShift Container Platform 集群 registry 和项目命名空间标记镜像。对镜像使用自定义名称,以及与基础镜像版本相同的版本标签。要构建镜像,请输入以下命令:

    podman build . --tag registry-route/project-name_/image-name:7.12.0

    例如:

    podman build . --tag route-openshift-image-registry.openshift.example.com/rhpam-project/rhpam-smartrouter-rhel8-custom:7.12.0
  13. 构建完成后,运行镜像并验证自定义是否成功。使用以下命令:

    podman run registry-route/project-name/image-name:7.12.0

    例如:

    podman run route-openshift-image-registry.openshift.example.com/rhpam-project/rhpam-smartrouter-rhel8-custom:7.12.0

    确保输出提到自定义服务,如下例所示:

    INFO: Using 'LatestVersionContainerResolver' container resolver and restriction policy 'ByPassUserNotAllowedRestrictionPolicy'
  14. 将自定义镜像推送到 registry 中:

    podman push registry-route/project-name/image-name:7.12.0

    例如:

    podman push route-openshift-image-registry.openshift.example.com/rhpam-project/rhpam-smartrouter-rhel8-custom:7.12.0

后续步骤

在部署 Red Hat Process Automation Manager 时,在 Smart Router 选项卡中设置以下值:

  • 镜像构建器 :项目名称,如 rhpam-project
  • Image :自定义镜像名称,如 rhpam-smartrouter-rhel8-custom

有关使用 Operator 部署智能路由器的说明,请参阅 第 3.2.6 节 “为环境设置智能路由器配置”

注意

您还可以使用自定义标签而不是当前版本标签。但是,如果您使用当前版本标签,您可以稍后使用 version 标签为新版本创建镜像。然后,当您升级 Red Hat Process Automation Manager 版本时,会自动包括新镜像。有关升级 Red Hat Process Automation Manager 版本的步骤,请参阅 第 3.3 节 “修改使用 Operator 部署的环境”

如果您在部署 Red Hat Process Automation Manager 时使用自定义标签,在 Smart Router 选项卡中将 Image Tag 值设置为自定义标签。

第 4 章 在 Red Hat OpenShift Container Platform 上部署 Dashbuilder Standalone

您可以使用 Dashbuilder Standalone 查看在 OpenShift 中创建并从 Business Central 导出的仪表板。这可用于检查没有 Business Central 的环境中的业务指标。使用 Dashbuilder Standalone operator 在 Red Hat OpenShift Container Platform 上部署 Dashbuilder Standalone,与其他服务分开部署。

先决条件

流程

  1. 在 Operator 安装 页面中,在 Application name 字段中输入应用程序的名称。
  2. Environment 字段中输入环境的名称,如 rhpam-standalone-dashbuilder
  3. 点击 Next
  4. 可选:在 Security 页面中,配置 LDAP 或 Red Hat Single Sign-On。
  5. Components 页面上,从 Components 列表中选择 Dashbuilder
  6. 要添加 KIE 服务器数据集,请完成以下任务:

    注意

    您可以通过重复此步骤来添加额外的 KIE 服务器数据集。

    1. 单击 Add new KIE Server DataSets
    2. DataSet name 字段中,输入 kieserver-1
    3. Kie Server Location 字段中,输入 KIE 服务器的位置,例如 https://my-kie-server:80/services/rest/server
    4. 要设置凭证,请完成以下任务之一:

      • 如果您没有设置令牌,在 UsernamePassword 字段中输入您的用户名和密码。将 Token 字段留空。
      • 如果您有令牌,在 Token 字段中输入您的令牌。UsernamePassword 字段留空。

        自定义资源示例:

        apiVersion: app.kiegroup.org/v2
        kind: KieApp
        metadata:
          name: standalone-dashbuilder
        spec:
          environment: rhpam-standalone-dashbuilder
          objects:
            dashbuilder:
              config:
                kieServerDataSets:
                  - name: kieserver-1
                    location: 'https://my-kie-server:80/services/rest/server'
                    user: kieserverAdmin
                    password: kieserverAdminPwd
                    replaceQuery: true
  7. 要添加 KIE Server 模板,请完成以下任务:

    注意

    您可以通过重复这一步来添加额外的 KIE Server 模板。

    1. 单击 Add new KIE Server Templates
    2. Template name 字段中输入模板的名称,如 kieserver-template
    3. KIE Server Location 字段中,输入 KIE 服务器的位置,例如 https://my-other-kie-server:80/services/rest/server
    4. 要设置凭证,请完成以下任务之一:

      • 如果您没有设置令牌,在 UsernamePassword 字段中输入您的用户名和密码。将 Token 字段留空。
      • 如果您有令牌,在 Token 字段中输入您的令牌。UsernamePassword 字段留空。

        apiVersion: app.kiegroup.org/v2
        kind: KieApp
        metadata:
          name: standalone-dashbuilder
        spec:
          environment: rhpam-standalone-dashbuilder
          objects:
            dashbuilder:
              config:
                kieServerDataSets:
                  - name: kieserver-1
                    location: 'https://my-kie-server:80/services/rest/server'
                    user: kieserverAdmin
                    password: kieserverAdminPwd
                    replaceQuery: true
                kieServerTemplates:
                  - name: kieserver-template
                    location: 'https://my-another-kie-server:80/services/rest/server'
                    user: user
                    password: pwd
                    replaceQuery: true
  8. 可选: 要为外部路由设置自定义主机名,请在 Dashbuilder 外部 Route 字段中输入自定义主机名中使用的 域,如下例所示:

    `dashbuilder.example.com`
    注意

    自定义主机名必须有效并可解析。

    要更改自定义主机名,您可以修改 routeHostname 属性。

4.1. Dashbuilder 独立环境变量

在 Operator 中使用 Dashbuilder 容器镜像时,您可以使用环境变量或通过自定义资源来配置 Dashbuilder。

表 4.1. 自定义资源参数
参数等同的环境变量描述示例值

allowExternalFileRegister

DASHBUILDER_ALLOW_EXTERNAL_FILE_REGISTER

允许下载外部(远程)文件。默认值为 false。

False

componentEnable

DASHBUILDER_COMP_ENABLE

启用外部组件。

true

componentPartition

DASHBUILDER_COMPONENT_PARTITION

根据运行时模型 ID 启用组件分区。默认值为 true。

true

configMapProps

DASHBUILDER_CONFIG_MAP_PROPS

允许使用带有 Dashbuilder 配置的属性文件。附加唯一的属性;如果属性设置多次,则使用属性文件中的属性文件。

true

dataSetPartition

DASHBUILDER_DATASET_PARTITION

根据运行时模型 ID 启用数据集 ID 的分区。默认值为 true。

true

enableBusinessCentral

 — 

通过配置 Business Central 和 Dashbuilder 自动集成 Business Central。仅在 operator 上可用。

true

enableKieServer

 — 

通过自动配置 KIE 服务器和 Dashbuilder 来启用与 KIE 服务器集成。仅在 operator 上可用。

true

externalCompDir

DASHBUILDER_EXTERNAL_COMP_DIR

设置存储仪表板 ZIP 文件的基础目录。如果启用了 PersistentConfigs,并且 ExternalCompDir 没有设置为现有路径,则使用 /opt/kie/dashbuilder/components 目录。

 — 

importFileLocation

DASHBUILDER_IMPORT_FILE_LOCATION

设置静态仪表板来自动运行。如果设置了此属性,则不允许导入。

 — 

importsBaseDir

DASHBUILDER_IMPORTS_BASE_DIR

设置存储仪表板 ZIP 文件的基础目录。如果启用了 PersistentConfigs,并且 ImportsBaseDir 没有设置为现有路径,则使用 /opt/kie/dashbuilder/imports 目录。如果设置了 ImportFileLocation,则忽略 ImportsBaseDir

 — 

kieServerDataSets

KIESERVER_DATASETS

定义 KIE 服务器数据集访问配置。

 — 

kieServerTemplates

KIESERVER_SERVER_TEMPLATES

定义 KIE 服务器模板访问配置。

 — 

modelFileRemoval

DASHBUILDER_MODEL_FILE_REMOVAL

允许从文件系统自动删除模型文件。默认值为 false。

False

modelUpdate

DASHBUILDER_MODEL_UPDATE

允许 Runtime 检查文件系统中的模型上次更新内容。默认值为 true。

true

persistentConfigs

``

将 Dashbuilder 设置为非临时。如果设置了 ImportFileLocation,则忽略 PersistentConfigs。默认值为 true。仅在 operator 上可用。

true

runtimeMultipleImport

DASHBUILDER_RUNTIME_MULTIPLE_IMPORT

允许运行时允许导入(多租户)。默认值为 false。

False

uploadSize

DASHBUILDER_UPLOAD_SIZE

设置仪表板上传的大小限制(以 kb 为单位)。默认值为 10485760 kb。

10485760

env

 — 

代表容器中存在的环境变量。

 — 

您可以使用 operator 来通过使用 env 属性设置环境变量。以下示例将 DASHBUILDER_UPLOAD_SIZE 属性的值设置为 1000

apiVersion: app.kiegroup.org/v2
kind: KieApp
metadata:
  name: standalone-dashbuilder
spec:
  environment: rhpam-standalone-dashbuilder
  objects:
    dashbuilder:
      env:
        - name: DASHBUILDER_UPLOAD_SIZE
          value: '1000'

第 5 章 从 Red Hat OpenShift Container Platform 3 的部署迁移信息

如果您之前在 Red Hat OpenShift Container Platform 3 上使用 Red Hat Process Automation Manager 部署,您可以将这些信息从该部署迁移到 Red Hat OpenShift Container Platform 4 上的新部署。

在迁移信息前,您必须使用 Operator 在 Red Hat OpenShift Container Platform 4 上部署新的 Red Hat Process Automation Manager 基础架构。在新基础架构中包括与旧部署中的元素相同的元素。例如:

  • 对于任何现有编写部署,创建一个新的编写基础架构,包括 Business Central 和至少一个 KIE Server。
  • 对于任何现有不可变 KIE 服务器,部署具有相同工件的新不可变 KIE 服务器。
  • 对于任何具有 MySQL 或 PostgreSQL 数据库 pod 的现有 KIE 服务器,部署具有相同类型的数据库 pod 的新 KIE 服务器。
  • 对于任何使用外部数据库服务器的现有 KIE 服务器,部署使用相同凭据的相同外部数据库服务器的新 KIE 服务器。服务器连接到同一数据库,因此可以读取进程上下文状态。
注意

如果 KIE 服务器使用 H2 内置数据库,则不支持迁移进程上下文状态。

智能路由器不需要迁移。智能路由器的新部署自动与新的 KIE 服务器上的服务一起使用。

5.1. 在 Business Central 中迁移信息

如果您在 Red Hat OpenShift Container Platform 3 中有一个现有的编写环境,您可以在 Red Hat OpenShift Container Platform 4 的新部署中将 .niogit 存储库和 Maven 存储库从 Business Central 复制到 Business Central。此操作使所有相同的项目和工件在新部署中可用。

先决条件

  • 您必须有一个可通过网络访问 Red Hat OpenShift Container Platform 3 和 Red Hat OpenShift Container Platform 4 的机器。
  • Red Hat OpenShift Container Platform 4 的 oc 命令行客户端必须安装在机器上。有关安装命令行客户端的说明,请参阅 Red Hat OpenShift Container Platform 文档中的 CLI 工具

流程

  1. 确保没有 Web 客户端和没有客户端应用程序连接到旧部署的任何元素,包括 Business Central 和 KIE 服务器。
  2. 创建一个空临时目录并更改到其中。
  3. 使用 oc 命令,登录到 Red Hat OpenShift Container Platform 3 基础架构,并切换到包含旧部署的项目。
  4. 要查看旧部署的 pod 名称,请运行以下命令:

    oc get pods

    查找 Business Central pod。此 pod 的名称包含 rhpamcentr。在高可用性部署中,您可以使用任何 Business Central pod。

  5. 使用 oc 命令将 pod 中的 .niogit 存储库和 Maven 存储库复制到本地机器,例如:

    oc cp myapp-rhpamcentr-5-689mw:/opt/kie/data/.niogit .niogit
    oc cp myapp-rhpamcentr-5-689mw:/opt/kie/data/maven-repository maven-repository
  6. 使用 oc 命令,登录到 Red Hat OpenShift Container Platform 4 基础架构,并切换到包含新部署的项目。
  7. 要查看新部署中的 pod 名称,请运行以下命令:

    oc get pods

    查找 Business Central pod。此 pod 的名称包含 rhpamcentr。在高可用性部署中,您可以使用任何 Business Central pod。

  8. 使用 oc 命令将 .niogit 存储库和 Maven 存储库从本地机器复制到 pod,例如:

    oc cp .niogit myappnew-rhpamcentr-abd24:/opt/kie/data/.niogit
    oc cp maven-repository myappnew-rhpamcentr-abd24:/opt/kie/data/maven-repository

5.2. 为 KIE 服务器迁移 MySQL 数据库

如果 Red Hat OpenShift Container Platform 3 中的您的环境包含一个使用 MySQL 数据库 pod 的 KIE 服务器,请将 MySQL 数据库内容从旧部署复制到新部署。此操作将现有进程状态复制到新部署。

先决条件

  • 您必须有一个可通过网络访问 Red Hat OpenShift Container Platform 3 和 Red Hat OpenShift Container Platform 4 的机器。
  • Red Hat OpenShift Container Platform 4 的 oc 命令行客户端必须安装在机器上。有关安装命令行客户端的说明,请参阅 Red Hat OpenShift Container Platform 文档中的 CLI 工具
  • 必须安装 MySQL 版本 8 或更高版本提供的 mysqlmysqldump 客户端应用程序,或安装 MariaDB 版本 10 或更高版本。

流程

  1. 确保没有 Web 客户端和没有客户端应用程序连接到旧部署的任何元素,包括 Business Central 和 KIE 服务器。
  2. 创建一个空临时目录并更改到其中。
  3. 使用 oc 命令,登录到 Red Hat OpenShift Container Platform 3 基础架构,并切换到包含旧部署的项目。
  4. 要查看旧部署中的部署配置名称,请运行以下命令:

    oc get dc

    查找与所需的 KIE 服务器实例对应的 mysql 部署配置。

  5. 查看部署配置的配置 YAML,例如:

    oc edit dc/myapp-mysql

    在这个文件中,找到数据库服务器的用户名(通常为 rhpam)和密码,例如:

    - name: MYSQL_USER
      value: rhpam
    - name: MYSQL_PASSWORD
      value: NDaJIV7!

    记录用户名和密码。不要对文件进行任何更改。

    注意

    您还可以使用以下命令来检索用户名和密码:

    oc get dc/myapp-mysql -ojsonpath='{.spec.template.spec.containers[0].env[?(@.name=="MYSQL_USER")]}'.value
    
    oc get dc/myapp-mysql -ojsonpath='{.spec.template.spec.containers[0].env[?(@.name=="MYSQL_PASSWORD")]}'.value
  6. 要查看旧部署中的服务名称,请运行以下命令:

    oc get svc

    查找与所需的 KIE 服务器实例对应的 mysql 服务。

  7. 在一个单独的终端窗口中,使用为服务显示的名称和端口号,从本地主机到 mysql 服务启动端口转发,例如:

    oc port-forward service/myapp-mysql 3306:3306
  8. 使用记录的用户名创建完整的数据库转储,例如:

    mysqldump --all-databases -u rhpam -p -h 127.0.0.1 > mysqldump.sql

    出现提示时,输入记录的密码。转储创建可能需要一些时间。

  9. 使用 Ctrl+C 组合键在单独的窗口中停止端口转发。
  10. 使用 oc 命令,登录到 Red Hat OpenShift Container Platform 4 基础架构,并切换到包含新部署的项目。
  11. 要查看新部署中的部署配置名称,请运行以下命令:

    oc get dc

    查找与所需的 KIE 服务器实例对应的 mysql 部署配置。

  12. 查看部署配置的配置 YAML,例如:

    oc edit dc/myappnew-mysql

    在此文件中,查找数据库服务器的用户名(通常为 rhpam)和密码。记录用户名和密码。不要对文件进行任何更改。

    注意

    您还可以使用以下命令来检索用户名和密码:

    oc get dc/myapp-mysql -ojsonpath='{.spec.template.spec.containers[0].env[?(@.name=="MYSQL_USER")]}'.value
    
    oc get dc/myapp-mysql -ojsonpath='{.spec.template.spec.containers[0].env[?(@.name=="MYSQL_PASSWORD")]}'.value
  13. 要查看新部署中的服务名称,请运行以下命令:

    oc get svc

    查找与所需的 KIE 服务器实例对应的 mysql 服务。

  14. 在一个单独的终端窗口中,使用为服务显示的名称和端口号,从本地主机到 mysql 服务启动端口转发,例如:

    oc port-forward service/myappnew-mysql 3306:3306
  15. 使用记录的用户名恢复数据库转储,例如:

    mysql -u rhpam -p -h 127.0.0.1 < mysqldump.sql

    出现提示时,输入记录的密码。恢复可能需要花费大量时间。

  16. 使用 Ctrl+C 组合键在单独的窗口中停止端口转发。

5.3. 为 KIE 服务器迁移 PostgreSQL 数据库

如果 Red Hat OpenShift Container Platform 3 中的环境包括 KIE 服务器,它使用 PostgreSQL 数据库 pod,将 PostgreSQL 数据库内容从旧部署复制到新部署。此操作将现有进程状态复制到新部署。

先决条件

  • 您必须有一个可通过网络访问 Red Hat OpenShift Container Platform 3 和 Red Hat OpenShift Container Platform 4 的机器。
  • Red Hat OpenShift Container Platform 4 的 oc 命令行客户端必须安装在机器上。有关安装命令行客户端的说明,请参阅 Red Hat OpenShift Container Platform 文档中的 CLI 工具
  • 必须安装由 PostgreSQL 版本 10 或更高版本提供的 psqlpg_dump 客户端应用程序。

流程

  1. 确保没有 Web 客户端和没有客户端应用程序连接到旧部署的任何元素,包括 Business Central 和 KIE 服务器。
  2. 创建一个空临时目录并更改到其中。
  3. 使用 oc 命令,登录到 Red Hat OpenShift Container Platform 3 基础架构,并切换到包含旧部署的项目。
  4. 要查看旧部署中的部署配置名称,请运行以下命令:

    oc get dc

    查找与所需 KIE 服务器实例对应的 postgresql 部署配置。

  5. 查看部署配置的配置 YAML,例如:

    oc edit dc/myapp-postgresql

    在这个文件中,找到数据库服务器的用户名(通常为 rhpam)、password 和 database name (通常为 rhpam7),例如:

    - name: POSTGRESQL_USER
      value: rhpam
    - name: POSTGRESQL_PASSWORD
      value: NDaJIV7!
    - name: POSTGRESQL_DATABASE
      value: rhpam7

    记录用户名、密码和数据库名称。不要对文件进行任何更改。

    注意

    您还可以使用以下命令来检索用户名、密码和数据库名称:

    oc get dc/myapp-postgresql -ojsonpath='{.spec.template.spec.containers[0].env[?(@.name=="POSTGRESQL_USER")]}'.value
    
    oc get dc/myapp-postgresql -ojsonpath='{.spec.template.spec.containers[0].env[?(@.name=="POSTGRESQL_PASSWORD")]}'.value
    
    oc get dc/myapp-postgresql -ojsonpath='{.spec.template.spec.containers[0].env[?(@.name=="POSTGRESQL_DATABASE")]}'.value

    +

  6. 要查看旧部署中的服务名称,请运行以下命令:

    oc get svc

    查找与所需 KIE 服务器实例对应的 postgresql 服务。

  7. 在一个单独的终端窗口中,使用为服务显示的名称和端口号从本地主机到 postgresql 服务启动端口转发,例如:

    oc port-forward service/myapp-postgresql 5432:5432
  8. 使用记录的用户名和数据库名称创建数据库转储,例如:

    pg_dump rhpam7 -h 127.0.0.1 -U rhpam -W > pgdump.sql

    出现提示时,输入记录的密码。转储创建可能需要一些时间。

  9. 使用 Ctrl+C 组合键在单独的窗口中停止端口转发。
  10. 使用 oc 命令,登录到 Red Hat OpenShift Container Platform 4 基础架构,并切换到包含新部署的项目。
  11. 要查看新部署中的部署配置名称,请运行以下命令:

    oc get dc

    查找与所需 KIE 服务器实例对应的 postgresql 部署配置。

  12. 查看部署配置的配置 YAML,例如:

    oc edit dc/myappnew-postgresql

    在此文件中,查找数据库服务器的用户名(通常为 rhpam)、password、和 数据库名称(通常为 rhpam7)。记录用户名、密码和数据库名称。不要对文件进行任何更改。

    注意

    您还可以使用以下命令来检索用户名、密码和数据库名称:

    oc get dc/myapp-postgresql -ojsonpath='{.spec.template.spec.containers[0].env[?(@.name=="POSTGRESQL_USER")]}'.value
    
    oc get dc/myapp-postgresql -ojsonpath='{.spec.template.spec.containers[0].env[?(@.name=="POSTGRESQL_PASSWORD")]}'.value
    
    oc get dc/myapp-postgresql -ojsonpath='{.spec.template.spec.containers[0].env[?(@.name=="POSTGRESQL_DATABASE")]}'.value
  13. 要在新部署中查看服务名称,请运行以下命令:

    oc get svc

    查找与所需 KIE 服务器实例对应的 postgresql 服务。

  14. 在一个单独的终端窗口中,使用为服务显示的名称和端口号从本地主机到 postgresql 服务启动端口转发,例如:

    oc port-forward service/myappnew-postgresql 5432:5432
  15. 使用记录的用户名和数据库名称恢复数据库转储,例如:

    psql -h 127.0.0.1 -d rhpam7 -U rhpam -W < pgdump.sql

    出现提示时,输入记录的密码。恢复可能需要花费大量时间。

    检查任何显示的数据库错误消息。有关已存在的对象的消息是正常的。

  16. 使用 Ctrl+C 组合键在单独的窗口中停止端口转发。

部分 II. 使用模板在 Red Hat OpenShift Container Platform 3 上部署 Red Hat Process Automation Manager 环境

作为系统工程师,您可以在 Red Hat OpenShift Container Platform 3 上部署红帽流程自动化管理器环境,以提供开发或执行服务、处理应用程序和其他业务资产的基础架构。您可以使用提供的模板之一来部署预定义的红帽流程自动化管理器环境,以满足您的特定需求。

注意

有关使用 Operator 在 Red Hat OpenShift Container Platform 4 上部署 Red Hat Process Automation Manager 环境的说明,请参阅使用 Operator 在 Red Hat OpenShift Container Platform 4 上部署 Red Hat Process Automation Manager 环境

先决条件

  • 部署 Red Hat OpenShift Container Platform 版本 3.11。
  • 以下资源可在 OpenShift 集群中使用:根据应用程序负载,可能需要高资源分配才能接受接受的性能。

    • 对于编写环境,4GB 内存和 2 个虚拟 CPU 内核用于 Business Central pod。在高可用性部署中,每个副本都需要这些资源,默认创建两个副本。
    • 对于生产环境或不可变环境,每个 Business Central Monitoring pod 副本 2GB 内存和 1 个虚拟 CPU 内核。
    • 每个 KIE Server pod 的每个副本的 2GB 内存和 1 个虚拟 CPU 内核。
    • 智能路由器 pod 的每个副本的 512 MB 内存和一半的虚拟 CPU 内核。
    • 在高可用性编写部署中,MySQL、Red Hat AMQ 和 Red Hat Data Grid pod 需要根据配置的默认值进行其他资源。
  • 启用动态持久性卷(PV)置备。或者,如果没有启用动态 PV 置备,则必须有足够的持久性卷。默认情况下,部署的组件需要以下 PV 大小:

    • 默认情况下,每个 KIE 服务器部署都需要一个 1Gi PV 用于数据库。您可以更改数据库 PV 大小。您可以部署多个 KIE 服务器;每个服务器都需要单独的数据库 PV。如果您使用外部数据库服务器,则此要求不适用。
    • 默认情况下,Business Central 需要 1Gi PV。您可以更改 Business Central 持久性存储的 PV 大小。
    • Business Central Monitoring 需要 64Mi PV。
    • 智能路由器需要一个 64Mi PV。
注意

有关检查集群容量的说明,请参阅 Red Hat OpenShift Container Platform 3.11 产品文档中的 分析集群容量

  • 创建了用于部署的 OpenShift 项目。
  • 使用 oc 命令登录到项目。如需有关 oc 命令行工具的更多信息,请参阅 OpenShift CLI 参考。如果要使用 OpenShift Web 控制台来部署模板,还必须使用 Web 控制台登录。
  • 启用动态持久性卷(PV)置备。或者,如果没有启用动态 PV 置备,则必须有足够的持久性卷。默认情况下,部署的组件需要以下 PV 大小:

    • 复制的 KIE 服务器 pod 默认需要一个 1Gi PV 用于数据库。您可以在模板参数中更改数据库 PV 大小。如果您使用外部数据库服务器,则此要求不适用。
    • Business Central 默认需要一个 1Gi PV。您可以在模板参数中更改 Business Central 持久性存储的 PV 大小。
  • 如果要扩展任何 Business Central 或 Business Central 监控 Pod,您的 OpenShift 环境支持具有 ReadWriteMany 模式的持久性卷。如果您的环境不支持这个模式,您可以使用 NFS 来置备卷。但是,为了获得最佳性能和可靠性,可使用 GlusterFS 为高可用性编写环境调配持久卷。有关 OpenShift 公共和私有云中访问模式支持的详情,请参考 访问模式
注意

从 Red Hat Process Automation Manager 版本 7.5 开始,Red Hat OpenShift Container Platform 3.x 的镜像和模板已弃用。这些镜像和模板不会获得新功能,但在对 Red Hat OpenShift Container Platform 3.x 的完全支持为止。如需有关 Red Hat OpenShift Container Platform 3.x 的完整支持生命周期阶段的更多信息,请参阅 Red Hat OpenShift Container Platform 生命周期政策(非当前版本)。

注意

不要在 Red Hat OpenShift Container Platform 4.x 中使用 Red Hat Process Automation Manager 模板。要在 Red Hat OpenShift Container Platform 4.x 上部署 Red Hat Process Automation Manager,请参阅使用 Operator 在 Red Hat OpenShift Container Platform 4 上部署 Red Hat Process Automation Manager

第 6 章 Red Hat OpenShift Container Platform 上的 Red Hat Process Automation Manager 概述

您可以将 Red Hat Process Automation Manager 部署到 Red Hat OpenShift Container Platform 环境中。

在这个解决方案中,Red Hat Process Automation Manager 的组件被部署为单独的 OpenShift pod。您可以单独扩展和缩减每个 pod,以便根据特定组件的要求提供所需数量的或多个容器。您可以使用标准的 OpenShift 方法管理容器集并平衡负载。

OpenShift 提供了 Red Hat Process Automation Manager 的以下关键组件:

  • KIE Server (也称为 执行服务器 )是运行决策服务、处理应用程序和其他可部署资产(统称为 服务)的基础架构元素。服务的所有逻辑都在执行服务器上运行。

    KIE 服务器通常需要数据库服务器。您可以在另一个 OpenShift pod 中提供数据库服务器,或者将 OpenShift 上的执行服务器配置为使用任何其他数据库服务器。或者,KIE 服务器可以使用 H2 数据库;在这种情况下,您无法扩展 pod。

    在某些模板中,您可以扩展 KIE Server pod 来根据需要提供任意数量的副本,在同一主机或不同的主机上运行。当您扩展或缩减 pod 时,其所有副本都使用相同的数据库服务器并运行相同的服务。OpenShift 提供负载平衡,请求可以由任何容器集进行处理。

    您可以部署单独的 KIE Server pod 来运行不同的服务组。该 pod 也可以扩展或缩减。您可以根据需要拥有多个单独的复制 KIE Server pod。

  • Business Central 是用于编写服务的基于 Web 的互动环境。它还提供管理和监控控制台。您可以使用 Business Central 来开发服务并将其部署到 KIE 服务器。您还可以使用 Business Central 监控进程的执行。

    Business Central 是一个集中的应用程序。但是,您可以将它配置为高可用性,其中多个 pod 运行并共享相同的数据。

    Business Central 包括一个 Git 存储库,用于存储在其上开发的服务的来源。它还包括内置的 Maven 存储库。根据配置,Business Central 可将编译的服务(KJAR 文件)放在内置的 Maven 存储库中,或者(如果配置)到外部 Maven 存储库中。

  • Business Central Monitoring 是一个基于 Web 的管理和监控控制台。它可以管理服务到 KIE 服务器,并提供监控信息,但不包括编写功能。您可以使用此组件来管理暂存和生产环境。
  • 智能路由器是 KIE 服务器和与之交互的其他组件之间的可选层。当您的环境包含不同 KIE 服务器上运行的许多服务时,智能路由器为所有客户端应用提供单一端点。客户端应用可以发出需要任何服务的 REST API 调用。智能路由器自动调用可以处理特定请求的 KIE 服务器。

您可以在 OpenShift 中将这些和其他组件划分为不同的环境配置。

以下是典型的环境类型:

  • 试用 :红帽流程自动化管理器演示和评估环境.此环境包括 Business Central 和 KIE 服务器。您可以快速设置它,并使用它来评估或演示开发和运行资产。但是,环境不使用任何持久性存储,并且您在环境中所做的任何工作都不会保存。
  • 编写 :使用 Business Central 创建和修改服务的环境。它由为编写工作和 KIE 服务器提供 Business Central 的 pod 组成,用于测试服务的执行。
  • 受管部署 :运行现有服务用于暂存和生产目的的环境。此环境包含多个 KIE Server pod 组;您可以在每一个此类组中部署和取消部署服务,并根据需要扩展组。使用 Business Central Monitoring 部署、运行和停止服务并监控其执行。

    您可以部署两种类型的受管环境。在 自由 服务器环境中,您最初部署 Business Central Monitoring 和一个 KIE 服务器。您还可以部署任意数量的 KIE 服务器。Business Central Monitoring 可以连接到同一命名空间中的所有服务器。

    或者,您可以部署 fixed 受管服务器环境。单个部署包括 Business Central Monitoring、智能路由器以及预设置 KIE 服务器的数量(默认为两台服务器,但您可以修改模板以更改数字)。您不能稍后轻松添加或删除服务器。

  • 使用不可变服务器进行部署 :运行现有服务的替代环境,用于暂存和生产目的。在这个环境中,当您部署 KIE Server pod 时,它会构建一个镜像来加载和启动服务。您无法停止 pod 上的任何服务,或向 pod 添加任何新服务。如果要使用服务的另一个版本,或者以任何其他方式修改配置,您可以部署新的服务器镜像并替换旧服务器镜像。在此系统中,KIE 服务器像 OpenShift 环境中的任何其他 pod 一样运行;您可以使用任何基于容器的集成工作流,且不需要使用任何其他工具来管理 pod。

    另外,您可以使用 Business Central Monitoring 来监控环境的性能,并停止和重启某些服务实例,但不能将其他服务部署到任何 KIE 服务器或取消部署任何现有服务(您无法添加或删除容器)。

要在 OpenShift 上部署 Red Hat Process Automation Manager 环境,您可以使用 Red Hat Process Automation Manager 提供的模板。您可以修改一些模板,以确保配置适合您的环境。

6.1. 编写环境的构架

在 Red Hat Process Automation Manager 中,Business Central 组件为编写服务提供了一个基于 Web 的交互式用户界面。KIE 服务器组件运行服务。

KIE 服务器使用数据库服务器来存储进程服务的状态。

您还可以使用 Business Central 将服务部署到 KIE 服务器上。您可以使用多个 KIE 服务器来运行不同的服务,并控制来自同一 Business Central 的服务器。

单个编写环境

在单个编写环境中,只有一个 Business Central 实例正在运行。多个用户可以同时访问其 Web 界面,但性能可能会限制,且没有故障转移功能。

Business Central 包括一个内置 Maven 存储库,用于存储您开发的服务的内置 Maven 存储库(KJAR 文件/artifacts)。您可以使用持续集成和持续部署(CICD)工具从存储库中检索这些工件,并根据需要移动它们。

Business Central 将源代码保存在内置的 Git 存储库中,该存储库存储在 .niogit 目录中。它使用内置索引机制来索引服务中的资产。

Business Central 将持久性存储用于 Maven 存储库和 Git 存储库。

默认情况下,单个编写环境包含一个 KIE 服务器实例。此 KIE 服务器实例使用内置 H2 数据库引擎来存储进程服务的状态。

默认情况下,单个编写环境使用 控制器策略。Business Central 包含 控制器,它是可以管理 KIE 服务器的组件。当您将 KIE 服务器配置为连接到 Business Central 时,KIE 服务器使用 REST API 连接到控制器。此连接将打开持久的 WebSocket。在使用控制器策略的 OpenShift 部署中,每个 KIE 服务器实例都最初配置为连接到 Business Central Controller。

当您使用 Business Central 用户界面在 KIE 服务器上部署和管理服务时,KIE 服务器会通过 Controller 连接 WebSocket 接收请求。要部署服务,KIE 服务器从作为 Business Central 一部分的 Maven 存储库请求必要的构件。

客户端应用使用 REST API 来使用 KIE 服务器上运行的服务。

图 6.1. 单个编写环境的架构图

集群 KIE 服务器和使用多个 KIE 服务器

您可以扩展 KIE Server pod 来运行集群的 KIE 服务器环境。要扩展 KIE 服务器,您必须确保它使用独立 pod 或外部数据库服务器中的数据库服务器,而不是内置的 H2 数据库引擎。

在集群部署中,KIE 服务器的几个实例运行相同的服务。这些服务器可以使用相同的服务器 ID 连接到 Business Central Controller,因此他们可以从控制器接收相同的请求。Red Hat OpenShift Container Platform 在服务器间提供负载均衡。在集群 KIE 服务器实例上运行的 OptaPlanner 服务和红帽构建的 OptaPlanner 服务必须无状态,因为来自同一客户端的请求可能会被不同的实例处理。

您还可以部署几个独立的 KIE 服务器来运行不同的服务。在这种情况下,服务器使用不同的服务器 ID 值连接到 Business Central Controller。您可以使用 Business Central UI 将服务部署到每个服务器。

智能路由器

可选的智能路由器组件在客户端应用程序和 KIE 服务器实例之间提供一个层。如果您使用几个独立的 KIE 服务器实例,它很有用。

客户端应用可以使用在不同 KIE 服务器实例上运行的服务,但始终连接到智能路由器。Smart Router 会自动将请求传递给运行所需服务的 KIE 服务器实例。智能路由器还支持管理服务版本,并提供额外的负载平衡层。

高可用性编写环境

在高可用性(HA)编写环境中,Business Central pod 被扩展,因此多个 Business Central 实例正在运行。Red Hat OpenShift Container Platform 为用户请求提供负载均衡。此环境为多个用户提供最佳性能并支持故障转移。

Business Central 的每个实例都包含构建工件的 Maven 存储库,并使用 .niogit Git 存储库进行源代码。实例将共享持久性存储用于存储库。此存储需要具有 ReadWriteMany 访问的持久性卷。

Red Hat DataGrid 的实例提供了在 Business Central 中开发的所有项目和资产的索引。

Red Hat AMQ 实例在所有 Business Central 实例之间传播 Java CDI 信息。例如,当创建新项目或某个实例上的资产被锁定或修改时,这些信息会立即反映在所有其他实例中。

控制器策略不适用于集群部署。在 OpenShift 部署中,高可用性 Business Central 必须使用 OpenShift 启动策略 来管理 KIE 服务器。

每个 KIE 服务器部署(可以扩展)都会创建一个反映其当前状态的 ConfigMap。Business Central 通过阅读 ConfigMap 发现所有 KIE 服务器。

当用户请求 KIE 服务器配置中的更改(例如,部署或取消部署服务时),Business Central 发起与 KIE 服务器的连接并发送 REST API 请求。KIE 服务器更改 ConfigMap 以反应新配置状态,然后触发自己的重新部署,以便所有实例都已重新部署,并反映了新配置。

您可以在 OpenShift 环境中部署几个独立的 KIE 服务器。每个 KIE 服务器都有带有必要配置的独立 ConfigMap。您可以单独扩展每个 KIE 服务器。

您可以在 OpenShift 部署中包括 Smart Router。

图 6.2. 高可用性编写环境的架构图

第 7 章 准备在 OpenShift 环境中部署 Red Hat Process Automation Manager

在 OpenShift 环境中部署 Red Hat Process Automation Manager 之前,您必须完成几个流程。如果要部署附加镜像,例如用于新版本的进程或其他进程,则不需要重复这些步骤。

注意

如果要部署试用环境,请完成 第 7.1 节 “确保镜像流和镜像 registry 的可用性” 中描述的步骤,且不完成任何其他准备过程。

7.1. 确保镜像流和镜像 registry 的可用性

要在 Red Hat OpenShift Container Platform 上部署 Red Hat Process Automation Manager 组件,您必须确保 OpenShift 可以从 Red Hat registry 下载正确的镜像。若要下载镜像,OpenShift 需要 镜像流,其中包含有关镜像位置的信息。OpenShift 还必须配置为使用服务帐户用户名和密码与红帽 registry 进行身份验证。

OpenShift 环境的一些版本包括所需的镜像流。您必须检查它们是否可用。如果 OpenShift 中默认提供了镜像流,如果为注册表身份验证服务器配置了 OpenShift 基础架构,则可以使用它们。在安装 OpenShift 环境时,管理员必须完成 registry 身份验证配置。

否则,您可以在自己的项目中配置 registry 身份验证,并在该项目中安装镜像流。

流程

  1. 确定 Red Hat OpenShift Container Platform 是否配置了 Red Hat registry 访问的用户名和密码。有关所需配置的详情 ,请参阅配置 Registry 位置。如果您使用 OpenShift Online 订阅,则会为红帽 registry 访问进行配置。
  2. 如果使用 Red Hat registry 访问的用户名和密码配置了 Red Hat OpenShift Container Platform,请输入以下命令:

    $ oc get imagestreamtag -n openshift | grep -F rhpam-businesscentral | grep -F 7.12
    $ oc get imagestreamtag -n openshift | grep -F rhpam-kieserver | grep -F 7.12

    如果两个命令的输出都不是空的,则需要在 openshift 命名空间中提供所需的镜像流,且不需要进一步操作。

  3. 如果一个或两个命令的输出为空,或者 OpenShift 没有配置 Red Hat registry 访问的用户名和密码,请完成以下步骤:

    1. 确保您已使用 oc 命令登录到 OpenShift,并且您的项目处于活动状态。
    2. 完成 共享文件系统服务的 Registry Service Accounts 中记录的步骤。您必须登录到红帽客户门户网站以访问文档并完成步骤以创建 registry 服务帐户。
    3. 选择 OpenShift Secret 选项卡,再单击 Download secret 下的链接来下载 YAML 机密文件。
    4. 查看下载的文件并记录 name: 条目中列出的名称。
    5. 输入以下命令:

      oc create -f <file_name>.yaml
      oc secrets link default <secret_name> --for=pull
      oc secrets link builder <secret_name> --for=pull

      <file_name > 替换为下载的文件名,&lt ;secret_name > 替换为文件 name: 条目中列出的名称。

    6. Software Downloads 页面下载 rhpam-7.12.0-openshift-templates.zip 产品提供的文件,并提取 rhpam712-image-streams.yaml 文件。
    7. 使用以下命令:

      $ oc apply -f rhpam712-image-streams.yaml
      注意

      如果完成这些步骤,请将镜像流安装到项目的命名空间中。在这种情况下,当部署模板时,您必须将 IMAGE_STREAM_NAMESPACE 参数设置为此项目的名称。

7.2. 为 KIE 服务器创建 secret

OpenShift 使用名为 secret 的对象 来保存敏感信息,如密码或密钥存储。如需有关 OpenShift secret 的更多信息,请参阅 Red Hat OpenShift Container Platform 文档中的 Secret 章节

您必须为 KIE Server 的 HTTP 访问创建 SSL 证书,并将其作为机密提供给 OpenShift 环境。

流程

  1. 生成名为 keystore.jks 的 SSL 密钥存储,该密钥存储带有用于 KIE Server 的 SSL 加密的私钥。有关如何创建带有自签名或购买 SSL 证书的密钥存储的更多信息,请参阅 生成 SSL 加密密钥和证书

    注意

    在生产环境中,生成与 KIE 服务器预期 URL 匹配的有效签名证书。

  2. 记录证书的名称。Red Hat Process Automation Manager 配置中此名称的默认值为 jboss
  3. 记录密钥存储文件的密码。Red Hat Process Automation Manager 配置中此名称的默认值为 mykeystorepass
  4. 使用 oc 命令从新密钥存储文件中生成名为 kieserver-app-secret 的 secret:

    $ oc create secret generic kieserver-app-secret --from-file=keystore.jks

7.3. 为 Business Central 创建 secret

如果您的环境包含 Business Central 或 Business Central Monitoring,您必须为 Business Central 的 HTTP 访问创建 SSL 证书,并将其作为 secret 提供给 OpenShift 环境。

不要将相同的证书和密钥用于 Business Central 和 KIE 服务器。

流程

  1. 生成名为 keystore.jks 的 SSL 密钥存储,该密钥存储带有用于 KIE Server 的 SSL 加密的私钥。有关如何创建带有自签名或购买 SSL 证书的密钥存储的更多信息,请参阅 生成 SSL 加密密钥和证书

    注意

    在生产环境中,生成与 Business Central 的预期 URL 匹配的有效签名证书。

  2. 记录证书的名称。Red Hat Process Automation Manager 配置中此名称的默认值为 jboss
  3. 记录密钥存储文件的密码。Red Hat Process Automation Manager 配置中此名称的默认值为 mykeystorepass
  4. 使用 oc 命令从新密钥存储文件中生成名为 businesscentral-app-secret 的 secret:

    $ oc create secret generic businesscentral-app-secret --from-file=keystore.jks

7.4. 为智能路由器创建 secret

如果您的环境包含智能路由器,则必须创建一个 SSL 证书以 HTTP 访问智能路由器,并将其作为机密提供给 OpenShift 环境。

不要将证书和密钥存储用于智能路由器,与 KIE Server 或 Business Central 所使用的证书相同。

流程

  1. 生成名为 keystore.jks 的 SSL 密钥存储,该密钥存储带有用于 KIE Server 的 SSL 加密的私钥。有关如何创建带有自签名或购买 SSL 证书的密钥存储的更多信息,请参阅 生成 SSL 加密密钥和证书

    注意

    在生产环境中,生成与智能路由器预期 URL 匹配的有效签名证书。

  2. 记录证书的名称。Red Hat Process Automation Manager 配置中此名称的默认值为 jboss
  3. 记录密钥存储文件的密码。Red Hat Process Automation Manager 配置中此名称的默认值为 mykeystorepass
  4. 使用 oc 命令从新密钥存储文件中生成名为 smartrouter-app-secret 的 secret:

    $ oc create secret generic smartrouter-app-secret --from-file=keystore.jks

7.5. 为管理用户创建 secret

您必须创建一个通用 secret,其中包含 Red Hat Process Automation Manager 管理用户帐户的用户名和密码。使用任何模板部署 Red Hat Process Automation Manager 需要此 secret,但试用模板除外。

secret 必须包含用户名和密码作为文字。用户名的密钥名称为 KIE_ADMIN_USER。密码的密钥名称为 KIE_ADMIN_PWD

如果您使用多个模板来部署 Red Hat Process Automation Manager 的组件,请将相同的 secret 用于所有这些部署。组件使用此用户帐户相互通信。

如果您的环境包括 Business Central 或 Business Central Monitoring,您还可以使用此用户帐户登录到 Business Central 或 Business Central Monitoring。

重要

如果使用 RH-SSO 或 LDAP 身份验证,则必须在使用 Red Hat Process Automation Manager 的 kie-server,rest-all,admin 角色在身份验证系统中配置相同的用户。

流程

使用 oc 命令从用户名和密码生成名为 kie-admin-user-secret 的通用 secret:

$ oc create secret generic rhpam-credentials --from-literal=KIE_ADMIN_USER=adminUser --from-literal=KIE_ADMIN_PWD=adminPassword

在这个命令中,将 adminPassword 替换为管理用户的密码。另外,您可以将 adminUser 替换为管理用户的其他用户名。

7.6. 更改 GlusterFS 配置

如果要部署编写环境,您必须检查 OpenShift 环境是否使用 GlusterFS 提供持久性存储卷。如果使用 GlusterFS,若要确保 Business Central 的最佳性能,您必须通过更改存储类配置来调整 GlusterFS 存储。

流程

  1. 要检查您的环境是否使用 GlusterFS,请输入以下命令:

    oc get storageclass

    在结果中,检查 (默认) 标记是否位于列出 glusterfs 的存储类上。例如,在以下输出中,默认存储类是 gluster-container,它会列出 glusterfs

    NAME              PROVISIONER                       AGE
    gluster-block     gluster.org/glusterblock          8d
    gluster-container (default) kubernetes.io/glusterfs 8d

    如果结果有一个没有列出 glusterfs 的默认存储类,或者结果为空,则不需要进行任何更改。在这种情况下,跳过这个过程的其余部分。

  2. 要将默认存储类的配置保存到 YAML 文件中,请输入以下命令:

    oc get storageclass <class-name> -o yaml >storage_config.yaml

    <class-name > 替换为默认存储类的名称。例如:

    oc get storageclass gluster-container -o yaml >storage_config.yaml
  3. 编辑 storage_config.yaml 文件:

    1. 使用以下键删除行:

      • creationTimestamp
      • resourceVersion
      • selfLink
      • uid
    2. 如果您计划在带有 volumeoptions 键的行中将 Business Central 用作单个 pod,但没有高可用性配置,请添加以下选项:

      features.cache-invalidation on
      performance.nl-cache on

      例如:

      volumeoptions: client.ssl off, server.ssl off, features.cache-invalidation on, performance.nl-cache on

    3. 如果您计划在高可用性配置中使用 Business Central,请在带有 volumeoptions 键的行中,添加以下选项:

      features.cache-invalidation on
      nfs.trusted-write on
      nfs.trusted-sync on
      performance.nl-cache on
      performance.stat-prefetch off
      performance.read-ahead off
      performance.write-behind off
      performance.readdir-ahead off
      performance.io-cache off
      performance.quick-read off
      performance.open-behind off
      locks.mandatory-locking off
      performance.strict-o-direct on

      例如:

      volumeoptions: client.ssl off, server.ssl off, features.cache-invalidation on, nfs.trusted-write on, nfs.trusted-sync on, performance.nl-cache on, performance.stat-prefetch off, performance.read-ahead off, performance.write-behind off, performance.readdir-ahead off, performance.io-cache off, performance.io-cache off, performance.io-cache off, performance performance.quick-read off, performance.open-behind off, locks.mandatory-locking off, performance.strict-o-direct on

  4. 要删除现有的默认存储类,请输入以下命令:

    oc delete storageclass <class-name>

    <class-name > 替换为默认存储类的名称。例如:

    oc delete storageclass gluster-container
  5. 要使用新配置重新创建存储类,请输入以下命令:

    oc create -f storage_config.yaml

7.7. 使用 NFS 使用 ReadWriteMany 访问模式置备持久性卷

如果要部署 Business Central Monitoring 或高可用性 Business Central,您的环境必须使用 ReadWriteMany 访问模式配置持久性卷。

注意

如果要部署高可用性的编写环境,以实现最佳性能和可靠性,请使用 GlusterFS 置备持久性卷。配置 GlusterFS 存储类,如 第 7.6 节 “更改 GlusterFS 配置” 所述。

如果您的配置需要使用 ReadWriteMany 访问模式置备持久性卷,但您的环境不支持这样的置备,请使用 NFS 来置备卷。否则,请跳过这个过程。

流程

部署 NFS 服务器并使用 NFS 调配持久卷。有关使用 NFS 置备持久性卷的详情,请参考 Red Hat OpenShift Container Platform 3.11 文档中的 配置集群 指南中的"使用 NFS 持久性存储"部分。

7.8. 从 Business Central 中提取源代码,以便在 S2I 构建中使用

如果您计划使用 Source-to-image (S2I)过程创建不可变的 KIE 服务器,则必须在 Git 存储库中为您的服务提供源代码。如果您使用 Business Central 编写服务,您可以提取服务的源代码,并将其放在单独的 Git 存储库中,如 GitHub 或 GitLab 的内部安装,以便在 S2I 构建中使用。

如果您不打算使用 S2I 流程,或者您没有使用 Business Central 编写服务,请跳过此步骤。

流程

  1. 使用以下命令提取源代码:

    git clone https://<business-central-host>:443/git/<MySpace>/<MyProject>

    在这个命令中,替换以下变量:

    • < business-central-host > 带有运行 Business Central 的主机
    • <MySpace >,带有项目所在的 Business Central 空间的名称
    • <myproject >,使用项目名称
    注意

    要在 Business Central 中查看项目的完整 Git URL,请点击 MenuDesign → < MyProject>Settings

    注意

    如果您使用自签名证书进行 HTTPS 通信,命令可能会失败,并显示 SSL 证书问题 错误消息。在这种情况下,在 git 中禁用 SSL 证书验证,例如使用 GIT_SSL_NO_VERIFY 环境变量:

    env GIT_SSL_NO_VERIFY=true git clone https://<business-central-host>:443/git/<MySpace>/<MyProject>
  2. 将源代码上传到另一个 Git 存储库,如 GitHub 或 GitLab,用于 S2I 构建。

7.9. 准备 Maven 镜像存储库以供离线使用

如果您的 Red Hat OpenShift Container Platform 环境没有公共互联网访问,则必须使用所有必要的工件镜像准备 Maven 存储库,并将此存储库提供给您的环境。

注意

如果您的 Red Hat OpenShift Container Platform 环境连接到互联网,则不需要完成这个步骤。

先决条件

  • 具有一个可以传出访问公共互联网的计算机。

流程

  1. 配置您具有写入访问权限的 Maven 发行版本存储库。存储库必须在不进行身份验证的情况下进行读取访问权限,并且您的 OpenShift 环境必须具有对此存储库的网络访问。

    您可以在 OpenShift 环境中部署 Nexus 存储库管理器。有关在 OpenShift 上设置 Nexus 的说明,请参阅 Red Hat OpenShift Container Platform 3.11 文档中的 设置 Nexus

    使用此存储库作为镜像来托管公开可用的 Maven 工件。您还可以在此存储库中提供自己的服务,以便在不可变服务器上部署这些服务,或使用 Business Central 监控将这些服务部署到受管服务器上。

  2. 在与公共互联网的传出连接的计算机上,完成以下步骤:
  3. 导航到红帽客户门户网站中的 Software Downloads 页面(需要登录),然后从下拉菜单中选择产品和版本:

    • 产品: Red Hat Process Automation Manager
    • Version: 7.12

      1. 下载并提取 Red Hat Process Automation Manager 7.12.0 Offliner 内容列表 (rhpam-7.12.0-offliner.zip)产品提供可交付的文件。
      2. rhpam-7.12.0-offliner.zip 文件的内容提取到任何目录中。
      3. 进入该目录并输入以下命令:

        ./offline-repo-builder.sh offliner.txt

        此命令会创建 存储库 子目录,并将所需的工件下载到此子目录中。这是镜像存储库。

        如果消息报告了一些下载失败,请再次运行相同的命令。如果下载再次失败,请联系红帽支持。

      4. 将所有工件 从存储库 子目录上传到您准备的 Maven 镜像存储库。您可以使用 Maven 存储库工具 Git 存储库中的 Maven Repository Provisioner 实用程序上传工件。
  4. 如果您在 Business Central 之外开发服务,并且有额外的依赖项,请将依赖项添加到镜像存储库。如果将服务作为 Maven 项目开发,您可以使用以下步骤自动准备这些依赖项。在与公共互联网传出连接的计算机上完成步骤。

    1. 创建本地 Maven 缓存目录(~/.m2/repository)的备份,然后清除该目录。
    2. 使用 mvn clean install 命令构建项目源。
    3. 对于每个项目,输入以下命令来确保 Maven 下载项目生成的所有工件的所有运行时依赖项:

      mvn -e -DskipTests dependency:go-offline -f /path/to/project/pom.xml --batch-mode -Djava.net.preferIPv4Stack=true

      /path/to/project/pom.xml 替换为项目的 pom.xml 文件的路径。

    4. 将本地 Maven 缓存目录(~/.m2/repository)中的所有工件上传到您准备的 Maven 镜像存储库。您可以使用 Maven 存储库工具 Git 存储库中的 Maven Repository Provisioner 实用程序上传工件。

7.10. 为外部数据库构建自定义 KIE 服务器扩展镜像

如果要将外部数据库服务器用于 KIE 服务器,且数据库服务器不是 MySQL 或 PostgreSQL 服务器,您必须在部署您的环境前为这个服务器构建带有驱动程序的自定义 KIE 服务器扩展镜像。

完成此构建中的步骤,为以下任何数据库服务器提供驱动程序:

  • Microsoft SQL Server
  • IBM DB2
  • Oracle 数据库
  • sisu

另外,您可以使用这个流程为以下任何数据库服务器构建新版本驱动程序:

  • MySQL
  • MariaDB
  • PostgreSQL

有关数据库服务器支持的版本,请参阅 Red Hat Process Automation Manager 7 支持的配置

构建程序会创建一个可扩展现有 KIE Server 镜像的自定义扩展镜像。您必须将此自定义扩展镜像导入到 OpenShift 环境中,然后在 EXTENSIONS_IMAGE 参数中引用它。

先决条件

  • 使用 oc 命令登录到 OpenShift 环境。您的 OpenShift 用户必须具有 registry-viewer 角色。有关分配 registry-viewer 角色的更多信息,请参阅 OpenShift Container Platform 4.8 文档中的"Registry"章节中的"访问 registry"部分。
  • 对于 Oracle Database、IBM DB2 或 datacenter,您可以从数据库服务器供应商下载 JDBC 驱动程序。
  • 已安装以下所需的软件:

    • Docker:对于安装说明,请参阅 获取 Docker
    • CEKit 版本 3.11.0 或更高版本:有关安装说明,请参阅安装
    • 以下 CEKit 库和扩展:如需更多信息,请参阅 依赖项

      • Docker,由 python3-docker 软件包提供,或类似软件包
      • docker-squash,由 python3-docker-squash 软件包提供
      • 行为,由 python3-behave 软件包提供

流程

  1. 对于 IBM DB2,Oracle Database (或 datacenter)在本地目录中提供 JDBC 驱动程序 JAR 文件。
  2. 从红帽客户门户网站的 Software Downloads 页面下载 rhpam-7.12.0-openshift-templates.zip 产品提供的可交付文件。
  3. 解压文件,并通过命令行更改为解压缩文件的 templates/contrib/jdbc/cekit 目录。此目录包含自定义构建的源代码。
  4. 根据数据库服务器类型,输入以下命令之一:

    • 对于 Microsoft SQL Server:

      make mssql
    • 对于 MySQL:

      make mysql
    • 对于 PostgreSQL:

      make postgresql
    • 对于 MariaDB:

      make mariadb
    • 对于 IBM DB2:

      make db2 artifact=/tmp/db2jcc4.jar version=10.2

      在这个命令中,将 /tmp/db2jcc4.jar 替换为 IBM DB2 驱动程序的路径名称,将 10.2 替换为驱动程序的版本。

    • 对于 Oracle 数据库:

      make oracle artifact=/tmp/ojdbc7.jar version=7.0

      在此命令中,将 /tmp/ojdbc7.jar 替换为 Oracle Database 驱动程序的路径名称,将 7.0 替换为驱动程序的版本。

    • 对于 datacenter :

      make build sybase artifact=/tmp/jconn4-16.0_PL05.jar version=16.0_PL05

      在这个命令中,将 /tmp/jconn4-16.0_PL05.jar 替换为下载的 datacenter 驱动程序的路径名称,将 16.0_PL05 替换为驱动程序的版本。

      或者,如果您需要为 wlp 驱动程序更新驱动程序类或驱动程序 XA 类,您可以为这个命令设置 DRIVER_CLASSDRIVER_XA_CLASS 变量,例如:

      export DRIVER_CLASS=another.class.Sybase && make sybase artifact=/tmp/jconn4-16.0_PL05.jar version=16.0_PL05
  5. 输入以下命令列出本地可用的 Docker 镜像:

    docker images

    请注意所构建的镜像的名称,如 jboss-kie-db2-extension-openshift-image,以及镜像的 version 标签,如 11.1.4.4 (不是 latest 标签)。

  6. 直接访问 OpenShift 环境的注册表,并将镜像推送至注册表。根据您的用户权限,您可以将镜像推送(push)到 openshift 命名空间或项目命名空间中。有关访问 registry 和推送镜像的说明,请参阅 Red Hat OpenShift Container Platform 产品文档中直接访问 Registry
  7. 当使用支持外部数据库服务器的模板配置 KIE 服务器部署时,请设置以下参数:

    • 驱动程序扩展镜像 (EXTENSIONS_IMAGE):扩展镜像的 ImageStreamTag 定义,如 jboss-kie-db2-extension-openshift-image:11.1.4.4
    • Driver ImageStream Namespace (EXTENSIONS_IMAGE_NAMESPACE):上传扩展镜像的命名空间,如 openshift 或项目命名空间。

第 8 章 试用环境

您可以部署试用(评估)红帽流程自动化管理器环境。它由用于编写或管理服务和 KIE Server 的 Business Central 组成,用于测试服务的执行。

此环境不包含永久存储。您在试用环境中创建或修改的资产不会被保存。

此环境主要用于测试和演示访问。它支持跨原始资源共享(CORS)。这意味着,当页面中的其他资源由其他服务器提供时,可以使用浏览器访问 KIE 服务器端点。KIE 服务器端点通常用于 REST 调用,但在某些演示配置中可能需要浏览器访问。

8.1. 部署试用环境

部署试用环境的过程很小。不需要设置,所有密码都被设置为一个值。默认密码是 RedHat

流程

  1. 从红帽客户门户网站的 Software Downloads 页面下载 rhpam-7.12.0-openshift-templates.zip 产品提供的可交付文件。
  2. 提取 rhpam712-trial-ephemeral.yaml 模板文件。
  3. 使用以下方法之一部署模板:

    • 在 OpenShift Web UI 中,选择 Add to Project → Import YAML / JSON,然后选择或粘贴 rhpam712-trial-ephemeral.yaml 文件。在 Add Template 窗口中 ,确保选择了模板 并单击 Continue
    • 要使用 OpenShift 命令行控制台,请准备以下命令行:

      oc new-app -f <template-path>/rhpam712-trial-ephemeral.yaml

      在这个命令行中,将 & lt;template-path > 替换为下载的模板文件的路径。

  4. 可选:设置任何参数,如模板中所述。典型的试用部署只需要以下参数:

  5. 根据您要使用的方法,完成环境创建:

    • 在 OpenShift Web UI 中,单击 Create

      • 这将创建可能具有安全或项目行为影响弹出窗口消息的资源。如果显示,点 Create Anyway
    • 完成并运行命令行。

第 9 章 编写环境

您可以部署环境,以使用 Business Central 创建和修改进程。它包括用于编写工作和 KIE 服务器测试进程的 Business Central。如有必要,您可以将额外的 KIE 服务器连接到 Business Central。

根据您的需要,您可以部署单个编写环境模板或高可用性(HA)编写环境模板。

单个编写环境包含两个 pod。其中一个容器集运行 Business Central,另一个运行 KIE 服务器。KIE 服务器默认包含一个嵌入式 H2 数据库引擎。此环境最适用于单用户编写,或者当您的 OpenShift 基础架构具有有限的资源时。它不需要支持 ReadWriteMany 访问模式的持久性卷。

在单个编写环境中,您无法扩展 Business Central。默认情况下,您也无法扩展 KIE 服务器,因为 H2 数据库引擎不支持扩展。但是,您可以修改模板以使用单独的 MySQL 或 PostgreSQL 数据库服务器 pod;在这种情况下,您可以扩展 KIE Server。有关修改单个编写环境模板的步骤,请参考 第 9.3 节 “为单个编写环境修改模板”

在 HA 编写环境中,Business Central 和 KIE 服务器均在可扩展的 pod 中提供。当 pod 被扩展时,持久性存储会在副本之间共享。数据库由单独的 pod 提供。

要在 Business Central 中启用高可用性功能,需要使用 AMQ 和 Data Grid 的其他 pod。这些 pod 由高可用性编写模板配置和部署。使用高可用性编写环境提供最大可靠性和响应能力,尤其是在同时编写多个用户时。

在当前版本的 Red Hat Process Automation Manager 中,支持 HA 编写环境,但有一些限制:

  • 如果 Business Central pod 在用户一起工作时崩溃,用户可以收到错误消息,然后重定向到另一个 pod。不需要再次登录。
  • 如果 Business Central pod 在用户操作过程中崩溃,则不会提交的数据(保存)可能会丢失。
  • 如果在创建项目过程中,如果 Business Central pod 崩溃,则可能会创建不可用的项目。
  • 如果 Business Central pod 在创建资产期间崩溃,则可能会创建资产,但不会索引,因此无法使用。用户可以在 Business Central 中打开资产,然后再次保存资产以使其索引。
  • 当用户向 KIE 服务器部署服务时,KIE 服务器部署会再次推出。在推出完成前,用户无法将另一个服务部署到同一个 KIE 服务器。

在高可用性编写环境中,如果需要,也可以部署额外的受管或不可变的 KIE 服务器。Business Central 可自动发现同一命名空间中的任何 KIE 服务器,包括不可变 KIE 服务器和管理 KIE 服务器。

如果要在单个编写环境中部署额外的受管或不可变 KIE 服务器,您必须完成额外的手动步骤以便在环境中启用 OpenShiftStartupStrategy 设置,如 第 9.2 节 “启用 OpenShiftStartupStrategy 设置,将额外的 KIE 服务器连接到 Business Central” 所述。此设置启用其他 KIE 服务器的发现。

有关部署受管 KIE 服务器的步骤,请参考 第 11.2 节 “为自由环境部署额外的管理的 KIE 服务器”

有关部署不可变 KIE 服务器的步骤,请参阅 第 10.2 节 “使用 S2I 构建部署不可变 KIE 服务器”第 10.4 节 “从 KJAR 服务部署不可变 KIE 服务器”

9.1. 部署编写环境

您可以使用 OpenShift 模板来部署单一或高可用性的编写环境。此环境由 Business Central 和一个 KIE 服务器组成。

9.1.1. 为编写环境开始配置模板

如果要部署单个编写环境,请使用 rhpam712-authoring.yaml 模板文件。默认情况下,单个编写模板使用带有持久存储的 H2 数据库。如果您希望创建 MySQL 或 PostgreSQL 容器集或使用外部数据库服务器(在 OpenShift 项目之外),请在部署环境前修改模板。有关修改模板的步骤,请参考 第 9.3 节 “为单个编写环境修改模板”

如果要部署高可用性的编写环境,请使用 rhpam712-authoring-ha.yaml 模板文件。默认情况下,高可用性创建模板创建一个 MySQL pod,以便为 KIE 服务器提供数据库服务器。如果您希望使用 PostgreSQL 或使用外部服务器(在 OpenShift 项目之外),则需要在部署环境前修改模板。您还可以修改模板,以更改最初为 Business Central 创建的副本数。有关修改模板的步骤,请参考 第 9.4 节 “为高可用性编写环境修改模板”

流程

  1. 从红帽客户门户网站的 Software Downloads 页面下载 rhpam-7.12.0-openshift-templates.zip 产品提供的可交付文件。
  2. 提取所需的模板文件。
  3. 使用以下方法之一开始部署模板:

    • 要使用 OpenShift Web UI,在 OpenShift 应用程序控制台中选择 Add to Project → Import YAML / JSON,然后选择或粘贴 < template-file-name>.yaml 文件。在 Add Template 窗口中 ,确保选择了模板 并单击 Continue
    • 要使用 OpenShift 命令行控制台,请准备以下命令行:

      oc new-app -f <template-path>/<template-file-name>.yaml -p BUSINESS_CENTRAL_HTTPS_SECRET=businesscentral-app-secret -p KIE_SERVER_HTTPS_SECRET=kieserver-app-secret -p PARAMETER=value

      在这个命令行中,进行以下更改:

      • <template-path > 替换为下载的模板文件的路径。
      • <template-file-name > 替换为模板文件的名称。
      • 根据需要,使用多个 -p PARAMETER=value 对来设置所需的参数。

后续步骤

设置模板的参数。按照 第 9.1.2 节 “为编写环境设置所需的参数” 中的步骤设置通用参数。您可以查看模板文件以查看所有参数的描述。

9.1.2. 为编写环境设置所需的参数

在配置模板以部署编写环境时,您必须在所有情况下设置以下参数。

先决条件

流程

  1. 设置以下参数:

后续步骤

如有必要,设置附加参数。

要完成部署,请按照 第 9.1.14 节 “为编写环境完成模板部署” 中的步骤操作。

9.1.3. 为编写环境配置镜像流命名空间

如果在不是 openshift 的命名空间中创建了镜像流,则必须在模板中配置命名空间。

如果 Red Hat OpenShift Container Platform 环境中已提供了所有镜像流,您可以跳过这个过程。

先决条件

流程

如果您根据 第 7.1 节 “确保镜像流和镜像 registry 的可用性” 中的说明安装了镜像流文件,请将 ImageStream Namespace (IMAGE_STREAM_NAMESPACE)参数设置为 OpenShift 项目的名称。

9.1.4. 为编写环境设置可选的 Maven 存储库

在配置模板以部署编写环境时,如果要将构建的 KJAR 文件放在外部 Maven 存储库中,则必须设置参数来访问存储库。

先决条件

流程

要配置对自定义 Maven 存储库的访问,请设置以下参数:

  • Maven 存储库 URL (MAVEN_REPO_URL): Maven 存储库的 URL。
  • Maven 存储库 ID (MAVEN_REPO_ID):Maven 存储库的标识符。默认值为 repo-custom
  • Maven 存储库用户名 (MAVEN_REPO_USERNAME): Maven 存储库的用户名。
  • Maven 存储库密码 (MAVEN_REPO_PASSWORD): Maven 存储库的密码。

后续步骤

如有必要,设置附加参数。

要完成部署,请按照 第 9.1.14 节 “为编写环境完成模板部署” 中的步骤操作。

重要

要将 Business Central 项目作为 KJAR 工件导出到外部 Maven 存储库,还必须将存储库信息添加到每个项目的 pom.xml 文件中。有关将 Business Central 项目导出到外部存储库的详情,请参考 打包和部署红帽流程自动化管理器项目

9.1.5. 在没有连接到公共互联网的情况下为编写环境配置对 Maven 镜像的访问

当将模板配置为部署编写环境时,如果您的 OpenShift 环境没有与公共互联网的连接,您必须配置对根据 第 7.9 节 “准备 Maven 镜像存储库以供离线使用” 设置的 Maven 镜像的访问。

先决条件

流程

要配置对 Maven 镜像的访问,请设置以下参数:

  • Maven 镜像 URL (MAVEN_MIRROR_URL): 您在 第 7.9 节 “准备 Maven 镜像存储库以供离线使用” 中设置的 Maven 镜像存储库的 URL。此 URL 必须从 OpenShift 环境中的容器集访问。
  • Maven 镜像 (MAVEN_MIRROR_OF):决定要从镜像检索哪些工件的值。有关设置 mirrorOf 值的说明,请参阅 Apache Maven 文档中的 Mirror Settings。默认值为 external:*,!repo-rhpamcentr; 使用这个值,Maven 会直接从 Business Central 的内置 Maven 存储库检索工件,并从镜像检索任何其他所需的工件。如果您配置外部 Maven 存储库(MAVEN_REPO_URL),请更改 MAVEN_MIRROR_OF 以排除此存储库中的工件,如 external:*,!repo-custom。将 repo-custom 替换为您在 MAVEN_REPO_ID 中配置的 ID。默认值为 external:*。使用此值,Maven 从镜像检索每个所需的工件,且不会查询任何其他存储库。

    • 如果您配置外部 Maven 存储库(MAVEN_REPO_URL),请更改 MAVEN_MIRROR_OF,以从镜像中排除此仓库中的工件,如 external:*,!repo-custom。将 repo-custom 替换为您在 MAVEN_REPO_ID 中配置的 ID。
    • 如果您配置内置的 Business Central Maven 存储库(BUSINESS_CENTRAL_MAVEN_SERVICE),请更改 MAVEN_MIRROR_OF 以从镜像中排除此存储库中的工件: external:*,!repo-rhpamcentr
    • 如果您配置这两个存储库,请更改 MAVEN_MIRROR_OF,以从 mirror: external:*,!repo-rhpamcentr,!repo-custom 中排除这两个软件仓库中的工件。将 repo-custom 替换为您在 MAVEN_REPO_ID 中配置的 ID。

后续步骤

如有必要,设置附加参数。

要完成部署,请按照 第 9.1.14 节 “为编写环境完成模板部署” 中的步骤操作。

9.1.6. 为高可用性编写环境配置 Business Central 和 KIE 服务器副本

如果您正在部署高可用性的编写环境,则默认情况下,将创建两个 Business Central 副本和 KIE 服务器的两个副本。

另外,您可以修改副本数量。

在单个编写环境中跳过这个过程。

先决条件

流程

要修改初始副本数,请设置以下参数:

  • Business Central Container Replicas (BUSINESS_CENTRAL_CONTAINER_REPLICAS):部署最初为 Business Central 创建的副本数。
  • KIE Server Container Replicas (KIE_SERVER_CONTAINER_REPLICAS):部署最初为 KIE 服务器创建的副本数。

后续步骤

如有必要,设置附加参数。

要完成部署,请按照 第 9.1.14 节 “为编写环境完成模板部署” 中的步骤操作。

9.1.7. 为编写环境指定 Git hook 目录

您可以使用 Git hook 来简化 Business Central 的内部 Git 存储库和外部 Git 存储库之间的交互。

如果要使用 Git hook,您必须配置 Git hook 目录。

先决条件

流程

要配置 Git hook 目录,请设置以下参数:

  • Git hook 目录 (GIT_HOOKS_DIR): Git hook 目录的完全限定路径,例如 /opt/kie/data/git/hooks。您必须提供此目录的内容并将其挂载到指定路径。有关使用配置映射或持久性卷提供和挂载 Git hook 目录的说明,请参阅 第 13.1 节 “(可选)提供 Git hook 目录”

后续步骤

如有必要,设置附加参数。

要完成部署,请按照 第 9.1.14 节 “为编写环境完成模板部署” 中的步骤操作。

9.1.8. 为高可用性部署配置资源使用量

如果要部署高可用性模板(rhpam712-authoring-ha.yaml),您可以选择性地配置资源使用情况以优化您的要求的性能。

如果要部署单个编写环境模板(rhpam712-authoring.yaml),请跳过此过程。

如需有关大小资源的更多信息,请参阅 Red Hat OpenShift Container Platform 3.11 产品文档中的以下部分:

先决条件

流程

根据需要设置模板的以下参数:

  • Business Central Container Memory Limit (BUSINESS_CENTRAL_MEMORY_LIMIT): Business Central 容器的 OpenShift 环境中请求的内存量。默认值为 8Gi
  • Business Central JVM Max Memory Ratio (BUSINESS_CENTRAL_JAVA_MAX_MEM_RATIO):用于 Business Central 的 Java 虚拟机的容器内存百分比。剩余的内存用于操作系统。默认值为 80,限制为 80%。
  • Business Central Container CPU 限制 (BUSINESS_CENTRAL_CPU_LIMIT): Business Central 的最大 CPU 使用量。默认值为 2000m
  • KIE Server Container Memory Limit (KIE_SERVER_MEMORY_LIMIT): KIE Server 容器的 OpenShift 环境中请求的内存量。默认值为 1Gi
  • KIE 服务器容器 CPU 限制 (KIE_SERVER_CPU_LIMIT):KIE 服务器的最大 CPU 使用量。默认值为 1000m
  • datagrid Container Memory Limit (DATAGRID_MEMORY_LIMIT): Red Hat Data Grid 容器的 OpenShift 环境中请求的内存量。默认值为 2Gi
  • datagrid Container CPU Limit (DATAGRID_CPU_LIMIT): Red Hat Data Grid 的最大 CPU 使用量。默认值为 1000m

9.1.9. 为编写环境设置 RH-SSO 身份验证参数

如果要使用 RH-SSO 身份验证,在配置模板以部署编写环境时完成以下额外配置。

重要

不要在同一部署中配置 LDAP 身份验证和 RH-SSO 身份验证。

先决条件

  • 在 RH-SSO 身份验证系统中创建 Red Hat Process Automation Manager 的域。
  • Red Hat Process Automation Manager 的用户名和密码在 RH-SSO 身份验证系统中创建。有关可用角色的列表,请参阅 第 14 章 Red Hat Process Automation Manager 角色和用户

    您必须为管理用户创建带有在 secret 中配置的用户名和密码的用户,如 第 7.5 节 “为管理用户创建 secret” 所述。此用户必须具有 kie-server,rest-all,admin 角色。

  • 客户端是在 RH-SSO 身份验证系统中为您要部署的 Red Hat Process Automation Manager 环境的所有组件中创建的。客户端设置包含组件的 URL。在部署环境后,您可以检查并编辑 URL。另外,红帽流程自动化管理器部署可以创建客户端。但是,此选项对环境提供较少的详细控制。
  • 您启动了模板的配置,如 第 9.1.1 节 “为编写环境开始配置模板” 所述。

流程

  1. 设置以下参数:

    • RH-SSO URL (SSO_URL): RH-SSO 的 URL。
    • RH-SSO Realm 名称 (SSO_REALM):红帽流程自动化管理器的 RH-SSO 域。
    • RH-SSO 禁用 SSL 证书验证 (SSO_DISABLE_SSL_CERTIFICATE_VALIDATION):如果您的 RH-SSO 安装不使用有效的 HTTPS 证书,则设置为 true
  2. 完成以下流程之一:

    1. 如果您在 RH-SSO 中为 Red Hat Process Automation Manager 创建客户端,请在模板中设置以下参数:

      • Business Central RH-SSO 客户端名称 (BUSINESS_CENTRAL_SSO_CLIENT): Business Central 的 RH-SSO 客户端名称。
      • Business Central RH-SSO Client Secret (BUSINESS_CENTRAL_SSO_SECRET):在 RH-SSO 中为 Business Central 设定的机密字符串。
      • KIE Server RH-SSO Client name (KIE_SERVER_SSO_CLIENT): KIE Server 的 RH-SSO 客户端名称。
      • KIE Server RH-SSO Client Secret (KIE_SERVER_SSO_SECRET): KIE Server 客户端的 RH-SSO 中设置的机密字符串。
    2. 要在 RH-SSO 中为 Red Hat Process Automation Manager 创建客户端,请在模板中设置以下参数:

      • Business Central RH-SSO 客户端名称 (BUSINESS_CENTRAL_SSO_CLIENT):要在 RH-SSO 中为 Business Central 创建的客户端名称。
      • Business Central RH-SSO Client Secret (BUSINESS_CENTRAL_SSO_SECRET):在 RH-SSO 中为 Business Central 设置的机密字符串。
      • KIE Server RH-SSO 客户端名称 (KIE_SERVER_SSO_CLIENT):要在 KIE 服务器的 RH-SSO 中创建的客户端名称。
      • KIE Server RH-SSO Client Secret (KIE_SERVER_SSO_SECRET): KIE Server 客户端的 RH-SSO 中设置的机密字符串。
      • RH-SSO Realm Admin Username (SSO_USERNAME)和 RH-SSO Realm Admin Password (SSO_PASSWORD):红帽流程自动化管理器的 RH-SSO 域的用户名和密码。您必须提供此用户名和密码来创建所需的客户端。

后续步骤

如有必要,设置附加参数。

要完成部署,请按照 第 9.1.14 节 “为编写环境完成模板部署” 中的步骤操作。

完成部署后,查看 RH-SSO 身份验证系统中 Red Hat Process Automation Manager 组件的 URL,以确保它们正确。

9.1.10. 为编写环境设置 LDAP 身份验证参数

如果要使用 LDAP 身份验证,在配置模板以部署编写环境时完成以下额外配置。

重要

不要在同一部署中配置 LDAP 身份验证和 RH-SSO 身份验证。

先决条件

流程

  1. 设置模板的 AUTH_LDAP* 参数。这些参数使用红帽 JBoss EAP 的 Elytron 子系统配置 LDAP 身份验证。有关在 LDAP 中使用 Red Hat JBoss EAP 的 Elytron 子系统的更多信息,请参阅使用 基于 LDAP 的身份存储配置身份验证

    注意

    如果要启用 LDAP 故障转移,您可以在 AUTH_LDAP_URL 参数中放置设置或更多 LDAP 服务器地址,用空格分隔。

    如果 LDAP 服务器没有定义部署所需的所有角色,您可以将 LDAP 组映射到 Red Hat Process Automation Manager 角色。要启用 LDAP 角色映射,请设置以下参数:

    • RoleMapping rolesProperties 文件路径或一行角色 (AUTH_ROLE_MAPPER_ROLES_PROPERTIES):定义角色映射的文件的完全限定路径名称,如 /opt/eap/standalone/configuration/rolemapping.properties。您必须提供此文件,并在所有适用的部署配置中的这个路径中挂载该文件 ; 有关说明,请参阅 第 13.3 节 “(可选)提供 LDAP 角色映射文件”

      或者,您可以使用 role=role1,role2;another-role=role2 pattern (如 admins=kie-server,rest-all,admin;developers=kie-server,rest-all,admin;developers=kie-server,rest-all )在此属性中输入角色映射设置。

    • 角色映射程序 Keep Mapped (AUTH_LDAP_MAPPER_KEEP_MAPPED):如果设为 true,则 LDAP 服务器上定义的映射角色和角色都设置为 用户应用角色;如果设为 false,则映射的角色将替换 LDAP 服务器上定义的角色。默认设置为 false
    • 角色映射程序 Keep Non-mapped (AUTH_LDAP_MAPPER_KEEP_NON_MAPPED):如果设为 true,则 LDAP 服务器上定义的角色不是用户应用角色;如果设为 false,则没有映射的角色会被删除。默认设置为 false

后续步骤

如有必要,设置附加参数。

要完成部署,请按照 第 9.1.14 节 “为编写环境完成模板部署” 中的步骤操作。

9.1.11. 为编写环境设置外部数据库服务器的参数

如果您将模板修改为使用 KIE Server 的外部数据库服务器,如 第 9.3 节 “为单个编写环境修改模板”第 9.4 节 “为高可用性编写环境修改模板” 所述,在配置模板以部署编写环境时完成以下附加配置。

先决条件

流程

  1. 设置以下参数:

    • KIE 服务器外部数据库 驱动程序(KIE_SERVER_EXTERNALDB_DRIVER):服务器的驱动程序,具体取决于服务器类型:

      • mysql
      • postgresql
      • mariadb
      • mssql
      • db2
      • oracle
      • sisu
    • KIE Server External Database User (KIE_SERVER_EXTERNALDB_USER)和 KIE Server External Database Password (KIE_SERVER_EXTERNALDB_PWD):外部数据库服务器的用户名和密码
    • KIE Server External Database URL (KIE_SERVER_EXTERNALDB_URL):外部数据库服务器的 JDBC URL

      注意

      如果您使用 EntrepriseDB Postgres 数据库服务器,请使用以 jdbc:postgresql:// 开头的 URL,而不使用 jdbc:edb://。或者,不要设置 URL,而是设置主机和端口参数。

    • KIE Server External Database Host (KIE_SERVER_EXTERNALDB_SERVICE_HOST)和 KIE Server External Database Port (KIE_SERVER_EXTERNALDB_SERVICE_PORT):外部数据库服务器的主机名和端口号。您可以将这些参数设置为设置 KIE_SERVER_EXTERNALDB_URL 参数的替代选择。
    • KIE Server External Database Dialect (KIE_SERVER_EXTERNALDB_DIALECT):服务器的 Hibernate 空间,具体取决于服务器类型。常见设置有:

      • org.hibernate.dialect.MySQL5InnoDBDialect
      • org.hibernate.dialect.MySQL8Dialect
      • org.hibernate.dialect.MariaDB102Dialect
      • org.hibernate.dialect.PostgreSQL95Dialect
      • org.hibernate.dialect.PostgresPlusDialect (用于 EntrepriseDB Postgres Advanced Server)
      • org.hibernate.dialect.SQLServer2012Dialect (用于 MS SQL)
      • org.hibernate.dialect.DB2Dialect
      • org.hibernate.dialect.Oracle10gDialect
      • org.hibernate.dialect.SybaseASE15Dialect

        有关支持的 dialects 列表,请参阅 Red Hat JBoss EAP 文档中的 Hibernate 属性中的 Hibernate SQL Dialects 表。

    • KIE 服务器外部数据库名称 (KIE_SERVER_EXTERNALDB_DB):在外部数据库服务器上使用的数据库名称
    • JDBC 连接检查器类 (KIE_SERVER_EXTERNALDB_CONNECTION_CHECKER): 数据库服务器的 JDBC 连接检查程序类的名称。如果没有此信息,则数据库服务器连接在丢失后无法恢复,例如,如果数据库服务器被重启。
    • JDBC Exception Sorter 类 (KIE_SERVER_EXTERNALDB_EXCEPTION_SORTER):数据库服务器的 JDBC 异常分类器类的名称。如果没有此信息,则数据库服务器连接在丢失后无法恢复,例如,如果数据库服务器被重启。
  2. 如果您为使用外部数据库服务器创建了自定义镜像,如 第 7.10 节 “为外部数据库构建自定义 KIE 服务器扩展镜像” 所述,请设置以下参数:

    • 驱动程序扩展镜像 (EXTENSIONS_IMAGE):扩展镜像的 ImageStreamTag 定义,如 jboss-kie-db2-extension-openshift-image:11.1.4.4
    • Driver ImageStream Namespace (EXTENSIONS_IMAGE_NAMESPACE):上传扩展镜像的命名空间,如 openshift 或项目命名空间。
  3. 如果您使用 MySQL 版本 8 外部数据库服务器,请启用 mysql_native_password 插件并使用它来进行身份验证。有关此插件的说明,请参阅 MySQL 8.0 Reference Manual 中的 原生可插拔身份验证

    如果您在 Red Hat OpenShift Container Platform 上使用红帽提供的 MySQL 版本 8 镜像来启用该插件,请将 MYSQL_DEFAULT_AUTHENTICATION_PLUGIN 环境变量设置为 mysql_native_password

    如果您在启用 mysql_native_password 插件前在 MySQL 版本 8 服务器上创建了用户,则必须在启用插件后更新 mysql-user 表。

后续步骤

如有必要,设置附加参数。

如果要配置 EJB 计时器,您必须为 KIE 服务器运行时数据和 EJB 计时器数据使用两个不同的数据库。要使用不同数据库或模式配置 EJB 计时器,请参阅 第 9.1.12 节 “使用不同数据库或模式配置 EJB 计时器”

要完成部署,请按照 第 9.1.14 节 “为编写环境完成模板部署” 中的步骤操作。

9.1.12. 使用不同数据库或模式配置 EJB 计时器

Red Hat Process Automation Manager 数据库模式和 EJB_JBOSS_TIMER 模式不应共享相同的数据库模式。为避免冲突,您可以配置单独的 EJB 计时器数据库来存储集群计时器。

先决条件

  • 二级数据库可用。

流程

  1. 通过设置以下环境变量来禁用自动 EJB 计时器配置:

    • AUTO_CONFIGURE_ejb_TIMER 设置为 false
    • EJB_TIMER 数据源前缀放在 DATASOURCES 环境变量上的 RHPAM 数据库之前,例如:DATASOURCE S="EJB_TIMER,RHPAM"。
    • 以下 XA 变量:

      EJB_TIMER_XA_CONNECTION_PROPERTY_URL=<url>

      EJB_TIMER_NONXA="false"

    • 使用 JAVA_OPTS_APPEND 的以下系统属性:

      -Dorg.jbpm.ejb.timer.tx=true

      -Dorg.jbpm.ejb.timer.local.cache=false

例如:

apiVersion: app.kiegroup.org/v2
kind: KieApp
metadata:
  name: test
spec:
  environment: rhpam-authoring
  objects:
    servers:
      - id: 'test-kieserver'
        name: 'test-kieserver'
        env:
          - name: DATASOURCES
            value: 'EJB_TIMER,RHPAM'
          - name: RHPAM_JNDI
            value: 'java:jboss/datasources/rhpam'
          - name: RHPAM_CONNECTION_CHECKER
            value: 'org.jboss.jca.adapters.jdbc.extensions.oracle.OracleValidConnectionChecker'
          - name: RHPAM_EXCEPTION_SORTER
            value: 'org.jboss.jca.adapters.jdbc.extensions.oracle.OracleExceptionSorter'
          - name: RHPAM_NONXA
            value: 'true'
          - name: RHPAM_URL
            value: 'jdbc:oracle:thin:@localhost:1521:rhpam'
          - name: RHPAM_DRIVER
            value: 'oracle'
          - name: KIE_SERVER_PERSISTENCE_DIALECT
            value: 'org.hibernate.dialect.OracleDialect'
          - name: RHPAM_USERNAME
            value: user
          - name: RHPAM_PASSWORD
            value: pwd
          - name: EJB_TIMER_XA_CONNECTION_PROPERTY_URL
            value: 'jdbc:oracle:thin:@localhost:1521:rhpam_ejbtimer'
          - name: EJB_TIMER_JNDI
            value: 'java:jboss/datasources/ejb_timer'
          - name: EJB_TIMER_TX_ISOLATION
            value: TRANSACTION_READ_COMMITTED
          - name: EJB_TIMER_CONNECTION_CHECKER
            value: 'org.jboss.jca.adapters.jdbc.extensions.oracle.OracleValidConnectionChecker'
          - name: EJB_TIMER_EXCEPTION_SORTER
            value: 'org.jboss.jca.adapters.jdbc.extensions.oracle.OracleExceptionSorter'
          - name: EJB_TIMER_DRIVER
            value: 'oracle'
          - name: EJB_TIMER_USERNAME
            value: user
          - name: EJB_TIMER_PASSWORD
            value: pwd
          - name: EJB_TIMER_NONXA
            value: 'false'
          - name: TIMER_SERVICE_DATA_STORE
            value: EJB_TIMER
          - name: JAVA_OPTS_APPEND
            value: '-Dorg.jbpm.ejb.timer.tx=true -Dorg.jbpm.ejb.timer.local.cache=false'
          - name: AUTO_CONFIGURE_EJB_TIMER
            value: 'false'

要完成部署,请按照 第 9.1.14 节 “为编写环境完成模板部署” 中的步骤操作。

9.1.13. 为编写环境启用 Prometheus 指标集合

如果要将 KIE 服务器部署配置为使用 Prometheus 来收集和存储指标,请在部署过程中在 KIE Server 中启用对这个功能的支持。

先决条件

流程

要启用 Prometheus 指标集合的支持,请将 Prometheus Server Extension Disabled (PROMETHEUS_SERVER_EXT_DISABLED)参数设置为 false

后续步骤

如有必要,设置附加参数。

要完成部署,请按照 第 9.1.14 节 “为编写环境完成模板部署” 中的步骤操作。

有关配置 Prometheus 指标集合的说明,请参阅 管理和监控 KIE Server

9.1.14. 为编写环境完成模板部署

在 OpenShift Web UI 或命令行中设置所有必要的参数后,完成模板的完整部署。

流程

根据您使用的方法,完成以下步骤:

  • 在 OpenShift Web UI 中,单击 Create

    • 如果 这将创建可能具有安全或项目行为影响消息的资源,请单击 Create Anyway
  • 完成命令行并按 Enter 键。

后续步骤

根据您的环境需求,(可选)完成 第 13 章 部署环境后的可选流程 中描述的步骤。

9.2. 启用 OpenShiftStartupStrategy 设置,将额外的 KIE 服务器连接到 Business Central

在使用红帽流程自动化管理器编写模板部署的环境中,Business Central 负责管理一个 KIE Server。如果您使用高质量的编写模板,或者修改了单个编写模板以使用嵌入式 H2 数据库以外的数据库服务器,您可以扩展 KIE Server pod,但所有副本都执行相同的服务。

您可以将额外的 KIE 服务器连接到 Business Central。但是,如果您使用 rhpam712-authoring.yaml 部署单个编写环境,则必须在环境中启用 OpenShiftStartupStrategy 设置。启用 OpenShiftStartupStrategy 时,Business Central 会自动发现同一命名空间中的 KIE 服务器,这些 KIE 服务器可以配置为连接到 Business Central。

使用 OpenShiftStartupStrategy 设置时,当用户将服务部署到 KIE 服务器时,会再次推出 KIE Server 部署。在推出完成前,用户无法将另一个服务部署到同一个 KIE 服务器。由于推出可能需要一些时间,所以 OpenShiftStartupStrategy 设置可能不适用于某些编写环境。

如果您使用 rhpam712-authoring-ha.yaml 模板部署了高可用性创建环境,请不要完成这个步骤。在这个环境中,OpenShiftStartupStrategy 设置会被默认启用。

除非您要将额外的 KIE 服务器连接到 Business Central,否则请不要完成此流程。

先决条件

  • 已使用 rhpam712-authoring.yaml 模板部署了编写环境。
  • 您可以使用 oc 工具登录到部署环境的 OpenShift 项目。

流程

  1. 输入以下命令查看项目中部署的部署配置:

    $ oc get dc
  2. 在命令的输出中,查找 Business Central 和 KIE Server pod 的部署配置名称:

    • Business Central 的部署配置的名称是 myapp-rhpamcentr。使用环境的应用名称替换 myapp,这在模板的 APPLICATION_NAME 参数中设置。
    • KIE 服务器的部署配置名称为 myapp-kieserver。使用应用程序名称替换 myapp
  3. 输入以下命令在 pod 上启用 OpenShiftStartupStrategy 设置:

    $ oc env myapp-rhpamcentr KIE_SERVER_CONTROLLER_OPENSHIFT_ENABLED=true
    $ oc env myapp-kieserver KIE_SERVER_STARTUP_STRATEGY=OpenShiftStartupStrategy

    在这些命令中,将 myapp-rhpamcentr 替换为 Business Central 部署配置名称,将 myapp-kieserver 替换为 KIE 服务器部署配置名称。

  4. 当您启用 OpenShiftStartupStrategy 设置时,默认情况下,Business Central 只发现部署的 KIE 服务器,其值 与 creation 模板相同。如果要将 KIE 服务器与其它应用程序名称连接到 Business Central,请输入以下命令:

    $ oc env myapp-rhpamcentr KIE_SERVER_CONTROLLER_OPENSHIFT_GLOBAL_DISCOVERY_ENABLED=true

    在这个命令中,将 myapp-rhpamcentr 替换为 Business Central 部署配置名称。

9.3. 为单个编写环境修改模板

默认情况下,单个编写模板使用带有持久存储的 H2 数据库。如果您希望创建 MySQL 或 PostgreSQL 容器集或使用外部数据库服务器(在 OpenShift 项目之外),请在部署环境前修改模板。

如果要扩展 KIE Server pod,则必须使用 MySQL 或 PostgreSQL pod 或外部数据库服务器。OpenShift 模板定义了一组可由 OpenShift 创建的对象。要更改环境配置,您需要修改、添加或删除这些对象。为简化此任务,Red Hat Process Automation Manager 模板中提供了注释。

模板中的一些注释标记块,以 BEGIN 和结尾处 结束。例如,以下块被命名为 Sample block

## Sample block BEGIN
sample line 1
sample line 2
sample line 3
## Sample block END

对于某些更改,您可能需要将一个模板文件中的块替换为由 Red Hat Process Automation Manager 提供的另一个模板文件的块。在这种情况下,删除块,然后将新块粘贴到其确切的位置。

流程

编辑 rhpam712-authoring.yaml 模板文件,以根据需要进行以下更改。

  • 如果要使用 MySQL 而不是 H2 数据库,则需要替换文件的多个块,将 BEGIN 中的注释标记为 END,使用 rhpam712-kieserver-mysql.yaml 文件中的块被标记为注释。您还需要删除其他块并在指定位置中添加块:

    1. 将名为 H2 数据库参数 的块替换为名为 MySQL 数据库参数 的块。(使用此块以及 rhpam712-kieserver-mysql.yaml 文件中的所有后续替换块。)
    2. 将名为 H2 驱动程序设置 的块替换为名为 MySQL 驱动程序设置 的块。
    3. 将名为 H2 持久卷声明 的块替换为名为 MySQL 持久卷声明 的块。
    4. 删除名为 H2 volume mountH2 volume settings 的块。
    5. 在注释 Place 下添加数据库服务,添加名为 MySQL service 的块。
    6. 在注释 Place 下添加数据库部署配置,添加名为 MySQL 部署配置的 块。
  • 如果要使用 PostgreSQL 而不是 H2 数据库,则需要替换文件的多个块,将 BEGIN 中的注释标记为 END,使用 rhpam712-kieserver-postgresql.yaml 文件中的块被标记为注释。您还需要删除其他块并在指定位置中添加块:

    1. 将名为 H2 数据库参数 的块替换为名为 PostgreSQL 数据库参数 的块。(使用此块以及 rhpam712-kieserver-postgresql.yaml 文件中的所有后续替换块。)
    2. 将名为 H2 驱动程序设置 的块替换为名为 PostgreSQL 驱动程序设置 的块。
    3. 将名为 H2 持久卷声明 的块替换为名为 PostgreSQL 持久卷声明 的块。
    4. 删除名为 H2 volume mountH2 volume settings 的块。
    5. 在注释 Place 以添加数据库服务 下,添加名为 PostgreSQL 服务 的块。
    6. 在注释 Place 下添加数据库部署配置,添加名为 PostgreSQL 部署配置的 块。
  • 如果要使用外部数据库服务器,替换文件的多个块,将 BEGIN 中的注释标记为 END,使用 rhpam712-kieserver-externaldb.yaml 文件中的块,并删除一些块:

    1. 将名为 H2 数据库参数 的块替换为名为 External database parameters 的块。(使用此块以及 rhpam712-kieserver-externaldb.yaml 文件中的所有后续替换块。)
    2. 将名为 H2 驱动程序设置 的块替换为名为 External database driver settings 的块。
    3. 删除文件的以下块,并标记为 BEGIN 中的注释到 END

      • H2 持久性卷声明
      • H2 卷挂载
      • H2 卷设置
重要

标准 KIE 服务器镜像包括 MySQL、MariaDB 和 PostgreSQL 外部数据库服务器的驱动程序。如果要使用另一个数据库服务器,您必须构建自定义 KIE Server 镜像。具体说明请查看 第 7.10 节 “为外部数据库构建自定义 KIE 服务器扩展镜像”

9.4. 为高可用性编写环境修改模板

默认情况下,高可用性创建模板创建一个 MySQL pod,以便为 KIE 服务器提供数据库服务器。如果您希望使用 PostgreSQL 或使用外部服务器(在 OpenShift 项目之外),则需要在部署环境前修改模板。

您还可以修改高可用性编写模板,以更改最初为 Business Central 创建的副本数。

OpenShift 模板定义了一组可由 OpenShift 创建的对象。要更改环境配置,您需要修改、添加或删除这些对象。为简化此任务,Red Hat Process Automation Manager 模板中提供了注释。

模板中的一些注释标记块,以 BEGIN 和结尾处 结束。例如,以下块被命名为 Sample block

## Sample block BEGIN
sample line 1
sample line 2
sample line 3
## Sample block END

对于某些更改,您可能需要将一个模板文件中的块替换为由 Red Hat Process Automation Manager 提供的另一个模板文件的块。在这种情况下,删除块,然后将新块粘贴到其确切的位置。

流程

编辑 rhpam712-authoring-ha.yaml 模板文件,以根据需要进行以下更改。

  • 如果要使用 PostgreSQL 而不是 MySQL,替换文件的多个块(从 BEGINEND 标记为注释),使用 rhpam712-kieserver-postgresql.yaml 文件中的内容替换它们。

    1. 将名为 MySQL 数据库参数 的块替换为名为 PostgreSQL 数据库参数 的块。(使用此块以及 rhpam712-kieserver-postgresql.yaml 文件中的所有后续替换块。)
    2. 将名为 MySQL service 的块替换为名为 PostgreSQL 服务 的块。
    3. 将名为 MySQL 驱动程序设置 的块替换为名为 PostgreSQL 驱动程序设置 的块。
    4. 将名为 MySQL 部署配置的块替换为 名为 PostgreSQL 部署配置的块
    5. 将名为 MySQL 持久卷声明 的块替换为名为 PostgreSQL 持久卷声明 的块。
  • 如果要使用外部数据库服务器,替换文件的多个块,将 BEGIN 中的注释标记为 END,使用 rhpam712-kieserver-externaldb.yaml 文件中的块,并删除一些块:

    1. 将名为 MySQL 数据库参数 的块替换为名为 External database parameters 的块。(使用此块以及 rhpam712-kieserver-externaldb.yaml 文件中的所有后续替换块。)
    2. 将名为 MySQL 驱动程序设置 的块替换为名为 External database driver settings 的块。
    3. 删除文件的以下块,并标记为 BEGIN 中的注释到 END

      • MySQL 服务
      • MySQL 部署配置
      • MySQL 持久性卷声明
重要

标准 KIE 服务器镜像包括 MySQL、MariaDB 和 PostgreSQL 外部数据库服务器的驱动程序。如果要使用另一个数据库服务器,您必须构建自定义 KIE Server 镜像。具体说明请查看 第 7.10 节 “为外部数据库构建自定义 KIE 服务器扩展镜像”

  • 如果您想要更改最初为 Business Central 创建的副本数,请在注释其下面的一行中更改 Business Central 创建的副本数,请将副本数更改为所需的值。

第 10 章 带有不可变服务器的环境

您可以使用预加载服务部署包含一个或多个运行 不可变 KIE Server 的 pod 的环境。默认情况下,数据库服务器也在 pod 中运行。每个 KIE Server pod 可以根据需要单独扩展。

在不可变 KIE 服务器上,创建镜像时,任何服务都必须加载到服务器中。您无法在运行的不可变 KIE 服务器上部署或取消部署服务。这种方法的优势在于,KIE 服务器像任何其他容器化服务一样运行,且不需要特殊的管理。KIE 服务器像 OpenShift 环境中的任何其他 pod 一样运行;您可以根据需要使用任何基于容器的集成工作流。

当您创建 KIE 服务器镜像时,您可以使用 S2I (源到镜像)构建您的服务。为您的服务和其他业务资产来源提供 Git 存储库;如果您在 Business Central 中开发服务或资产,请将源复制到 S2I 构建的独立存储库中。OpenShift 会自动构建源,将服务安装到 KIE Server 镜像,并使用服务启动容器。

如果您使用 Business Central 编写服务,您可以提取流程的来源,并将其放入单独的 Git 存储库(如 GitHub 或 GitLab 的内部安装),以便在 S2I 构建中使用。

或者,您可以使用已经构建为 KJAR 文件的服务创建类似的 KIE 服务器部署。在这种情况下,您必须在 Maven 存储库中提供服务。您可以使用 Business Central 或您自己的存储库(如 Nexus 部署)的内置存储库。当服务器 pod 启动时,它会从 Maven 存储库检索 KJAR 服务。pod 上的服务永不会更新或更改。每次重启或缩放 pod 时,服务器从存储库检索文件,因此您必须确保在 Maven 存储库上不更改文件,以保持部署不可变。

使用这两种创建不可变镜像的方法,无需进一步管理镜像。如果要使用服务的新版本,您可以构建新镜像。

另外,您还可以在您的环境中添加 Business Central Monitoring 和 Smart Router。使用 Business Central Monitoring 在 KIE 服务器上启动、停止和监控服务。

10.1. 为具有不可变服务器的环境部署 Business Central 监控和智能路由器

您可以为具有不可变服务器的环境部署 Business Central 监控和智能路由器。

您可以使用 Business Central Monitoring 在 KIE 服务器上启动和停止(但不部署)服务并查看监控数据。Business Central 监控会自动发现同一命名空间中的任何 KIE 服务器,包括不可变 KIE 服务器和管理 KIE 服务器。此功能需要 OpenShiftStartupStrategy 设置,该设置为所有 KIE 服务器默认启用,除了在固定管理的基础架构中部署。有关使用 OpenShiftStartupStrategy 设置部署受管 KIE 服务器的说明,请参阅 第 11.2 节 “为自由环境部署额外的管理的 KIE 服务器”

智能路由器是一个端点,可以从客户端应用程序接收调用到任何服务,并将每个调用自动路由到运行该服务的服务器。

如果要使用 Business Central Monitoring,您必须提供一个 Maven 存储库。您的集成过程必须确保 Maven 存储库中也提供了内置到任何 KIE Server 镜像中的所有 KJAR 文件版本。

10.1.1. 启动用于监控和智能路由器的模板配置

要为具有不可变服务器的环境部署监控和智能路由器,请使用 rhpam712-immutable-monitor.yaml 模板文件。

流程

  1. 从红帽客户门户网站的 Software Downloads 页面下载 rhpam-7.12.0-openshift-templates.zip 产品提供的可交付文件。
  2. 提取 rhpam712-immutable-monitor.yaml 模板文件。
  3. 使用以下方法之一开始部署模板:

    • 要使用 OpenShift Web UI,在 OpenShift 应用程序控制台中选择 Add to Project → Import YAML / JSON,然后选择或粘贴 rhpam712-immutable-monitor.yaml 文件。在 Add Template 窗口中 ,确保选择了模板 并单击 Continue
    • 要使用 OpenShift 命令行控制台,请准备以下命令行:

      oc new-app -f <template-path>/rhpam712-immutable-monitor.yaml -p BUSINESS_CENTRAL_HTTPS_SECRET=businesscentral-app-secret -p PARAMETER=value

      在这个命令行中,进行以下更改:

      • <template-path > 替换为下载的模板文件的路径。
      • 根据需要,使用多个 -p PARAMETER=value 对来设置所需的参数。

后续步骤

设置模板的参数。按照 第 10.1.2 节 “设置监控和智能路由器所需的参数” 中的步骤设置通用参数。您可以查看模板文件以查看所有参数的描述。

10.1.2. 设置监控和智能路由器所需的参数

在配置模板以为具有不可变服务器的环境部署监控和智能路由器时,您必须在所有节点上设置以下参数。

先决条件

流程

  1. 设置以下参数:

    • 凭证 secret (CREDENTIALS_SECRET):包含管理用户凭证的 secret 名称,如 第 7.5 节 “为管理用户创建 secret” 中创建。
    • Business Central Monitoring Server Keystore Secret Name (BUSINESS_CENTRAL_HTTPS_SECRET): Business Central 的机密名称,如 第 7.3 节 “为 Business Central 创建 secret” 中创建。
    • Smart Router Keystore Secret Name (KIE_SERVER_ROUTER_HTTPS_SECRET): 智能路由器 secret 的名称,如 第 7.4 节 “为智能路由器创建 secret” 中创建。
    • Business Central 监控服务器证书名称 (BUSINESS_CENTRAL_HTTPS_NAME):您在 第 7.3 节 “为 Business Central 创建 secret” 中创建的密钥存储中的证书名称。
    • Business Central Monitoring Server Keystore Password (BUSINESS_CENTRAL_HTTPS_PASSWORD):您在 第 7.3 节 “为 Business Central 创建 secret” 中创建的密钥存储的密码。
    • 智能路由器证书名称 (KIE_SERVER_ROUTER_HTTPS_NAME):您在 第 7.4 节 “为智能路由器创建 secret” 中创建的密钥存储中的证书名称。
    • Smart Router Keystore Password (KIE_SERVER_ROUTER_HTTPS_PASSWORD):您在 第 7.4 节 “为智能路由器创建 secret” 中创建的密钥存储的密码。
    • 应用名称 (APPLICATION_NAME):OpenShift 应用的名称。它用于 Business Central Monitoring 和 KIE 服务器的默认 URL。OpenShift 使用应用程序名称来创建单独的一组部署配置、服务、路由、标签和工件。
    • 启用 KIE 服务器全局发现 (KIE_SERVER_CONTROLLER_OPENSHIFT_GLOBAL_DISCOVERY_ENABLED):如果您希望 Business Central Monitoring 使用同一命名空间中的 OpenShiftStartupStrategy 发现所有 KIE 服务器,请将此参数设置为 true。默认情况下,Business Central Monitoring 仅会发现使用与 Business Central Monitoring 本身相同的 APPLICATION_NAME 参数的值部署的 KIE 服务器。
    • Maven 存储库 URL (MAVEN_REPO_URL): Maven 存储库的 URL。您必须将要在环境中任何 KIE 服务器实例上部署的所有进程(KJAR 文件)上传到此存储库中。
    • Maven 存储库 ID (MAVEN_REPO_ID):Maven 存储库的标识符。默认值为 repo-custom
    • Maven 存储库用户名 (MAVEN_REPO_USERNAME): Maven 存储库的用户名。
    • Maven 存储库密码 (MAVEN_REPO_PASSWORD): Maven 存储库的密码。
    • ImageStream Namespace (IMAGE_STREAM_NAMESPACE):镜像流可用的命名空间。如果 OpenShift 环境中已存在镜像流(请参阅 第 7.1 节 “确保镜像流和镜像 registry 的可用性”),则命名空间为 openshift。如果您已安装镜像流文件,则命名空间是 OpenShift 项目的名称。

后续步骤

如有必要,设置附加参数。

要完成部署,请按照 第 10.1.6 节 “完成用于监控和智能路由器的模板部署” 中的步骤操作。

10.1.3. 配置用于监控和智能路由器的镜像流命名空间

如果在不是 openshift 的命名空间中创建了镜像流,则必须在模板中配置命名空间。

如果 Red Hat OpenShift Container Platform 环境中已提供了所有镜像流,您可以跳过这个过程。

先决条件

流程

如果您根据 第 7.1 节 “确保镜像流和镜像 registry 的可用性” 中的说明安装了镜像流文件,请将 ImageStream Namespace (IMAGE_STREAM_NAMESPACE)参数设置为 OpenShift 项目的名称。

10.1.4. 为监控和智能路由器设置 RH-SSO 身份验证的参数

如果要使用 RH-SSO 身份验证,请在配置模板时完成以下额外配置,以便为具有不可变服务器的环境部署监控和智能路由器。

重要

不要在同一部署中配置 LDAP 身份验证和 RH-SSO 身份验证。

先决条件

  • 在 RH-SSO 身份验证系统中创建 Red Hat Process Automation Manager 的域。
  • Red Hat Process Automation Manager 的用户名和密码在 RH-SSO 身份验证系统中创建。有关可用角色的列表,请参阅 第 14 章 Red Hat Process Automation Manager 角色和用户

    您必须为管理用户创建带有在 secret 中配置的用户名和密码的用户,如 第 7.5 节 “为管理用户创建 secret” 所述。此用户必须具有 kie-server,rest-all,admin 角色。

  • 客户端是在 RH-SSO 身份验证系统中为您要部署的 Red Hat Process Automation Manager 环境的所有组件中创建的。客户端设置包含组件的 URL。在部署环境后,您可以检查并编辑 URL。另外,红帽流程自动化管理器部署可以创建客户端。但是,此选项对环境提供较少的详细控制。
  • 您启动了模板的配置,如 第 10.1.1 节 “启动用于监控和智能路由器的模板配置” 所述。

流程

  1. 设置以下参数:

    • RH-SSO URL (SSO_URL): RH-SSO 的 URL。
    • RH-SSO Realm 名称 (SSO_REALM):红帽流程自动化管理器的 RH-SSO 域。
    • RH-SSO 禁用 SSL 证书验证 (SSO_DISABLE_SSL_CERTIFICATE_VALIDATION):如果您的 RH-SSO 安装不使用有效的 HTTPS 证书,则设置为 true
  2. 完成以下流程之一:

    1. 如果您在 RH-SSO 中为 Red Hat Process Automation Manager 创建客户端,请在模板中设置以下参数:

      • Business Central Monitoring RH-SSO Client name (BUSINESS_CENTRAL_SSO_CLIENT): Business Central Monitoring 的 RH-SSO 客户端名称。
      • Business Central Monitoring RH-SSO Client Secret (BUSINESS_CENTRAL_SSO_SECRET):用于 Business Central Monitoring 客户端的 RH-SSO 中设置的机密字符串。
    2. 要在 RH-SSO 中为 Red Hat Process Automation Manager 创建客户端,请在模板中设置以下参数:

      • Business Central Monitoring RH-SSO Client name (BUSINESS_CENTRAL_SSO_CLIENT):要在 RH-SSO 中为 Business Central Monitoring 创建的客户端名称。
      • Business Central Monitoring RH-SSO Client Secret (BUSINESS_CENTRAL_SSO_SECRET):用于 Business Central Monitoring 客户端的 RH-SSO 中设置的机密字符串。
      • RH-SSO Realm Admin Username (SSO_USERNAME)和 RH-SSO Realm Admin Password (SSO_PASSWORD):红帽流程自动化管理器的 RH-SSO 域的用户名和密码。您必须提供此用户名和密码来创建所需的客户端。

后续步骤

如有必要,设置附加参数。

要完成部署,请按照 第 10.1.6 节 “完成用于监控和智能路由器的模板部署” 中的步骤操作。

完成部署后,查看 RH-SSO 身份验证系统中 Red Hat Process Automation Manager 组件的 URL,以确保它们正确。

10.1.5. 为监控和智能路由器设置 LDAP 身份验证的参数

如果要使用 LDAP 身份验证,在配置模板为具有不可变服务器的环境部署监控和智能路由器时,完成以下额外配置。

重要

不要在同一部署中配置 LDAP 身份验证和 RH-SSO 身份验证。

先决条件

流程

  1. 设置模板的 AUTH_LDAP* 参数。这些参数使用红帽 JBoss EAP 的 Elytron 子系统配置 LDAP 身份验证。有关在 LDAP 中使用 Red Hat JBoss EAP 的 Elytron 子系统的更多信息,请参阅使用 基于 LDAP 的身份存储配置身份验证

    注意

    如果要启用 LDAP 故障转移,您可以在 AUTH_LDAP_URL 参数中放置设置或更多 LDAP 服务器地址,用空格分隔。

    如果 LDAP 服务器没有定义部署所需的所有角色,您可以将 LDAP 组映射到 Red Hat Process Automation Manager 角色。要启用 LDAP 角色映射,请设置以下参数:

    • RoleMapping rolesProperties 文件路径或一行角色 (AUTH_ROLE_MAPPER_ROLES_PROPERTIES):定义角色映射的文件的完全限定路径名称,如 /opt/eap/standalone/configuration/rolemapping.properties。您必须提供此文件,并在所有适用的部署配置中的这个路径中挂载该文件 ; 有关说明,请参阅 第 13.3 节 “(可选)提供 LDAP 角色映射文件”

      或者,您可以使用 role=role1,role2;another-role=role2 pattern (如 admins=kie-server,rest-all,admin;developers=kie-server,rest-all,admin;developers=kie-server,rest-all )在此属性中输入角色映射设置。

    • 角色映射程序 Keep Mapped (AUTH_LDAP_MAPPER_KEEP_MAPPED):如果设为 true,则 LDAP 服务器上定义的映射角色和角色都设置为 用户应用角色;如果设为 false,则映射的角色将替换 LDAP 服务器上定义的角色。默认设置为 false
    • 角色映射程序 Keep Non-mapped (AUTH_LDAP_MAPPER_KEEP_NON_MAPPED):如果设为 true,则 LDAP 服务器上定义的角色不是用户应用角色;如果设为 false,则没有映射的角色会被删除。默认设置为 false

后续步骤

如有必要,设置附加参数。

要完成部署,请按照 第 10.1.6 节 “完成用于监控和智能路由器的模板部署” 中的步骤操作。

10.1.6. 完成用于监控和智能路由器的模板部署

在 OpenShift Web UI 或命令行中设置所有必要的参数后,完成模板的完整部署。

流程

根据您使用的方法,完成以下步骤:

  • 在 OpenShift Web UI 中,单击 Create

    • 如果 这将创建可能具有安全或项目行为影响消息的资源,请单击 Create Anyway
  • 完成命令行并按 Enter 键。

后续步骤

根据您的环境需求,(可选)完成 第 13 章 部署环境后的可选流程 中描述的步骤。

10.2. 使用 S2I 构建部署不可变 KIE 服务器

您可以使用 S2I 构建部署不可变的 KIE 服务器。当您部署服务器时,部署过程会检索在此服务器上运行的任何服务的源代码,构建服务,并在服务器镜像中包括这些服务。

您无法在运行的不可变 KIE 服务器上部署或取消部署服务。您可以使用 Business Central 或 Business Central Monitoring 来查看监控信息。KIE 服务器像 OpenShift 环境中的任何其他 pod 一样运行;您可以根据需要使用任何基于容器的集成工作流。

您可以为不可变 KIE 服务器启用 JMS 功能。通过 JMS 功能,您可以使用外部 AMQ 消息代理通过 JMS API 与服务器交互。

默认情况下,此服务器使用 pod 中的 PostgreSQL 数据库服务器。要在 pod 或外部数据库服务器中使用 MySQL 数据库服务器,您可以修改该模板。有关修改模板的步骤,请参考 第 10.3 节 “修改模板以使用 S2I 部署不可变 KIE 服务器”

如果 Business Central 或 Business Central Monitoring 部署在同一命名空间中,它会自动发现不可变的 KIE 服务器。您可以使用 Business Central 或 Business Central Monitoring 在不可变 KIE 服务器上启动和停止(但不部署)服务,并查看监控数据。

10.2.1. 使用 S2I 启动不可变 KIE 服务器的模板配置

要使用 S2I 构建部署不可变 KIE 服务器,如果要启用 JMS 功能,请使用 rhpam712-prod-immutable-kieserver-amq.yaml 模板文件。否则,使用 rhpam712-prod-immutable-kieserver.yaml 模板文件。

流程

  1. 从红帽客户门户网站的 Software Downloads 页面下载 rhpam-7.12.0-openshift-templates.zip 产品提供的可交付文件。
  2. 提取所需的模板文件。
  3. 默认情况下,模板包含两个 KIE 服务器。每个服务都使用 pod 中的 PostgreSQL 数据库服务器。要更改 KIE Servers 的数量或使用 pod 或外部数据库服务器中的 MySQL 数据库服务器,请修改模板,如 第 10.3 节 “修改模板以使用 S2I 部署不可变 KIE 服务器” 所述。
  4. 使用以下方法之一开始部署模板:

    • 要使用 OpenShift Web UI,在 OpenShift 应用程序控制台中选择 Add to Project → Import YAML / JSON,然后选择或粘贴 < template-file-name>.yaml 文件。在 Add Template 窗口中 ,确保选择了模板 并单击 Continue
    • 要使用 OpenShift 命令行控制台,请准备以下命令行:

      oc new-app -f <template-path>/<template-file-name>.yaml -p KIE_SERVER_HTTPS_SECRET=kieserver-app-secret -p PARAMETER=value

      在这个命令行中,进行以下更改:

      • <template-path > 替换为下载的模板文件的路径。
      • <template-file-name > 替换为模板文件的名称。
      • 根据需要,使用多个 -p PARAMETER=value 对来设置所需的参数。

后续步骤

设置模板的参数。按照 第 10.2.2 节 “使用 S2I 为不可变 KIE 服务器设置所需的参数” 中的步骤设置通用参数。您可以查看模板文件以查看所有参数的描述。

10.2.2. 使用 S2I 为不可变 KIE 服务器设置所需的参数

当将模板配置为使用 S2I 构建部署不可变 KIE 服务器时,您必须在所有节点上设置以下参数。

先决条件

流程

  1. 设置以下参数:

    • 凭证 secret (CREDENTIALS_SECRET):包含管理用户凭证的 secret 名称,如 第 7.5 节 “为管理用户创建 secret” 中创建。
    • KIE Server Keystore Secret Name (KIE_SERVER_HTTPS_SECRET):KIE 服务器的 secret 名称,如 第 7.2 节 “为 KIE 服务器创建 secret” 中创建的。
    • KIE 服务器证书名称 (KIE_SERVER_HTTPS_NAME):您在 第 7.2 节 “为 KIE 服务器创建 secret” 中创建的密钥存储中的证书名称。
    • KIE Server Keystore Password (KIE_SERVER_HTTPS_PASSWORD):您在 第 7.2 节 “为 KIE 服务器创建 secret” 中创建的密钥存储的密码。
    • 应用名称 (APPLICATION_NAME):OpenShift 应用的名称。它用于 Business Central Monitoring 和 KIE 服务器的默认 URL。OpenShift 使用应用程序名称来创建单独的一组部署配置、服务、路由、标签和工件。只要使用不同的应用名称,就可以使用同一模板将多个应用部署到同一项目中。另外,应用程序名称决定了此 KIE Server 实例在 Business Central 或 Business Central Monitoring 上加入的服务器配置(服务器模板)的名称。如果要部署多个 KIE 服务器实例,您必须确保每个服务器都有不同的应用程序名称。
    • KIE Server Container Deployment (KIE_SERVER_CONTAINER_DEPLOYMENT):在构建源后,部署必须从本地或外部存储库拉取的信息。格式为 <containerId>=<groupId>:<artifactId>:<version>,或如果您要为容器设置一个别名,则为<containerId>(<aliasId>)=<groupId>:<artifactId>:<version>。您可以使用 | 分隔符提供两个或多个 KJAR 文件,如下例所示:

      containerId=groupId:artifactId:version|c2(alias2)=g2:a2:v2

      为避免重复的容器 ID,工件 ID 必须与项目中构建或所使用的每个工件都是唯一的。

    • Git Repository URL (SOURCE_REPOSITORY_URL):包含服务源的 Git 存储库的 URL。
    • Git Reference (SOURCE_REPOSITORY_REF): Git 存储库中的分支。
    • 上下文目录 (CONTEXT_DIR):从 Git 存储库下载的项目中源的路径。
    • 工件 目录(ARTIFACT_DIR):项目内的路径,其中包含成功 Maven 构建后所需的二进制文件(KJAR 文件和任何其他必要的文件)。通常,此目录是构建的目标目录。但是,您可以在 Git 存储库中的这个目录中提供预构建二进制文件。
    • ImageStream Namespace (IMAGE_STREAM_NAMESPACE):镜像流可用的命名空间。如果 OpenShift 环境中已存在镜像流(请参阅 第 7.1 节 “确保镜像流和镜像 registry 的可用性”),则命名空间为 openshift。如果您已安装镜像流文件,则命名空间是 OpenShift 项目的名称。

后续步骤

如有必要,设置附加参数。

要完成部署,请按照 第 10.2.12 节 “使用 S2I 为不可变 KIE 服务器完成模板部署” 中的步骤操作。

10.2.3. 使用 S2I 为不可变 KIE 服务器配置镜像流命名空间

如果在不是 openshift 的命名空间中创建了镜像流,则必须在模板中配置命名空间。

如果 Red Hat OpenShift Container Platform 环境中已提供了所有镜像流,您可以跳过这个过程。

先决条件

流程

如果您根据 第 7.1 节 “确保镜像流和镜像 registry 的可用性” 中的说明安装了镜像流文件,请将 ImageStream Namespace (IMAGE_STREAM_NAMESPACE)参数设置为 OpenShift 项目的名称。

10.2.4. 使用 S2I 为不可变 KIE 服务器配置 Business Central 或 Business Central 监控实例的信息

如果要启用从同一命名空间中的 Business Central 或 Business Central Monitoring 实例的连接,则必须配置有关 Business Central 或 Business Central Monitoring 实例的信息。

Business Central 或 Business Central Monitoring 实例必须配置与 KIE 服务器相同的凭证 secret (CREDENTIALS_SECRET)。

先决条件

流程

  1. 设置以下参数:

    • Name of the Business Central service (BUSINESS_CENTRAL_SERVICE): Business Central 或 Business Central Monitoring 的 OpenShift 服务名称。

后续步骤

如有必要,设置附加参数。

要完成部署,请按照 第 10.2.12 节 “使用 S2I 为不可变 KIE 服务器完成模板部署” 中的步骤操作。

10.2.5. 使用 S2I 为不可变 KIE 服务器设置可选的 Maven 存储库

当将模板配置为使用 S2I 构建部署不可变 KIE 服务器时,如果您的源构建包含公共 Maven 树上不可用的依赖项,并且需要单独的自定义 Maven 存储库,则必须设置参数来访问存储库。

先决条件

流程

要配置对自定义 Maven 存储库的访问,请设置以下参数:

  • Maven 存储库 URL (MAVEN_REPO_URL): Maven 存储库的 URL。
  • Maven 存储库 ID (MAVEN_REPO_ID):Maven 存储库的标识符。默认值为 repo-custom
  • Maven 存储库用户名 (MAVEN_REPO_USERNAME): Maven 存储库的用户名。
  • Maven 存储库密码 (MAVEN_REPO_PASSWORD): Maven 存储库的密码。

后续步骤

如有必要,设置附加参数。

要完成部署,请按照 第 10.2.12 节 “使用 S2I 为不可变 KIE 服务器完成模板部署” 中的步骤操作。

10.2.6. 使用 S2I 为不可变 KIE 服务器配置对环境中 Maven 镜像的访问,而无需连接到公共互联网

当将模板配置为使用 S2I 构建部署不可变 KIE 服务器时,如果您的 OpenShift 环境没有连接到公共互联网,您必须配置对根据 第 7.9 节 “准备 Maven 镜像存储库以供离线使用” 设置的 Maven 镜像的访问。

先决条件

流程

要配置对 Maven 镜像的访问,请设置以下参数:

  • Maven 镜像 URL (MAVEN_MIRROR_URL): 您在 第 7.9 节 “准备 Maven 镜像存储库以供离线使用” 中设置的 Maven 镜像存储库的 URL。此 URL 必须从 OpenShift 环境中的容器集访问。
  • Maven 镜像 (MAVEN_MIRROR_OF):决定要从镜像检索哪些工件的值。有关设置 mirrorOf 值的说明,请参阅 Apache Maven 文档中的 Mirror Settings。默认值为 external:*。使用此值,Maven 从镜像检索每个所需的工件,且不会查询任何其他存储库。

    • 如果您配置外部 Maven 存储库(MAVEN_REPO_URL),请更改 MAVEN_MIRROR_OF,以从镜像中排除此仓库中的工件,如 external:*,!repo-custom。将 repo-custom 替换为您在 MAVEN_REPO_ID 中配置的 ID。
    • 如果您配置内置的 Business Central Maven 存储库(BUSINESS_CENTRAL_MAVEN_SERVICE),请更改 MAVEN_MIRROR_OF 以从镜像中排除此存储库中的工件: external:*,!repo-rhpamcentr
    • 如果您配置这两个存储库,请更改 MAVEN_MIRROR_OF,以从 mirror: external:*,!repo-rhpamcentr,!repo-custom 中排除这两个软件仓库中的工件。将 repo-custom 替换为您在 MAVEN_REPO_ID 中配置的 ID。

后续步骤

如有必要,设置附加参数。

要完成部署,请按照 第 10.2.12 节 “使用 S2I 为不可变 KIE 服务器完成模板部署” 中的步骤操作。

10.2.7. 使用 S2I 为不可变 KIE 服务器配置与 AMQ 服务器的通信

如果您使用 rhpam712-prod-immutable-kieserver-amq.yaml 模板文件,则启用 KIE Server JMS 功能。您可以使用外部 AMQ 消息代理通过 JMS API 与服务器交互。

如果需要,您可以修改 JMS 配置。

先决条件

流程

根据需要设置以下任何参数:

  • AMQ Username (AMQ_USERNAME)和 AMQ Password (AMQ_PASSWORD):环境中需要标准代理用户的用户名和密码。
  • AMQ Role (AMQ_ROLE):标准代理用户的用户角色。默认角色为 admin
  • AMQ Queues (AMQ_QUEUES): AMQ 队列名称,用逗号分隔。这些队列会在代理启动时自动创建,并可作为 JBoss EAP 服务器中的 JNDI 资源访问。如果您使用自定义队列名称,还必须在 KIE_SERVER_JMS_QUEUE_RESPONSE, KIE_SERVER_JMS_QUEUE_REQUEST, KIE_SERVER_JMS_QUEUE_SIGNAL, KIE_SERVER_JMS_QUEUE_AUDIT, 和 KIE_SERVER_JMS_QUEUE_EXECUTOR 参数中设置相同的队列名称。
  • AMQ Global Max Size (AMQ_GLOBAL_MAX_SIZE): 消息数据可以使用的最大内存量。如果没有指定值,则会分配 pod 中可用内存的一半。
  • AMQ 协议 (AMQ_PROTOCOL):KIE 服务器可用于与 AMQ 服务器通信的代理协议,用逗号分隔。允许的值有 openwireamqpstompmqtt。JBoss EAP 仅支持 openwire。默认值为 openwire
  • AMQ Broker Image (AMQ_BROKER_IMAGESTREAM_NAME): AMQ 代理镜像的镜像流名称。

后续步骤

如有必要,设置附加参数。

要完成部署,请按照 第 10.2.12 节 “使用 S2I 为不可变 KIE 服务器完成模板部署” 中的步骤操作。

10.2.8. 使用 S2I 为不可变 KIE 服务器设置 RH-SSO 身份验证参数

如果要使用 RH-SSO 身份验证,请在配置模板以使用 S2I 构建部署不可变 KIE 服务器时完成以下额外配置。

重要

不要在同一部署中配置 LDAP 身份验证和 RH-SSO 身份验证。

先决条件

  • 在 RH-SSO 身份验证系统中创建 Red Hat Process Automation Manager 的域。
  • Red Hat Process Automation Manager 的用户名和密码在 RH-SSO 身份验证系统中创建。有关可用角色的列表,请参阅 第 14 章 Red Hat Process Automation Manager 角色和用户

    您必须为管理用户创建带有在 secret 中配置的用户名和密码的用户,如 第 7.5 节 “为管理用户创建 secret” 所述。此用户必须具有 kie-server,rest-all,admin 角色。

  • 客户端是在 RH-SSO 身份验证系统中为您要部署的 Red Hat Process Automation Manager 环境的所有组件中创建的。客户端设置包含组件的 URL。在部署环境后,您可以检查并编辑 URL。另外,红帽流程自动化管理器部署可以创建客户端。但是,此选项对环境提供较少的详细控制。
  • 您启动了模板的配置,如 第 10.2.1 节 “使用 S2I 启动不可变 KIE 服务器的模板配置” 所述。

流程

  1. 设置以下参数:

    • RH-SSO URL (SSO_URL): RH-SSO 的 URL。
    • RH-SSO Realm 名称 (SSO_REALM):红帽流程自动化管理器的 RH-SSO 域。
    • RH-SSO 禁用 SSL 证书验证 (SSO_DISABLE_SSL_CERTIFICATE_VALIDATION):如果您的 RH-SSO 安装不使用有效的 HTTPS 证书,则设置为 true
  2. 完成以下流程之一:

    1. 如果您在 RH-SSO 中为 Red Hat Process Automation Manager 创建客户端,请在模板中设置以下参数:

      • Business Central 或 Business Central Monitoring RH-SSO Client name (BUSINESS_CENTRAL_SSO_CLIENT): Business Central 或 Business Central Monitoring 的 RH-SSO 客户端名称。
      • KIE Server RH-SSO Client name (KIE_SERVER_SSO_CLIENT): KIE Server 的 RH-SSO 客户端名称。
      • KIE Server RH-SSO Client Secret (KIE_SERVER_SSO_SECRET): KIE Server 客户端的 RH-SSO 中设置的机密字符串。
    2. 要在 RH-SSO 中为 Red Hat Process Automation Manager 创建客户端,请在模板中设置以下参数:

      • KIE Server RH-SSO 客户端名称 (KIE_SERVER_SSO_CLIENT):要在 KIE 服务器的 RH-SSO 中创建的客户端名称。
      • KIE Server RH-SSO Client Secret (KIE_SERVER_SSO_SECRET): KIE Server 客户端的 RH-SSO 中设置的机密字符串。
      • RH-SSO Realm Admin Username (SSO_USERNAME)和 RH-SSO Realm Admin Password (SSO_PASSWORD):红帽流程自动化管理器的 RH-SSO 域的用户名和密码。您必须提供此用户名和密码来创建所需的客户端。

后续步骤

如有必要,设置附加参数。

要完成部署,请按照 第 10.2.12 节 “使用 S2I 为不可变 KIE 服务器完成模板部署” 中的步骤操作。

完成部署后,查看 RH-SSO 身份验证系统中 Red Hat Process Automation Manager 组件的 URL,以确保它们正确。

10.2.9. 使用 S2I 为不可变 KIE 服务器设置 LDAP 身份验证参数

如果要使用 LDAP 身份验证,在配置模板以使用 S2I 构建部署不可变 KIE 服务器时,完成以下附加配置。

重要

不要在同一部署中配置 LDAP 身份验证和 RH-SSO 身份验证。

先决条件

流程

  1. 设置模板的 AUTH_LDAP* 参数。这些参数使用红帽 JBoss EAP 的 Elytron 子系统配置 LDAP 身份验证。有关在 LDAP 中使用 Red Hat JBoss EAP 的 Elytron 子系统的更多信息,请参阅使用 基于 LDAP 的身份存储配置身份验证

    注意

    如果要启用 LDAP 故障转移,您可以在 AUTH_LDAP_URL 参数中放置设置或更多 LDAP 服务器地址,用空格分隔。

    如果 LDAP 服务器没有定义部署所需的所有角色,您可以将 LDAP 组映射到 Red Hat Process Automation Manager 角色。要启用 LDAP 角色映射,请设置以下参数:

    • RoleMapping rolesProperties 文件路径或一行角色 (AUTH_ROLE_MAPPER_ROLES_PROPERTIES):定义角色映射的文件的完全限定路径名称,如 /opt/eap/standalone/configuration/rolemapping.properties。您必须提供此文件,并在所有适用的部署配置中的这个路径中挂载该文件 ; 有关说明,请参阅 第 13.3 节 “(可选)提供 LDAP 角色映射文件”

      或者,您可以使用 role=role1,role2;another-role=role2 pattern (如 admins=kie-server,rest-all,admin;developers=kie-server,rest-all,admin;developers=kie-server,rest-all )在此属性中输入角色映射设置。

    • 角色映射程序 Keep Mapped (AUTH_LDAP_MAPPER_KEEP_MAPPED):如果设为 true,则 LDAP 服务器上定义的映射角色和角色都设置为 用户应用角色;如果设为 false,则映射的角色将替换 LDAP 服务器上定义的角色。默认设置为 false
    • 角色映射程序 Keep Non-mapped (AUTH_LDAP_MAPPER_KEEP_NON_MAPPED):如果设为 true,则 LDAP 服务器上定义的角色不是用户应用角色;如果设为 false,则没有映射的角色会被删除。默认设置为 false

后续步骤

如有必要,设置附加参数。

要完成部署,请按照 第 10.2.12 节 “使用 S2I 为不可变 KIE 服务器完成模板部署” 中的步骤操作。

10.2.10. 使用 S2I 为不可变 KIE 服务器设置外部数据库服务器的参数

如果您将模板修改为使用 KIE Server 的外部数据库服务器,如 第 10.3 节 “修改模板以使用 S2I 部署不可变 KIE 服务器” 所述,在配置模板以使用 S2I 构建部署不可变 KIE 服务器时完成以下附加配置。

先决条件

流程

  1. 设置以下参数:

    • KIE 服务器外部数据库 驱动程序(KIE_SERVER_EXTERNALDB_DRIVER):服务器的驱动程序,具体取决于服务器类型:

      • mysql
      • postgresql
      • mariadb
      • mssql
      • db2
      • oracle
      • sisu
    • KIE Server External Database User (KIE_SERVER_EXTERNALDB_USER)和 KIE Server External Database Password (KIE_SERVER_EXTERNALDB_PWD):外部数据库服务器的用户名和密码
    • KIE Server External Database URL (KIE_SERVER_EXTERNALDB_URL):外部数据库服务器的 JDBC URL

      注意

      如果您使用 EntrepriseDB Postgres 数据库服务器,请使用以 jdbc:postgresql:// 开头的 URL,而不使用 jdbc:edb://。或者,不要设置 URL,而是设置主机和端口参数。

    • KIE Server External Database Host (KIE_SERVER_EXTERNALDB_SERVICE_HOST)和 KIE Server External Database Port (KIE_SERVER_EXTERNALDB_SERVICE_PORT):外部数据库服务器的主机名和端口号。您可以将这些参数设置为设置 KIE_SERVER_EXTERNALDB_URL 参数的替代选择。
    • KIE Server External Database Dialect (KIE_SERVER_EXTERNALDB_DIALECT):服务器的 Hibernate 空间,具体取决于服务器类型。常见设置有:

      • org.hibernate.dialect.MySQL5InnoDBDialect
      • org.hibernate.dialect.MySQL8Dialect
      • org.hibernate.dialect.MariaDB102Dialect
      • org.hibernate.dialect.PostgreSQL95Dialect
      • org.hibernate.dialect.PostgresPlusDialect (用于 EntrepriseDB Postgres Advanced Server)
      • org.hibernate.dialect.SQLServer2012Dialect (用于 MS SQL)
      • org.hibernate.dialect.DB2Dialect
      • org.hibernate.dialect.Oracle10gDialect
      • org.hibernate.dialect.SybaseASE15Dialect

        有关支持的 dialects 列表,请参阅 Red Hat JBoss EAP 文档中的 Hibernate 属性中的 Hibernate SQL Dialects 表。

    • KIE 服务器外部数据库名称 (KIE_SERVER_EXTERNALDB_DB):在外部数据库服务器上使用的数据库名称
    • JDBC 连接检查器类 (KIE_SERVER_EXTERNALDB_CONNECTION_CHECKER): 数据库服务器的 JDBC 连接检查程序类的名称。如果没有此信息,则数据库服务器连接在丢失后无法恢复,例如,如果数据库服务器被重启。
    • JDBC Exception Sorter 类 (KIE_SERVER_EXTERNALDB_EXCEPTION_SORTER):数据库服务器的 JDBC 异常分类器类的名称。如果没有此信息,则数据库服务器连接在丢失后无法恢复,例如,如果数据库服务器被重启。
  2. 如果您为使用外部数据库服务器创建了自定义镜像,如 第 7.10 节 “为外部数据库构建自定义 KIE 服务器扩展镜像” 所述,请设置以下参数:

    • 驱动程序扩展镜像 (EXTENSIONS_IMAGE):扩展镜像的 ImageStreamTag 定义,如 jboss-kie-db2-extension-openshift-image:11.1.4.4
    • Driver ImageStream Namespace (EXTENSIONS_IMAGE_NAMESPACE):上传扩展镜像的命名空间,如 openshift 或项目命名空间。
  3. 如果您使用 MySQL 版本 8 外部数据库服务器,请启用 mysql_native_password 插件并使用它来进行身份验证。有关此插件的说明,请参阅 MySQL 8.0 Reference Manual 中的 原生可插拔身份验证

    如果您在 Red Hat OpenShift Container Platform 上使用红帽提供的 MySQL 版本 8 镜像来启用该插件,请将 MYSQL_DEFAULT_AUTHENTICATION_PLUGIN 环境变量设置为 mysql_native_password

    如果您在启用 mysql_native_password 插件前在 MySQL 版本 8 服务器上创建了用户,则必须在启用插件后更新 mysql-user 表。

后续步骤

如有必要,设置附加参数。

如果要配置 EJB 计时器,您必须为 KIE 服务器运行时数据和 EJB 计时器数据使用两个不同的数据库。要使用不同数据库或模式配置 EJB 计时器,请参阅 第 9.1.12 节 “使用不同数据库或模式配置 EJB 计时器”

要完成部署,请按照 第 10.2.12 节 “使用 S2I 为不可变 KIE 服务器完成模板部署” 中的步骤操作。

10.2.11. 使用 S2I 为不可变 KIE 服务器启用 Prometheus 指标集合

如果要将 KIE 服务器部署配置为使用 Prometheus 来收集和存储指标,请在部署过程中在 KIE Server 中启用对这个功能的支持。

先决条件

流程

要启用 Prometheus 指标集合的支持,请将 Prometheus Server Extension Disabled (PROMETHEUS_SERVER_EXT_DISABLED)参数设置为 false

后续步骤

如有必要,设置附加参数。

要完成部署,请按照 第 10.2.12 节 “使用 S2I 为不可变 KIE 服务器完成模板部署” 中的步骤操作。

有关配置 Prometheus 指标集合的说明,请参阅 管理和监控 KIE Server

10.2.12. 使用 S2I 为不可变 KIE 服务器完成模板部署

在 OpenShift Web UI 或命令行中设置所有必要的参数后,完成模板的完整部署。

流程

根据您使用的方法,完成以下步骤:

  • 在 OpenShift Web UI 中,单击 Create

    • 如果 这将创建可能具有安全或项目行为影响消息的资源,请单击 Create Anyway
  • 完成命令行并按 Enter 键。

后续步骤

根据您的环境需求,(可选)完成 第 13 章 部署环境后的可选流程 中描述的步骤。

10.3. 修改模板以使用 S2I 部署不可变 KIE 服务器

默认情况下,使用 S2I 部署不可变服务器的模板会创建单独的 PostgreSQL pod,为每个副本的 KIE 服务器提供数据库服务器。如果您希望使用 MySQL 或外部服务器(在 OpenShift 项目之外),请在部署服务器前修改 rhpam712-prod-immutable-kieserver.yamlrhpam712-prod-immutable-kieserver-amq.yaml 模板文件。

OpenShift 模板定义了一组可由 OpenShift 创建的对象。要更改环境配置,您需要修改、添加或删除这些对象。为简化此任务,Red Hat Process Automation Manager 模板中提供了注释。

模板中的一些注释标记块,以 BEGIN 和结尾处 结束。例如,以下块被命名为 Sample block

## Sample block BEGIN
sample line 1
sample line 2
sample line 3
## Sample block END

对于某些更改,您可能需要将一个模板文件中的块替换为由 Red Hat Process Automation Manager 提供的另一个模板文件的块。在这种情况下,删除块,然后将新块粘贴到其确切的位置。

流程

  • 如果要使用 MySQL 而不是 PostgreSQL,替换文件的多个块(从 BEGINEND 标记为注释),使用 rhpam712-kieserver-mysql.yaml 文件中的内容替换它们。

    1. 将名为 PostgreSQL 数据库参数 的块替换为名为 MySQL 数据库参数 的块。(使用此块以及 rhpam712-kieserver-postgresql.yaml 文件中的所有后续替换块。)
    2. 将名为 PostgreSQL service 的块替换为名为 MySQL service 的块。
    3. 将名为 PostgreSQL 驱动程序设置 的块替换为名为 MySQL 驱动程序设置 的块。
    4. 将名为 PostgreSQL 部署配置的块替换为 名为 MySQL 部署配置的块
    5. 将名为 PostgreSQL 持久卷声明 的块替换为名为 MySQL 持久卷声明 的块。
  • 如果要使用外部数据库服务器,替换文件的多个块,将 BEGIN 中的注释标记为 END,使用 rhpam712-kieserver-externaldb.yaml 文件中的块,并删除一些块:

    1. 将名为 PostgreSQL 数据库参数 的块替换为名为 External database parameters 的块。(使用此块以及 rhpam712-kieserver-externaldb.yaml 文件中的所有后续替换块。)
    2. 将名为 PostgreSQL 驱动程序设置 的块替换为名为 External database driver settings 的块。
    3. 删除文件的以下块,并标记为 BEGIN 中的注释到 END

      • PostgreSQL 服务
      • PostgreSQL 部署配置
      • PostgreSQL 持久性卷声明
重要

标准 KIE 服务器镜像包括 MySQL、MariaDB 和 PostgreSQL 外部数据库服务器的驱动程序。如果要使用另一个数据库服务器,您必须构建自定义 KIE Server 镜像。具体说明请查看 第 7.10 节 “为外部数据库构建自定义 KIE 服务器扩展镜像”

10.4. 从 KJAR 服务部署不可变 KIE 服务器

您可以使用已构建为 KJAR 文件的服务来部署不可变 KIE 服务器。

您必须在 Maven 存储库中提供该服务。您可以使用 Business Central 或您自己的存储库(如 Nexus 部署)的内置存储库。当服务器 pod 启动时,它会从 Maven 存储库检索 KJAR 服务。pod 上的服务永不会更新或更改。每次重启或缩放 pod 时,服务器从存储库检索文件,因此您必须确保在 Maven 存储库上不更改文件,以保持部署不可变。

您无法在运行的不可变 KIE 服务器上部署或取消部署服务。您可以使用 Business Central 或 Business Central Monitoring 来查看监控信息。KIE 服务器像 OpenShift 环境中的任何其他 pod 一样运行;您可以根据需要使用任何基于容器的集成工作流。

如果 Business Central 或 Business Central Monitoring 部署在同一命名空间中,它会自动发现不可变的 KIE 服务器。您可以使用 Business Central 或 Business Central Monitoring 在不可变 KIE 服务器上启动和停止(但不部署)服务,并查看监控数据。

10.4.1. 从 KJAR 服务启动不可变 KIE 服务器的模板配置

要从 KJAR 服务部署不可变 KIE 服务器,请使用以下模板文件之一:

  • rhpam712-kieserver-postgresql.yaml 将 PostgreSQL pod 用于持久性存储。除非有特定原因使用另一个模板,否则请使用此模板。
  • rhpam712-kieserver-mysql.yaml 将 MySQL pod 用于持久性存储。
  • rhpam712-kieserver-externaldb.yaml 将外部数据库服务器用于持久性存储。

    重要

    外部数据库服务器的标准 KIE 服务器镜像包括 MySQL 和 PostgreSQL 外部数据库服务器的驱动程序。如果要使用另一个数据库服务器,您必须构建自定义 KIE Server 镜像。具体说明请查看 第 7.10 节 “为外部数据库构建自定义 KIE 服务器扩展镜像”

流程

  1. 从红帽客户门户网站的 Software Downloads 页面下载 rhpam-7.12.0-openshift-templates.zip 产品提供的可交付文件。
  2. 提取所需的模板文件。
  3. 使用以下方法之一开始部署模板:

    • 要使用 OpenShift Web UI,在 OpenShift 应用程序控制台中选择 Add to Project → Import YAML / JSON,然后选择或粘贴 < template-file-name>.yaml 文件。在 Add Template 窗口中 ,确保选择了模板 并单击 Continue
    • 要使用 OpenShift 命令行控制台,请准备以下命令行:

      oc new-app -f <template-path>/<template-file-name>.yaml -p KIE_SERVER_HTTPS_SECRET=kieserver-app-secret -p PARAMETER=value

      在这个命令行中,进行以下更改:

      • <template-path > 替换为下载的模板文件的路径。
      • <template-file-name > 替换为模板文件的名称。
      • 根据需要,使用多个 -p PARAMETER=value 对来设置所需的参数。

后续步骤

设置模板的参数。按照 第 10.4.2 节 “为 KJAR 服务的不可变 KIE 服务器设置所需的参数” 中的步骤设置通用参数。您可以查看模板文件以查看所有参数的描述。

10.4.2. 为 KJAR 服务的不可变 KIE 服务器设置所需的参数

当将模板配置为从 KJAR 服务部署不可变 KIE 服务器时,您必须在所有节点上设置以下参数。

先决条件

流程

  1. 设置以下参数:

    • 凭证 secret (CREDENTIALS_SECRET):包含管理用户凭证的 secret 名称,如 第 7.5 节 “为管理用户创建 secret” 中创建。
    • KIE Server Keystore Secret Name (KIE_SERVER_HTTPS_SECRET):KIE 服务器的 secret 名称,如 第 7.2 节 “为 KIE 服务器创建 secret” 中创建的。
    • KIE 服务器证书名称 (KIE_SERVER_HTTPS_NAME):您在 第 7.2 节 “为 KIE 服务器创建 secret” 中创建的密钥存储中的证书名称。
    • KIE Server Keystore Password (KIE_SERVER_HTTPS_PASSWORD):您在 第 7.2 节 “为 KIE 服务器创建 secret” 中创建的密钥存储的密码。
    • 应用名称 (APPLICATION_NAME):OpenShift 应用的名称。它用于 Business Central Monitoring 和 KIE 服务器的默认 URL。OpenShift 使用应用程序名称来创建单独的一组部署配置、服务、路由、标签和工件。只要使用不同的应用名称,就可以使用同一模板将多个应用部署到同一项目中。另外,应用程序名称决定了此 KIE Server 实例在 Business Central 或 Business Central Monitoring 上加入的服务器配置(服务器模板)的名称。如果要部署多个 KIE 服务器实例,您必须确保每个服务器都有不同的应用程序名称。
    • Maven 存储库 URL (MAVEN_REPO_URL): Maven 存储库的 URL。您必须将要在 KIE 服务器上部署的所有进程(KJAR 文件)上传到此存储库。
    • Maven 存储库 ID (MAVEN_REPO_ID):Maven 存储库的标识符。默认值为 repo-custom
    • Maven 存储库用户名 (MAVEN_REPO_USERNAME): Maven 存储库的用户名。
    • Maven 存储库密码 (MAVEN_REPO_PASSWORD): Maven 存储库的密码。
    • KIE Server Container Deployment (KIE_SERVER_CONTAINER_DEPLOYMENT):部署必须从 Maven 存储库拉取的决策服务(KJAR 文件)的识别信息。格式为 <containerId>=<groupId>:<artifactId>:<version>,或如果您要为容器设置一个别名,则为<containerId>(<aliasId>)=<groupId>:<artifactId>:<version>。您可以使用 | 分隔符提供两个或多个 KJAR 文件,如下例所示:

      containerId=groupId:artifactId:version|c2(alias2)=g2:a2:v2
    • KIE Server Mode (KIE_SERVER_MODE): 在 rhpam712-kieserver-*.yaml 模板中,默认值为 PRODUCTION。在 PRODUCTION 模式中,您无法在此 KIE Server 实例上部署 SNAPSHOT 版本 KJAR 工件,且无法更改现有容器中的工件版本。要使用 PRODUCTION 模式 部署新版本,请在同一 KIE 服务器上创建一个新容器。要部署 SNAPSHOT 版本或更改现有容器中的工件版本,请将此参数设置为 DEVELOPMENT
    • ImageStream Namespace (IMAGE_STREAM_NAMESPACE):镜像流可用的命名空间。如果 OpenShift 环境中已存在镜像流(请参阅 第 7.1 节 “确保镜像流和镜像 registry 的可用性”),则命名空间为 openshift。如果您已安装镜像流文件,则命名空间是 OpenShift 项目的名称。

后续步骤

如有必要,设置附加参数。

要完成部署,请按照 第 10.4.10 节 “从 KJAR 服务为不可变 KIE 服务器完成模板部署” 中的步骤操作。

10.4.3. 从 KJAR 服务为不可变 KIE 服务器配置镜像流命名空间

如果在不是 openshift 的命名空间中创建了镜像流,则必须在模板中配置命名空间。

如果 Red Hat OpenShift Container Platform 环境中已提供了所有镜像流,您可以跳过这个过程。

先决条件

流程

如果您根据 第 7.1 节 “确保镜像流和镜像 registry 的可用性” 中的说明安装了镜像流文件,请将 ImageStream Namespace (IMAGE_STREAM_NAMESPACE)参数设置为 OpenShift 项目的名称。

10.4.4. 从 KJAR 服务为不可变 KIE 服务器配置 Business Central 或 Business Central 监控实例的信息

如果要启用从同一命名空间中的 Business Central 或 Business Central Monitoring 实例的连接,则必须配置有关 Business Central 或 Business Central Monitoring 实例的信息。

Business Central 或 Business Central Monitoring 实例必须配置与 KIE 服务器相同的凭证 secret (CREDENTIALS_SECRET)。

先决条件

流程

  1. 设置以下参数:

    • Name of the Business Central service (BUSINESS_CENTRAL_SERVICE): Business Central 或 Business Central Monitoring 的 OpenShift 服务名称。
  2. 确保将以下设置的值与 Business Central 或 Business Central Monitoring 设置相同:

    • Maven 存储库 URL (MAVEN_REPO_URL):必须从中部署服务的外部 Maven 存储库的 URL。
    • Maven 存储库用户名 (MAVEN_REPO_USERNAME): Maven 存储库的用户名。
    • Maven 存储库密码 (MAVEN_REPO_PASSWORD): Maven 存储库的密码。

后续步骤

如有必要,设置附加参数。

要完成部署,请按照 第 10.4.10 节 “从 KJAR 服务为不可变 KIE 服务器完成模板部署” 中的步骤操作。

10.4.5. 在没有连接到公共互联网的情况下,为 KJAR 服务的不可变 KIE 服务器配置对 Maven 镜像的访问

当将模板配置为从 KJAR 服务部署不可变 KIE 服务器时,如果您的 OpenShift 环境没有连接到公共互联网,您必须配置对根据 第 7.9 节 “准备 Maven 镜像存储库以供离线使用” 设置的 Maven 镜像的访问。

先决条件

流程

要配置对 Maven 镜像的访问,请设置以下参数:

  • Maven 镜像 URL (MAVEN_MIRROR_URL): 您在 第 7.9 节 “准备 Maven 镜像存储库以供离线使用” 中设置的 Maven 镜像存储库的 URL。此 URL 必须从 OpenShift 环境中的容器集访问。
  • Maven 镜像 (MAVEN_MIRROR_OF):决定要从镜像检索哪些工件的值。有关设置 mirrorOf 值的说明,请参阅 Apache Maven 文档中的 Mirror Settings。默认值为 external:*。使用此值,Maven 从镜像检索每个所需的工件,且不会查询任何其他存储库。

    • 如果您配置外部 Maven 存储库(MAVEN_REPO_URL),请更改 MAVEN_MIRROR_OF,以从镜像中排除此仓库中的工件,如 external:*,!repo-custom。将 repo-custom 替换为您在 MAVEN_REPO_ID 中配置的 ID。
    • 如果您配置内置的 Business Central Maven 存储库(BUSINESS_CENTRAL_MAVEN_SERVICE),请更改 MAVEN_MIRROR_OF 以从镜像中排除此存储库中的工件: external:*,!repo-rhpamcentr
    • 如果您配置这两个存储库,请更改 MAVEN_MIRROR_OF,以从 mirror: external:*,!repo-rhpamcentr,!repo-custom 中排除这两个软件仓库中的工件。将 repo-custom 替换为您在 MAVEN_REPO_ID 中配置的 ID。

后续步骤

如有必要,设置附加参数。

要完成部署,请按照 第 10.4.10 节 “从 KJAR 服务为不可变 KIE 服务器完成模板部署” 中的步骤操作。

10.4.6. 为来自 KJAR 服务的不可变 KIE 服务器设置 RH-SSO 身份验证参数

如果要使用 RH-SSO 身份验证,请在将模板配置为从 KJAR 服务部署不可变 KIE 服务器时完成以下附加配置。

重要

不要在同一部署中配置 LDAP 身份验证和 RH-SSO 身份验证。

先决条件

  • 在 RH-SSO 身份验证系统中创建 Red Hat Process Automation Manager 的域。
  • Red Hat Process Automation Manager 的用户名和密码在 RH-SSO 身份验证系统中创建。有关可用角色的列表,请参阅 第 14 章 Red Hat Process Automation Manager 角色和用户

    您必须为管理用户创建带有在 secret 中配置的用户名和密码的用户,如 第 7.5 节 “为管理用户创建 secret” 所述。此用户必须具有 kie-server,rest-all,admin 角色。

  • 客户端是在 RH-SSO 身份验证系统中为您要部署的 Red Hat Process Automation Manager 环境的所有组件中创建的。客户端设置包含组件的 URL。在部署环境后,您可以检查并编辑 URL。另外,红帽流程自动化管理器部署可以创建客户端。但是,此选项对环境提供较少的详细控制。
  • 您启动了模板的配置,如 第 10.4.1 节 “从 KJAR 服务启动不可变 KIE 服务器的模板配置” 所述。

流程

  1. 设置以下参数:

    • RH-SSO URL (SSO_URL): RH-SSO 的 URL。
    • RH-SSO Realm 名称 (SSO_REALM):红帽流程自动化管理器的 RH-SSO 域。
    • RH-SSO 禁用 SSL 证书验证 (SSO_DISABLE_SSL_CERTIFICATE_VALIDATION):如果您的 RH-SSO 安装不使用有效的 HTTPS 证书,则设置为 true
  2. 完成以下流程之一:

    1. 如果您在 RH-SSO 中为 Red Hat Process Automation Manager 创建客户端,请在模板中设置以下参数:

      • Business Central 或 Business Central Monitoring RH-SSO Client name (BUSINESS_CENTRAL_SSO_CLIENT): Business Central 或 Business Central Monitoring 的 RH-SSO 客户端名称。
      • KIE Server RH-SSO Client name (KIE_SERVER_SSO_CLIENT): KIE Server 的 RH-SSO 客户端名称。
      • KIE Server RH-SSO Client Secret (KIE_SERVER_SSO_SECRET): KIE Server 客户端的 RH-SSO 中设置的机密字符串。
    2. 要在 RH-SSO 中为 Red Hat Process Automation Manager 创建客户端,请在模板中设置以下参数:

      • KIE Server RH-SSO 客户端名称 (KIE_SERVER_SSO_CLIENT):要在 KIE 服务器的 RH-SSO 中创建的客户端名称。
      • KIE Server RH-SSO Client Secret (KIE_SERVER_SSO_SECRET): KIE Server 客户端的 RH-SSO 中设置的机密字符串。
      • RH-SSO Realm Admin Username (SSO_USERNAME)和 RH-SSO Realm Admin Password (SSO_PASSWORD):红帽流程自动化管理器的 RH-SSO 域的用户名和密码。您必须提供此用户名和密码来创建所需的客户端。

后续步骤

如有必要,设置附加参数。

要完成部署,请按照 第 10.4.10 节 “从 KJAR 服务为不可变 KIE 服务器完成模板部署” 中的步骤操作。

完成部署后,查看 RH-SSO 身份验证系统中 Red Hat Process Automation Manager 组件的 URL,以确保它们正确。

10.4.7. 从 KJAR 服务为不可变 KIE 服务器设置 LDAP 身份验证参数

如果要使用 LDAP 身份验证,在将模板配置为从 KJAR 服务部署不可变 KIE 服务器时,完成以下附加配置。

重要

不要在同一部署中配置 LDAP 身份验证和 RH-SSO 身份验证。

先决条件

流程

  1. 设置模板的 AUTH_LDAP* 参数。这些参数使用红帽 JBoss EAP 的 Elytron 子系统配置 LDAP 身份验证。有关在 LDAP 中使用 Red Hat JBoss EAP 的 Elytron 子系统的更多信息,请参阅使用 基于 LDAP 的身份存储配置身份验证

    注意

    如果要启用 LDAP 故障转移,您可以在 AUTH_LDAP_URL 参数中放置设置或更多 LDAP 服务器地址,用空格分隔。

    如果 LDAP 服务器没有定义部署所需的所有角色,您可以将 LDAP 组映射到 Red Hat Process Automation Manager 角色。要启用 LDAP 角色映射,请设置以下参数:

    • RoleMapping rolesProperties 文件路径或一行角色 (AUTH_ROLE_MAPPER_ROLES_PROPERTIES):定义角色映射的文件的完全限定路径名称,如 /opt/eap/standalone/configuration/rolemapping.properties。您必须提供此文件,并在所有适用的部署配置中的这个路径中挂载该文件 ; 有关说明,请参阅 第 13.3 节 “(可选)提供 LDAP 角色映射文件”

      或者,您可以使用 role=role1,role2;another-role=role2 pattern (如 admins=kie-server,rest-all,admin;developers=kie-server,rest-all,admin;developers=kie-server,rest-all )在此属性中输入角色映射设置。

    • 角色映射程序 Keep Mapped (AUTH_LDAP_MAPPER_KEEP_MAPPED):如果设为 true,则 LDAP 服务器上定义的映射角色和角色都设置为 用户应用角色;如果设为 false,则映射的角色将替换 LDAP 服务器上定义的角色。默认设置为 false
    • 角色映射程序 Keep Non-mapped (AUTH_LDAP_MAPPER_KEEP_NON_MAPPED):如果设为 true,则 LDAP 服务器上定义的角色不是用户应用角色;如果设为 false,则没有映射的角色会被删除。默认设置为 false

后续步骤

如有必要,设置附加参数。

要完成部署,请按照 第 10.4.10 节 “从 KJAR 服务为不可变 KIE 服务器完成模板部署” 中的步骤操作。

10.4.8. 为来自 KJAR 服务的不可变 KIE 服务器设置外部数据库服务器的参数

如果您使用 rhpam712-kieserver-externaldb.yaml 模板为 KIE Server 使用外部数据库服务器,请在将模板配置为从 KJAR 服务部署不可变 KIE 服务器时完成以下附加配置。

先决条件

流程

  1. 设置以下参数:

    • KIE 服务器外部数据库 驱动程序(KIE_SERVER_EXTERNALDB_DRIVER):服务器的驱动程序,具体取决于服务器类型:

      • mysql
      • postgresql
      • mariadb
      • mssql
      • db2
      • oracle
      • sisu
    • KIE Server External Database User (KIE_SERVER_EXTERNALDB_USER)和 KIE Server External Database Password (KIE_SERVER_EXTERNALDB_PWD):外部数据库服务器的用户名和密码
    • KIE Server External Database URL (KIE_SERVER_EXTERNALDB_URL):外部数据库服务器的 JDBC URL

      注意

      如果您使用 EntrepriseDB Postgres 数据库服务器,请使用以 jdbc:postgresql:// 开头的 URL,而不使用 jdbc:edb://。或者,不要设置 URL,而是设置主机和端口参数。

    • KIE Server External Database Host (KIE_SERVER_EXTERNALDB_SERVICE_HOST)和 KIE Server External Database Port (KIE_SERVER_EXTERNALDB_SERVICE_PORT):外部数据库服务器的主机名和端口号。您可以将这些参数设置为设置 KIE_SERVER_EXTERNALDB_URL 参数的替代选择。
    • KIE Server External Database Dialect (KIE_SERVER_EXTERNALDB_DIALECT):服务器的 Hibernate 空间,具体取决于服务器类型。常见设置有:

      • org.hibernate.dialect.MySQL5InnoDBDialect
      • org.hibernate.dialect.MySQL8Dialect
      • org.hibernate.dialect.MariaDB102Dialect
      • org.hibernate.dialect.PostgreSQL95Dialect
      • org.hibernate.dialect.PostgresPlusDialect (用于 EntrepriseDB Postgres Advanced Server)
      • org.hibernate.dialect.SQLServer2012Dialect (用于 MS SQL)
      • org.hibernate.dialect.DB2Dialect
      • org.hibernate.dialect.Oracle10gDialect
      • org.hibernate.dialect.SybaseASE15Dialect

        有关支持的 dialects 列表,请参阅 Red Hat JBoss EAP 文档中的 Hibernate 属性中的 Hibernate SQL Dialects 表。

    • KIE 服务器外部数据库名称 (KIE_SERVER_EXTERNALDB_DB):在外部数据库服务器上使用的数据库名称
    • JDBC 连接检查器类 (KIE_SERVER_EXTERNALDB_CONNECTION_CHECKER): 数据库服务器的 JDBC 连接检查程序类的名称。如果没有此信息,则数据库服务器连接在丢失后无法恢复,例如,如果数据库服务器被重启。
    • JDBC Exception Sorter 类 (KIE_SERVER_EXTERNALDB_EXCEPTION_SORTER):数据库服务器的 JDBC 异常分类器类的名称。如果没有此信息,则数据库服务器连接在丢失后无法恢复,例如,如果数据库服务器被重启。
  2. 如果您为使用外部数据库服务器创建了自定义镜像,如 第 7.10 节 “为外部数据库构建自定义 KIE 服务器扩展镜像” 所述,请设置以下参数:

    • 驱动程序扩展镜像 (EXTENSIONS_IMAGE):扩展镜像的 ImageStreamTag 定义,如 jboss-kie-db2-extension-openshift-image:11.1.4.4
    • Driver ImageStream Namespace (EXTENSIONS_IMAGE_NAMESPACE):上传扩展镜像的命名空间,如 openshift 或项目命名空间。
  3. 如果您使用 MySQL 版本 8 外部数据库服务器,请启用 mysql_native_password 插件并使用它来进行身份验证。有关此插件的说明,请参阅 MySQL 8.0 Reference Manual 中的 原生可插拔身份验证

    如果您在 Red Hat OpenShift Container Platform 上使用红帽提供的 MySQL 版本 8 镜像来启用该插件,请将 MYSQL_DEFAULT_AUTHENTICATION_PLUGIN 环境变量设置为 mysql_native_password

    如果您在启用 mysql_native_password 插件前在 MySQL 版本 8 服务器上创建了用户,则必须在启用插件后更新 mysql-user 表。

后续步骤

如有必要,设置附加参数。

如果要配置 EJB 计时器,您必须为 KIE 服务器运行时数据和 EJB 计时器数据使用两个不同的数据库。要使用不同数据库或模式配置 EJB 计时器,请参阅 第 9.1.12 节 “使用不同数据库或模式配置 EJB 计时器”

要完成部署,请按照 第 10.4.10 节 “从 KJAR 服务为不可变 KIE 服务器完成模板部署” 中的步骤操作。

10.4.9. 为 KJAR 服务的不可变 KIE 服务器启用 Prometheus 指标集合

如果要将 KIE 服务器部署配置为使用 Prometheus 来收集和存储指标,请在部署过程中在 KIE Server 中启用对这个功能的支持。

先决条件

流程

要启用 Prometheus 指标集合的支持,请将 Prometheus Server Extension Disabled (PROMETHEUS_SERVER_EXT_DISABLED)参数设置为 false

后续步骤

如有必要,设置附加参数。

要完成部署,请按照 第 10.4.10 节 “从 KJAR 服务为不可变 KIE 服务器完成模板部署” 中的步骤操作。

有关配置 Prometheus 指标集合的说明,请参阅 管理和监控 KIE Server

10.4.10. 从 KJAR 服务为不可变 KIE 服务器完成模板部署

在 OpenShift Web UI 或命令行中设置所有必要的参数后,完成模板的完整部署。

流程

根据您使用的方法,完成以下步骤:

  • 在 OpenShift Web UI 中,单击 Create

    • 如果 这将创建可能具有安全或项目行为影响消息的资源,请单击 Create Anyway
  • 完成命令行并按 Enter 键。

后续步骤

根据您的环境需求,(可选)完成 第 13 章 部署环境后的可选流程 中描述的步骤。

第 11 章 Freeform 受管服务器环境

您可以部署自由服务器环境,其中包括运行 KIE Server 的多个不同 pod。这些 KIE 服务器可为暂存或生产目的运行不同的服务。您可以随时根据需要添加和删除服务器。

您可以通过部署 Business Central Monitoring 和一个托管的 KIE Server,开始部署自由管理的服务器环境。您可以使用 Business Central Monitoring 来监控和管理 KIE 服务器上的服务的执行。此环境不包括智能路由器。

您还可以部署额外的管理的 KIE 服务器。每个 KIE 服务器都可以根据需要单独扩展。

在受管 KIE 服务器上,最初不会加载任何服务。使用 Business Central Monitoring 或 KIE Server REST API 在服务器上部署和取消部署进程。

您必须提供一个 Maven 存储库,其中包含要在服务器上部署的进程(KJAR 文件)。您的集成过程必须确保所需的进程版本上传到 Maven 存储库。您可以在开发环境中使用 Business Central 来创建进程并将其上传到 Maven 存储库。

每个 KIE 服务器都使用数据库服务器。通常,数据库服务器也在 pod 中运行,但您可以将 KIE 服务器设置为使用外部数据库服务器。

您还可以在同一命名空间中部署不可变 KIE 服务器。您可以使用 Business Central Monitoring 来查看环境中所有 KIE 服务器的监控信息,包括不可变服务器。有关部署不可变 KIE 服务器的步骤,请参阅 第 10.2 节 “使用 S2I 构建部署不可变 KIE 服务器”第 10.4 节 “从 KJAR 服务部署不可变 KIE 服务器”

11.1. 为自由环境部署监控和单个 KIE 服务器

要开始部署自由环境,请部署 Business Central Monitoring 和单个管理的 KIE 服务器实例,该实例使用 pod 中的 PostgreSQL 数据库服务器。部署的 KIE 服务器实例上没有加载任何服务。使用 Business Central Monitoring 在服务器上部署和取消部署服务。

然后,您可以根据需要添加更多 KIE 服务器实例。

11.1.1. 启动用于监控和单个 KIE 服务器的模板配置

要部署 Business Central 监控和单个管理的 KIE 服务器,请使用 rhpam712-managed.yaml 模板文件。

流程

  1. 从红帽客户门户网站的 Software Downloads 页面下载 rhpam-7.12.0-openshift-templates.zip 产品提供的可交付文件。
  2. 提取 rhpam712-managed.yaml 模板文件。
  3. 使用以下方法之一开始部署模板:

    • 要使用 OpenShift Web UI,在 OpenShift 应用程序控制台中选择 Add to Project → Import YAML / JSON,然后选择或粘贴 rhpam712-managed.yaml 文件。在 Add Template 窗口中 ,确保选择了模板 并单击 Continue
    • 要使用 OpenShift 命令行控制台,请准备以下命令行:

      oc new-app -f <template-path>/rhpam712-managed.yaml -p BUSINESS_CENTRAL_HTTPS_SECRET=businesscentral-app-secret -p KIE_SERVER_HTTPS_SECRET=kieserver-app-secret -p PARAMETER=value

      在这个命令行中,进行以下更改:

      • <template-path > 替换为下载的模板文件的路径。
      • 根据需要,使用多个 -p PARAMETER=value 对来设置所需的参数。

后续步骤

设置模板的参数。按照 第 11.1.2 节 “为监控和单个 KIE 服务器设置所需的参数” 中的步骤设置通用参数。您可以查看模板文件以查看所有参数的描述。

11.1.2. 为监控和单个 KIE 服务器设置所需的参数

将模板配置为部署 Business Central Monitoring 和单个管理的 KIE 服务器时,您必须在所有情况下设置以下参数。

先决条件

流程

  1. 设置以下参数:

    • 凭证 secret (CREDENTIALS_SECRET):包含管理用户凭证的 secret 名称,如 第 7.5 节 “为管理用户创建 secret” 中创建。
    • Business Central Monitoring Server Keystore Secret Name (BUSINESS_CENTRAL_HTTPS_SECRET): Business Central 的机密名称,如 第 7.3 节 “为 Business Central 创建 secret” 中创建。
    • KIE Server Keystore Secret Name (KIE_SERVER_HTTPS_SECRET):KIE 服务器的 secret 名称,如 第 7.2 节 “为 KIE 服务器创建 secret” 中创建的。
    • Business Central 监控服务器证书名称 (BUSINESS_CENTRAL_HTTPS_NAME):您在 第 7.3 节 “为 Business Central 创建 secret” 中创建的密钥存储中的证书名称。
    • Business Central Monitoring Server Keystore Password (BUSINESS_CENTRAL_HTTPS_PASSWORD):您在 第 7.3 节 “为 Business Central 创建 secret” 中创建的密钥存储的密码。
    • KIE 服务器证书名称 (KIE_SERVER_HTTPS_NAME):您在 第 7.2 节 “为 KIE 服务器创建 secret” 中创建的密钥存储中的证书名称。
    • KIE Server Keystore Password (KIE_SERVER_HTTPS_PASSWORD):您在 第 7.2 节 “为 KIE 服务器创建 secret” 中创建的密钥存储的密码。
    • 应用名称 (APPLICATION_NAME):OpenShift 应用的名称。它用于 Business Central Monitoring 和 KIE 服务器的默认 URL。OpenShift 使用应用程序名称来创建单独的一组部署配置、服务、路由、标签和工件。
    • 启用 KIE 服务器全局发现 (KIE_SERVER_CONTROLLER_OPENSHIFT_GLOBAL_DISCOVERY_ENABLED):如果您希望 Business Central Monitoring 使用同一命名空间中的 OpenShiftStartupStrategy 发现所有 KIE 服务器,请将此参数设置为 true。默认情况下,Business Central Monitoring 仅会发现使用与 Business Central Monitoring 本身相同的 APPLICATION_NAME 参数的值部署的 KIE 服务器。
    • Maven 存储库 URL (MAVEN_REPO_URL): Maven 存储库的 URL。您必须将要在环境中任何 KIE 服务器实例上部署的所有进程(KJAR 文件)上传到此存储库中。
    • Maven 存储库 ID (MAVEN_REPO_ID):Maven 存储库的标识符。默认值为 repo-custom
    • Maven 存储库用户名 (MAVEN_REPO_USERNAME): Maven 存储库的用户名。
    • Maven 存储库密码 (MAVEN_REPO_PASSWORD): Maven 存储库的密码。
    • KIE Server Mode (KIE_SERVER_MODE):在 rhpam712-managed.yaml 模板中,默认值为 PRODUCTION。在 PRODUCTION 模式中,您无法在此 KIE Server 实例上部署 SNAPSHOT 版本 KJAR 工件,且无法更改现有容器中的工件版本。要使用 PRODUCTION 模式 部署新版本,请在同一 KIE 服务器上创建一个新容器。要部署 SNAPSHOT 版本或更改现有容器中的工件版本,请将此参数设置为 DEVELOPMENT
    • ImageStream Namespace (IMAGE_STREAM_NAMESPACE):镜像流可用的命名空间。如果 OpenShift 环境中已存在镜像流(请参阅 第 7.1 节 “确保镜像流和镜像 registry 的可用性”),则命名空间为 openshift。如果您已安装镜像流文件,则命名空间是 OpenShift 项目的名称。

后续步骤

如有必要,设置附加参数。

要完成部署,请按照 第 11.1.8 节 “完成用于监控和单个 KIE 服务器的模板部署” 中的步骤操作。

11.1.3. 为监控和单个 KIE 服务器配置 pod 副本号

将模板配置为部署 Business Central 监控和单个管理的 KIE 服务器时,您可以为 KIE 服务器和 Business Central 监控设置初始副本数。

先决条件

流程

要配置副本数量,请设置以下参数:

  • Business Central Monitoring Container Replicas (BUSINESS_CENTRAL_MONITORING_CONTAINER_REPLICAS):部署最初为 Business Central 监控创建的副本数。如果您不想将高可用性配置用于 Business Central Monitoring,请将此数字设置为 1。
  • KIE Server Container Replicas (KIE_SERVER_CONTAINER_REPLICAS):部署最初为 KIE 服务器创建的副本数。

后续步骤

如有必要,设置附加参数。

要完成部署,请按照 第 11.1.8 节 “完成用于监控和单个 KIE 服务器的模板部署” 中的步骤操作。

11.1.4. 在没有连接到公共互联网以进行监控和单一 KIE 服务器的情况下,在环境中配置对 Maven 镜像的访问

当将模板配置为部署 Business Central Monitoring 和单个管理的 KIE 服务器时,如果您的 OpenShift 环境没有与公共互联网的连接,您必须配置对根据 第 7.9 节 “准备 Maven 镜像存储库以供离线使用” 设置的 Maven 镜像的访问。

先决条件

流程

要配置对 Maven 镜像的访问,请设置以下参数:

  • Maven 镜像 URL (MAVEN_MIRROR_URL): 您在 第 7.9 节 “准备 Maven 镜像存储库以供离线使用” 中设置的 Maven 镜像存储库的 URL。此 URL 必须从 OpenShift 环境中的容器集访问。
  • Maven 镜像 (MAVEN_MIRROR_OF):决定要从镜像检索哪些工件的值。有关设置 mirrorOf 值的说明,请参阅 Apache Maven 文档中的 Mirror Settings。默认值为 external:*。使用此值,Maven 从镜像检索每个所需的工件,且不会查询任何其他存储库。

    • 如果您配置外部 Maven 存储库(MAVEN_REPO_URL),请更改 MAVEN_MIRROR_OF,以从镜像中排除此仓库中的工件,如 external:*,!repo-custom。将 repo-custom 替换为您在 MAVEN_REPO_ID 中配置的 ID。
    • 如果您配置内置的 Business Central Maven 存储库(BUSINESS_CENTRAL_MAVEN_SERVICE),请更改 MAVEN_MIRROR_OF 以从镜像中排除此存储库中的工件: external:*,!repo-rhpamcentr
    • 如果您配置这两个存储库,请更改 MAVEN_MIRROR_OF,以从 mirror: external:*,!repo-rhpamcentr,!repo-custom 中排除这两个软件仓库中的工件。将 repo-custom 替换为您在 MAVEN_REPO_ID 中配置的 ID。

后续步骤

如有必要,设置附加参数。

要完成部署,请按照 第 11.1.8 节 “完成用于监控和单个 KIE 服务器的模板部署” 中的步骤操作。

11.1.5. 为监控和单个 KIE 服务器设置 RH-SSO 身份验证参数

如果要使用 RH-SSO 身份验证,在配置模板以部署 Business Central 监控和单个受管 KIE 服务器时完成以下附加配置。

重要

不要在同一部署中配置 LDAP 身份验证和 RH-SSO 身份验证。

先决条件

  • 在 RH-SSO 身份验证系统中创建 Red Hat Process Automation Manager 的域。
  • Red Hat Process Automation Manager 的用户名和密码在 RH-SSO 身份验证系统中创建。有关可用角色的列表,请参阅 第 14 章 Red Hat Process Automation Manager 角色和用户

    您必须为管理用户创建带有在 secret 中配置的用户名和密码的用户,如 第 7.5 节 “为管理用户创建 secret” 所述。此用户必须具有 kie-server,rest-all,admin 角色。

  • 客户端是在 RH-SSO 身份验证系统中为您要部署的 Red Hat Process Automation Manager 环境的所有组件中创建的。客户端设置包含组件的 URL。在部署环境后,您可以检查并编辑 URL。另外,红帽流程自动化管理器部署可以创建客户端。但是,此选项对环境提供较少的详细控制。
  • 您启动了模板的配置,如 第 11.1.1 节 “启动用于监控和单个 KIE 服务器的模板配置” 所述。

流程

  1. 设置以下参数:

    • RH-SSO URL (SSO_URL): RH-SSO 的 URL。
    • RH-SSO Realm 名称 (SSO_REALM):红帽流程自动化管理器的 RH-SSO 域。
    • RH-SSO 禁用 SSL 证书验证 (SSO_DISABLE_SSL_CERTIFICATE_VALIDATION):如果您的 RH-SSO 安装不使用有效的 HTTPS 证书,则设置为 true
  2. 完成以下流程之一:

    1. 如果您在 RH-SSO 中为 Red Hat Process Automation Manager 创建客户端,请在模板中设置以下参数:

      • Business Central Monitoring RH-SSO Client name (BUSINESS_CENTRAL_SSO_CLIENT): Business Central Monitoring 的 RH-SSO 客户端名称。
      • Business Central Monitoring RH-SSO Client Secret (BUSINESS_CENTRAL_SSO_SECRET):用于 Business Central Monitoring 客户端的 RH-SSO 中设置的机密字符串。
      • KIE Server RH-SSO Client name (KIE_SERVER_SSO_CLIENT): KIE Server 的 RH-SSO 客户端名称。
      • KIE Server RH-SSO Client Secret (KIE_SERVER_SSO_SECRET): KIE Server 客户端的 RH-SSO 中设置的机密字符串。
    2. 要在 RH-SSO 中为 Red Hat Process Automation Manager 创建客户端,请在模板中设置以下参数:

      • Business Central Monitoring RH-SSO Client name (BUSINESS_CENTRAL_SSO_CLIENT):要在 RH-SSO 中为 Business Central Monitoring 创建的客户端名称。
      • Business Central Monitoring RH-SSO Client Secret (BUSINESS_CENTRAL_SSO_SECRET):用于 Business Central Monitoring 客户端的 RH-SSO 中设置的机密字符串。
      • KIE Server RH-SSO 客户端名称 (KIE_SERVER_SSO_CLIENT):要在 KIE 服务器的 RH-SSO 中创建的客户端名称。
      • KIE Server RH-SSO Client Secret (KIE_SERVER_SSO_SECRET): KIE Server 客户端的 RH-SSO 中设置的机密字符串。
      • RH-SSO Realm Admin Username (SSO_USERNAME)和 RH-SSO Realm Admin Password (SSO_PASSWORD):红帽流程自动化管理器的 RH-SSO 域的用户名和密码。您必须提供此用户名和密码来创建所需的客户端。

后续步骤

如有必要,设置附加参数。

要完成部署,请按照 第 11.1.8 节 “完成用于监控和单个 KIE 服务器的模板部署” 中的步骤操作。

完成部署后,查看 RH-SSO 身份验证系统中 Red Hat Process Automation Manager 组件的 URL,以确保它们正确。

11.1.6. 为监控和一个 KIE 服务器设置 LDAP 身份验证的参数

如果要使用 LDAP 身份验证,在配置模板以部署 Business Central 监控和单个管理的 KIE 服务器时,完成以下附加配置。

重要

不要在同一部署中配置 LDAP 身份验证和 RH-SSO 身份验证。

先决条件

流程

  1. 设置模板的 AUTH_LDAP* 参数。这些参数使用红帽 JBoss EAP 的 Elytron 子系统配置 LDAP 身份验证。有关在 LDAP 中使用 Red Hat JBoss EAP 的 Elytron 子系统的更多信息,请参阅使用 基于 LDAP 的身份存储配置身份验证

    注意

    如果要启用 LDAP 故障转移,您可以在 AUTH_LDAP_URL 参数中放置设置或更多 LDAP 服务器地址,用空格分隔。

    如果 LDAP 服务器没有定义部署所需的所有角色,您可以将 LDAP 组映射到 Red Hat Process Automation Manager 角色。要启用 LDAP 角色映射,请设置以下参数:

    • RoleMapping rolesProperties 文件路径或一行角色 (AUTH_ROLE_MAPPER_ROLES_PROPERTIES):定义角色映射的文件的完全限定路径名称,如 /opt/eap/standalone/configuration/rolemapping.properties。您必须提供此文件,并在所有适用的部署配置中的这个路径中挂载该文件 ; 有关说明,请参阅 第 13.3 节 “(可选)提供 LDAP 角色映射文件”

      或者,您可以使用 role=role1,role2;another-role=role2 pattern (如 admins=kie-server,rest-all,admin;developers=kie-server,rest-all,admin;developers=kie-server,rest-all )在此属性中输入角色映射设置。

    • 角色映射程序 Keep Mapped (AUTH_LDAP_MAPPER_KEEP_MAPPED):如果设为 true,则 LDAP 服务器上定义的映射角色和角色都设置为 用户应用角色;如果设为 false,则映射的角色将替换 LDAP 服务器上定义的角色。默认设置为 false
    • 角色映射程序 Keep Non-mapped (AUTH_LDAP_MAPPER_KEEP_NON_MAPPED):如果设为 true,则 LDAP 服务器上定义的角色不是用户应用角色;如果设为 false,则没有映射的角色会被删除。默认设置为 false

后续步骤

如有必要,设置附加参数。

要完成部署,请按照 第 11.1.8 节 “完成用于监控和单个 KIE 服务器的模板部署” 中的步骤操作。

11.1.7. 为监控和单个 KIE 服务器启用 Prometheus 指标集合

如果要将 KIE 服务器部署配置为使用 Prometheus 来收集和存储指标,请在部署过程中在 KIE Server 中启用对这个功能的支持。

先决条件

流程

要启用 Prometheus 指标集合的支持,请将 Prometheus Server Extension Disabled (PROMETHEUS_SERVER_EXT_DISABLED)参数设置为 false

后续步骤

如有必要,设置附加参数。

要完成部署,请按照 第 11.1.8 节 “完成用于监控和单个 KIE 服务器的模板部署” 中的步骤操作。

有关配置 Prometheus 指标集合的说明,请参阅 管理和监控 KIE Server

11.1.8. 完成用于监控和单个 KIE 服务器的模板部署

在 OpenShift Web UI 或命令行中设置所有必要的参数后,完成模板的完整部署。

流程

根据您使用的方法,完成以下步骤:

  • 在 OpenShift Web UI 中,单击 Create

    • 如果 这将创建可能具有安全或项目行为影响消息的资源,请单击 Create Anyway
  • 完成命令行并按 Enter 键。

后续步骤

根据您的环境需求,(可选)完成 第 13 章 部署环境后的可选流程 中描述的步骤。

11.2. 为自由环境部署额外的管理的 KIE 服务器

您可以将受管 KIE 服务器添加到自由的环境中。此服务器可以在 pod 或外部数据库服务器中使用 PostgreSQL 或 MySQL 数据库服务器。

将服务器部署到与 Business Central Monitoring 部署相同的项目中。

KIE 服务器从 Maven 存储库加载服务。

服务器在没有加载的服务的情况下启动。使用 Business Central Monitoring 或 KIE Server REST API 在服务器上部署和取消部署服务。

11.2.1. 为额外的受管 KIE 服务器启动模板配置

要部署额外的受管 KIE 服务器,请使用 {template_name} 模板文件。

流程

  1. 从红帽客户门户网站的 Software Downloads 页面下载 rhpam-7.12.0-openshift-templates.zip 产品提供的可交付文件。
  2. 提取 {template_name} 模板文件。
  3. 使用以下方法之一开始部署模板:

    • 要使用 OpenShift Web UI,在 OpenShift 应用程序控制台中选择 Add to Project → Import YAML / JSON,然后选择或粘贴 {template_name} 文件。在 Add Template 窗口中 ,确保选择了模板 并单击 Continue
    • 要使用 OpenShift 命令行控制台,请准备以下命令行:

      oc new-app -f <template-path>/{template_name}  -p PARAMETER=value

      在这个命令行中,进行以下更改:

      • <template-path > 替换为下载的模板文件的路径。
      • 根据需要,使用多个 -p PARAMETER=value 对来设置所需的参数。

后续步骤

设置模板的参数。按照 第 11.2.2 节 “为额外的受管 KIE 服务器设置所需的参数” 中的步骤设置通用参数。您可以查看模板文件以查看所有参数的描述。

11.2.2. 为额外的受管 KIE 服务器设置所需的参数

将模板配置为部署额外的受管 KIE 服务器时,您必须在所有情况下设置以下参数。

先决条件

流程

  1. 设置以下参数:

    • 凭证 secret (CREDENTIALS_SECRET):包含管理用户凭证的 secret 名称,如 第 7.5 节 “为管理用户创建 secret” 中创建。
    • 应用名称 (APPLICATION_NAME):OpenShift 应用的名称。它用于 Business Central Monitoring 和 KIE 服务器的默认 URL。OpenShift 使用应用程序名称来创建单独的一组部署配置、服务、路由、标签和工件。
    • ImageStream Namespace (IMAGE_STREAM_NAMESPACE):镜像流可用的命名空间。如果 OpenShift 环境中已存在镜像流(请参阅 第 7.1 节 “确保镜像流和镜像 registry 的可用性”),则命名空间为 openshift。如果您已安装镜像流文件,则命名空间是 OpenShift 项目的名称。

后续步骤

如有必要,设置附加参数。

要完成部署,请按照 第 11.2.10 节 “为额外的受管 KIE 服务器完成模板部署” 中的步骤操作。

11.2.3. 为额外的受管 KIE 服务器配置镜像流命名空间

如果在不是 openshift 的命名空间中创建了镜像流,则必须在模板中配置命名空间。

如果 Red Hat OpenShift Container Platform 环境中已提供了所有镜像流,您可以跳过这个过程。

先决条件

流程

如果您根据 第 7.1 节 “确保镜像流和镜像 registry 的可用性” 中的说明安装了镜像流文件,请将 ImageStream Namespace (IMAGE_STREAM_NAMESPACE)参数设置为 OpenShift 项目的名称。

11.2.4. 为额外的受管 KIE 服务器配置 Business Central 监控实例的信息

如果要启用从同一命名空间中的 Business Central Monitoring 实例到此 KIE 服务器实例的连接,您必须配置有关 Business Central Monitoring 实例的信息。

Business Central Monitoring 实例必须配置有与 KIE 服务器相同的凭证 secret (CREDENTIALS_SECRET)。

先决条件

流程

  1. 设置以下参数:

    • Name of the Business Central service (BUSINESS_CENTRAL_SERVICE): Business Central Monitoring 的 OpenShift 服务名称。

后续步骤

如有必要,设置附加参数。

要完成部署,请按照 第 11.2.10 节 “为额外的受管 KIE 服务器完成模板部署” 中的步骤操作。

11.2.5. 在没有连接到公共互联网的情况下为额外的受管 KIE 服务器配置对 Maven 镜像的访问

当将模板配置为部署额外的管理的 KIE 服务器时,如果您的 OpenShift 环境没有与公共互联网的连接,您必须配置对根据 第 7.9 节 “准备 Maven 镜像存储库以供离线使用” 设置的 Maven 镜像的访问。

先决条件

流程

要配置对 Maven 镜像的访问,请设置以下参数:

  • Maven 镜像 URL (MAVEN_MIRROR_URL): 您在 第 7.9 节 “准备 Maven 镜像存储库以供离线使用” 中设置的 Maven 镜像存储库的 URL。此 URL 必须从 OpenShift 环境中的容器集访问。
  • Maven 镜像 (MAVEN_MIRROR_OF):决定要从镜像检索哪些工件的值。有关设置 mirrorOf 值的说明,请参阅 Apache Maven 文档中的 Mirror Settings。默认值为 external:*。使用此值,Maven 从镜像检索每个所需的工件,且不会查询任何其他存储库。

    • 如果您配置外部 Maven 存储库(MAVEN_REPO_URL),请更改 MAVEN_MIRROR_OF,以从镜像中排除此仓库中的工件,如 external:*,!repo-custom。将 repo-custom 替换为您在 MAVEN_REPO_ID 中配置的 ID。
    • 如果您配置内置的 Business Central Maven 存储库(BUSINESS_CENTRAL_MAVEN_SERVICE),请更改 MAVEN_MIRROR_OF 以从镜像中排除此存储库中的工件: external:*,!repo-rhpamcentr
    • 如果您配置这两个存储库,请更改 MAVEN_MIRROR_OF,以从 mirror: external:*,!repo-rhpamcentr,!repo-custom 中排除这两个软件仓库中的工件。将 repo-custom 替换为您在 MAVEN_REPO_ID 中配置的 ID。

后续步骤

如有必要,设置附加参数。

要完成部署,请按照 第 11.2.10 节 “为额外的受管 KIE 服务器完成模板部署” 中的步骤操作。

11.2.6. 为额外的受管 KIE 服务器设置 RH-SSO 身份验证参数

如果要使用 RH-SSO 身份验证,在配置模板以部署额外的管理的 KIE 服务器时完成以下附加配置。

重要

不要在同一部署中配置 LDAP 身份验证和 RH-SSO 身份验证。

先决条件

  • 在 RH-SSO 身份验证系统中创建 Red Hat Process Automation Manager 的域。
  • Red Hat Process Automation Manager 的用户名和密码在 RH-SSO 身份验证系统中创建。有关可用角色的列表,请参阅 第 14 章 Red Hat Process Automation Manager 角色和用户

    您必须为管理用户创建带有在 secret 中配置的用户名和密码的用户,如 第 7.5 节 “为管理用户创建 secret” 所述。此用户必须具有 kie-server,rest-all,admin 角色。

  • 客户端是在 RH-SSO 身份验证系统中为您要部署的 Red Hat Process Automation Manager 环境的所有组件中创建的。客户端设置包含组件的 URL。在部署环境后,您可以检查并编辑 URL。另外,红帽流程自动化管理器部署可以创建客户端。但是,此选项对环境提供较少的详细控制。
  • 您启动了模板的配置,如 第 11.2.1 节 “为额外的受管 KIE 服务器启动模板配置” 所述。

流程

  1. 设置以下参数:

    • RH-SSO URL (SSO_URL): RH-SSO 的 URL。
    • RH-SSO Realm 名称 (SSO_REALM):红帽流程自动化管理器的 RH-SSO 域。
    • RH-SSO 禁用 SSL 证书验证 (SSO_DISABLE_SSL_CERTIFICATE_VALIDATION):如果您的 RH-SSO 安装不使用有效的 HTTPS 证书,则设置为 true
  2. 完成以下流程之一:

    1. 如果您在 RH-SSO 中为 Red Hat Process Automation Manager 创建客户端,请在模板中设置以下参数:

      • Business Central Monitoring RH-SSO Client name (BUSINESS_CENTRAL_SSO_CLIENT): Business Central Monitoring 的 RH-SSO 客户端名称。
    2. 要在 RH-SSO 中为 Red Hat Process Automation Manager 创建客户端,请在模板中设置以下参数:

      • RH-SSO Realm Admin Username (SSO_USERNAME)和 RH-SSO Realm Admin Password (SSO_PASSWORD):红帽流程自动化管理器的 RH-SSO 域的用户名和密码。您必须提供此用户名和密码来创建所需的客户端。

后续步骤

如有必要,设置附加参数。

要完成部署,请按照 第 11.2.10 节 “为额外的受管 KIE 服务器完成模板部署” 中的步骤操作。

完成部署后,查看 RH-SSO 身份验证系统中 Red Hat Process Automation Manager 组件的 URL,以确保它们正确。

11.2.7. 为额外的受管 KIE 服务器设置 LDAP 身份验证的参数

如果要使用 LDAP 身份验证,在配置模板以部署额外的管理的 KIE 服务器时完成以下附加配置。

重要

不要在同一部署中配置 LDAP 身份验证和 RH-SSO 身份验证。

先决条件

流程

  1. 设置模板的 AUTH_LDAP* 参数。这些参数使用红帽 JBoss EAP 的 Elytron 子系统配置 LDAP 身份验证。有关在 LDAP 中使用 Red Hat JBoss EAP 的 Elytron 子系统的更多信息,请参阅使用 基于 LDAP 的身份存储配置身份验证

    注意

    如果要启用 LDAP 故障转移,您可以在 AUTH_LDAP_URL 参数中放置设置或更多 LDAP 服务器地址,用空格分隔。

    如果 LDAP 服务器没有定义部署所需的所有角色,您可以将 LDAP 组映射到 Red Hat Process Automation Manager 角色。要启用 LDAP 角色映射,请设置以下参数:

    • RoleMapping rolesProperties 文件路径或一行角色 (AUTH_ROLE_MAPPER_ROLES_PROPERTIES):定义角色映射的文件的完全限定路径名称,如 /opt/eap/standalone/configuration/rolemapping.properties。您必须提供此文件,并在所有适用的部署配置中的这个路径中挂载该文件 ; 有关说明,请参阅 第 13.3 节 “(可选)提供 LDAP 角色映射文件”

      或者,您可以使用 role=role1,role2;another-role=role2 pattern (如 admins=kie-server,rest-all,admin;developers=kie-server,rest-all,admin;developers=kie-server,rest-all )在此属性中输入角色映射设置。

    • 角色映射程序 Keep Mapped (AUTH_LDAP_MAPPER_KEEP_MAPPED):如果设为 true,则 LDAP 服务器上定义的映射角色和角色都设置为 用户应用角色;如果设为 false,则映射的角色将替换 LDAP 服务器上定义的角色。默认设置为 false
    • 角色映射程序 Keep Non-mapped (AUTH_LDAP_MAPPER_KEEP_NON_MAPPED):如果设为 true,则 LDAP 服务器上定义的角色不是用户应用角色;如果设为 false,则没有映射的角色会被删除。默认设置为 false

后续步骤

如有必要,设置附加参数。

要完成部署,请按照 第 11.2.10 节 “为额外的受管 KIE 服务器完成模板部署” 中的步骤操作。

11.2.8. 为额外的受管 KIE 服务器设置外部数据库服务器的参数

如果您使用 rhpam712-kieserver-externaldb.yaml 模板为 KIE Server 使用外部数据库服务器,请在配置模板以部署其他受管 KIE 服务器时完成以下附加配置。

先决条件

流程

  1. 设置以下参数:

    • KIE 服务器外部数据库 驱动程序(KIE_SERVER_EXTERNALDB_DRIVER):服务器的驱动程序,具体取决于服务器类型:

      • mysql
      • postgresql
      • mariadb
      • mssql
      • db2
      • oracle
      • sisu
    • KIE Server External Database User (KIE_SERVER_EXTERNALDB_USER)和 KIE Server External Database Password (KIE_SERVER_EXTERNALDB_PWD):外部数据库服务器的用户名和密码
    • KIE Server External Database URL (KIE_SERVER_EXTERNALDB_URL):外部数据库服务器的 JDBC URL

      注意

      如果您使用 EntrepriseDB Postgres 数据库服务器,请使用以 jdbc:postgresql:// 开头的 URL,而不使用 jdbc:edb://。或者,不要设置 URL,而是设置主机和端口参数。

    • KIE Server External Database Host (KIE_SERVER_EXTERNALDB_SERVICE_HOST)和 KIE Server External Database Port (KIE_SERVER_EXTERNALDB_SERVICE_PORT):外部数据库服务器的主机名和端口号。您可以将这些参数设置为设置 KIE_SERVER_EXTERNALDB_URL 参数的替代选择。
    • KIE Server External Database Dialect (KIE_SERVER_EXTERNALDB_DIALECT):服务器的 Hibernate 空间,具体取决于服务器类型。常见设置有:

      • org.hibernate.dialect.MySQL5InnoDBDialect
      • org.hibernate.dialect.MySQL8Dialect
      • org.hibernate.dialect.MariaDB102Dialect
      • org.hibernate.dialect.PostgreSQL95Dialect
      • org.hibernate.dialect.PostgresPlusDialect (用于 EntrepriseDB Postgres Advanced Server)
      • org.hibernate.dialect.SQLServer2012Dialect (用于 MS SQL)
      • org.hibernate.dialect.DB2Dialect
      • org.hibernate.dialect.Oracle10gDialect
      • org.hibernate.dialect.SybaseASE15Dialect

        有关支持的 dialects 列表,请参阅 Red Hat JBoss EAP 文档中的 Hibernate 属性中的 Hibernate SQL Dialects 表。

    • KIE 服务器外部数据库名称 (KIE_SERVER_EXTERNALDB_DB):在外部数据库服务器上使用的数据库名称
    • JDBC 连接检查器类 (KIE_SERVER_EXTERNALDB_CONNECTION_CHECKER): 数据库服务器的 JDBC 连接检查程序类的名称。如果没有此信息,则数据库服务器连接在丢失后无法恢复,例如,如果数据库服务器被重启。
    • JDBC Exception Sorter 类 (KIE_SERVER_EXTERNALDB_EXCEPTION_SORTER):数据库服务器的 JDBC 异常分类器类的名称。如果没有此信息,则数据库服务器连接在丢失后无法恢复,例如,如果数据库服务器被重启。
  2. 如果您为使用外部数据库服务器创建了自定义镜像,如 第 7.10 节 “为外部数据库构建自定义 KIE 服务器扩展镜像” 所述,请设置以下参数:

    • 驱动程序扩展镜像 (EXTENSIONS_IMAGE):扩展镜像的 ImageStreamTag 定义,如 jboss-kie-db2-extension-openshift-image:11.1.4.4
    • Driver ImageStream Namespace (EXTENSIONS_IMAGE_NAMESPACE):上传扩展镜像的命名空间,如 openshift 或项目命名空间。
  3. 如果您使用 MySQL 版本 8 外部数据库服务器,请启用 mysql_native_password 插件并使用它来进行身份验证。有关此插件的说明,请参阅 MySQL 8.0 Reference Manual 中的 原生可插拔身份验证

    如果您在 Red Hat OpenShift Container Platform 上使用红帽提供的 MySQL 版本 8 镜像来启用该插件,请将 MYSQL_DEFAULT_AUTHENTICATION_PLUGIN 环境变量设置为 mysql_native_password

    如果您在启用 mysql_native_password 插件前在 MySQL 版本 8 服务器上创建了用户,则必须在启用插件后更新 mysql-user 表。

后续步骤

如有必要,设置附加参数。

如果要配置 EJB 计时器,您必须为 KIE 服务器运行时数据和 EJB 计时器数据使用两个不同的数据库。要使用不同数据库或模式配置 EJB 计时器,请参阅 第 9.1.12 节 “使用不同数据库或模式配置 EJB 计时器”

要完成部署,请按照 第 11.2.10 节 “为额外的受管 KIE 服务器完成模板部署” 中的步骤操作。

11.2.9. 为额外的受管 KIE 服务器启用 Prometheus 指标集合

如果要将 KIE 服务器部署配置为使用 Prometheus 来收集和存储指标,请在部署过程中在 KIE Server 中启用对这个功能的支持。

先决条件

流程

要启用 Prometheus 指标集合的支持,请将 Prometheus Server Extension Disabled (PROMETHEUS_SERVER_EXT_DISABLED)参数设置为 false

后续步骤

如有必要,设置附加参数。

要完成部署,请按照 第 11.2.10 节 “为额外的受管 KIE 服务器完成模板部署” 中的步骤操作。

有关配置 Prometheus 指标集合的说明,请参阅 管理和监控 KIE Server

11.2.10. 为额外的受管 KIE 服务器完成模板部署

在 OpenShift Web UI 或命令行中设置所有必要的参数后,完成模板的完整部署。

流程

根据您使用的方法,完成以下步骤:

  • 在 OpenShift Web UI 中,单击 Create

    • 如果 这将创建可能具有安全或项目行为影响消息的资源,请单击 Create Anyway
  • 完成命令行并按 Enter 键。

后续步骤

根据您的环境需求,(可选)完成 第 13 章 部署环境后的可选流程 中描述的步骤。

第 12 章 修复了受管服务器环境

您可以在单个部署中部署固定的受管服务器环境,其中包括运行 KIE Server 的几个不同 pod。服务器上最初不会加载任何进程。默认情况下,数据库服务器也在 pod 中运行。每个 KIE Server pod 可以根据需要单独扩展。

也部署具有 Business Central Monitoring 和带有智能路由器 pod 的 pod。您必须使用 Business Central Monitoring 在 KIE 服务器上部署、加载和卸载进程。您还可以使用它来查看监控信息。

智能路由器是一个端点,可以从客户端应用程序接收调用到任何进程,并将每个调用自动路由到运行进程的服务器。

默认情况下,模板创建两个独立的 KIE 服务器。您可以修改模板,以在部署前更改 KIE Servers 的数量。您不能稍后轻松添加或删除 KIE 服务器。

您必须提供一个 Maven 存储库,其中包含要在服务器上部署的进程(KJAR 文件)。您的集成过程必须确保所需的进程版本上传到 Maven 存储库。您可以在开发环境中使用 Business Central 来创建进程并将其上传到 Maven 存储库。

12.1. 部署固定的受管服务器环境

您可以使用单个模板部署固定的受管服务器环境。模板文件的名称是 rhpam712-prod.yaml

该模板包括两个 KIE Server pod (使用 PostgreSQL 数据库 pod)、智能路由器在高可用性配置中,以及 Business Central Monitoring (高可用性配置)。

您可以在配置部署时更改所有组件的副本数量。如果要修改独立 KIE 服务器 pod 的数量或使用不同的数据库服务器,您必须修改模板。有关修改模板的步骤,请参考 第 12.2 节 “为固定受管环境修改模板”

注意

固定的受管环境模板在 Red Hat Process Automation Manager 7.12 中已弃用。它将在以后的发行版本中被删除。

12.1.1. 启动固定受管服务器环境的模板配置

要部署固定的受管服务器环境,请使用 rhpam712-prod.yaml 模板文件。

流程

  1. 从红帽客户门户网站的 Software Downloads 页面下载 rhpam-7.12.0-openshift-templates.zip 产品提供的可交付文件。
  2. 提取 rhpam712-prod.yaml 模板文件。
  3. 默认情况下,模板包含两个 KIE 服务器。每个服务都使用 pod 中的 PostgreSQL 数据库服务器。要更改 KIE Servers 的数量或使用 pod 或外部数据库服务器中的 MySQL 数据库服务器,请修改模板,如 第 12.2 节 “为固定受管环境修改模板” 所述。
  4. 使用以下方法之一开始部署模板:

    • 要使用 OpenShift Web UI,在 OpenShift 应用程序控制台中选择 Add to Project → Import YAML / JSON,然后选择或粘贴 rhpam712-prod.yaml 文件。在 Add Template 窗口中 ,确保选择了模板 并单击 Continue
    • 要使用 OpenShift 命令行控制台,请准备以下命令行:

      oc new-app -f <template-path>/rhpam712-prod.yaml -p BUSINESS_CENTRAL_HTTPS_SECRET=businesscentral-app-secret -p KIE_SERVER_HTTPS_SECRET=kieserver-app-secret -p PARAMETER=value

      在这个命令行中,进行以下更改:

      • <template-path > 替换为下载的模板文件的路径。
      • 根据需要,使用多个 -p PARAMETER=value 对来设置所需的参数。

后续步骤

设置模板的参数。按照 第 12.1.2 节 “为固定受管服务器环境设置所需的参数” 中的步骤设置通用参数。您可以查看模板文件以查看所有参数的描述。

12.1.2. 为固定受管服务器环境设置所需的参数

在配置模板以部署固定受管服务器环境时,您必须在所有情况下设置以下参数。

先决条件

流程

  1. 设置以下参数:

    • 凭证 secret (CREDENTIALS_SECRET):包含管理用户凭证的 secret 名称,如 第 7.5 节 “为管理用户创建 secret” 中创建。
    • Business Central Monitoring Server Keystore Secret Name (BUSINESS_CENTRAL_HTTPS_SECRET): Business Central 的机密名称,如 第 7.3 节 “为 Business Central 创建 secret” 中创建。
    • KIE Server Keystore Secret Name (KIE_SERVER_HTTPS_SECRET):KIE 服务器的 secret 名称,如 第 7.2 节 “为 KIE 服务器创建 secret” 中创建的。
    • Smart Router Keystore Secret Name (KIE_SERVER_ROUTER_HTTPS_SECRET): 智能路由器 secret 的名称,如 第 7.4 节 “为智能路由器创建 secret” 中创建。
    • Business Central 监控服务器证书名称 (BUSINESS_CENTRAL_HTTPS_NAME):您在 第 7.3 节 “为 Business Central 创建 secret” 中创建的密钥存储中的证书名称。
    • Business Central Monitoring Server Keystore Password (BUSINESS_CENTRAL_HTTPS_PASSWORD):您在 第 7.3 节 “为 Business Central 创建 secret” 中创建的密钥存储的密码。
    • KIE 服务器证书名称 (KIE_SERVER_HTTPS_NAME):您在 第 7.2 节 “为 KIE 服务器创建 secret” 中创建的密钥存储中的证书名称。
    • KIE Server Keystore Password (KIE_SERVER_HTTPS_PASSWORD):您在 第 7.2 节 “为 KIE 服务器创建 secret” 中创建的密钥存储的密码。
    • 智能路由器证书名称 (KIE_SERVER_ROUTER_HTTPS_NAME):您在 第 7.4 节 “为智能路由器创建 secret” 中创建的密钥存储中的证书名称。
    • Smart Router Keystore Password (KIE_SERVER_ROUTER_HTTPS_PASSWORD):您在 第 7.4 节 “为智能路由器创建 secret” 中创建的密钥存储的密码。
    • 应用名称 (APPLICATION_NAME):OpenShift 应用的名称。它用于 Business Central Monitoring 和 KIE 服务器的默认 URL。OpenShift 使用应用程序名称来创建单独的一组部署配置、服务、路由、标签和工件。只要使用不同的应用名称,就可以使用同一模板将多个应用部署到同一项目中。另外,应用程序名称决定了此 KIE Server 实例在 Business Central Monitoring 上加入的服务器配置(服务器模板)的名称。如果要部署多个 KIE 服务器实例,您必须确保每个服务器都有不同的应用程序名称。
    • Maven 存储库 URL (MAVEN_REPO_URL): Maven 存储库的 URL。您必须将要在 KIE 服务器上部署的所有进程(KJAR 文件)上传到此存储库。
    • Maven 存储库 ID (MAVEN_REPO_ID):Maven 存储库的标识符。默认值为 repo-custom
    • Maven 存储库用户名 (MAVEN_REPO_USERNAME): Maven 存储库的用户名。
    • Maven 存储库密码 (MAVEN_REPO_PASSWORD): Maven 存储库的密码。
    • KIE Server Mode (KIE_SERVER_MODE): 在 rhpam712-kieserver-*.yaml 模板中,默认值为 PRODUCTION。在 PRODUCTION 模式中,您无法在此 KIE Server 实例上部署 SNAPSHOT 版本 KJAR 工件,且无法更改现有容器中的工件版本。要使用 PRODUCTION 模式 部署新版本,请在同一 KIE 服务器上创建一个新容器。要部署 SNAPSHOT 版本或更改现有容器中的工件版本,请将此参数设置为 DEVELOPMENT
    • ImageStream Namespace (IMAGE_STREAM_NAMESPACE):镜像流可用的命名空间。如果 OpenShift 环境中已存在镜像流(请参阅 第 7.1 节 “确保镜像流和镜像 registry 的可用性”),则命名空间为 openshift。如果您已安装镜像流文件,则命名空间是 OpenShift 项目的名称。

后续步骤

如有必要,设置附加参数。

要完成部署,请按照 第 12.1.10 节 “为固定受管服务器环境完成模板部署” 中的步骤操作。

12.1.3. 为固定受管服务器环境配置镜像流命名空间

如果在不是 openshift 的命名空间中创建了镜像流,则必须在模板中配置命名空间。

如果 Red Hat OpenShift Container Platform 环境中已提供了所有镜像流,您可以跳过这个过程。

先决条件

流程

如果您根据 第 7.1 节 “确保镜像流和镜像 registry 的可用性” 中的说明安装了镜像流文件,请将 ImageStream Namespace (IMAGE_STREAM_NAMESPACE)参数设置为 OpenShift 项目的名称。

12.1.4. 为固定受管服务器环境配置 pod 副本号

将模板配置为部署固定的受管服务器环境时,您可以为 KIE 服务器、Business Central Monitoring 和 Smart Router 设置初始副本数。

先决条件

流程

要配置副本数量,请设置以下参数:

  • Business Central Monitoring Container Replicas (BUSINESS_CENTRAL_MONITORING_CONTAINER_REPLICAS):部署最初为 Business Central 监控创建的副本数。如果您不想将高可用性配置用于 Business Central Monitoring,请将此数字设置为 1。
  • KIE Server Container Replicas (KIE_SERVER_CONTAINER_REPLICAS):部署最初为 KIE 服务器创建的副本数。
  • 智能路由器容器副本 (SMART_ROUTER_CONTAINER_REPLICAS):部署最初为智能路由器创建的副本数。

后续步骤

如有必要,设置附加参数。

要完成部署,请按照 第 12.1.10 节 “为固定受管服务器环境完成模板部署” 中的步骤操作。

12.1.5. 为固定受管服务器环境在没有连接到公共互联网的环境中配置对 Maven 镜像的访问

当将模板配置为部署固定的受管服务器环境时,如果您的 OpenShift 环境没有与公共互联网的连接,您必须配置对根据 第 7.9 节 “准备 Maven 镜像存储库以供离线使用” 设置的 Maven 镜像的访问。

先决条件

流程

要配置对 Maven 镜像的访问,请设置以下参数:

  • Maven 镜像 URL (MAVEN_MIRROR_URL): 您在 第 7.9 节 “准备 Maven 镜像存储库以供离线使用” 中设置的 Maven 镜像存储库的 URL。此 URL 必须从 OpenShift 环境中的容器集访问。
  • Maven 镜像 (MAVEN_MIRROR_OF):决定要从镜像检索哪些工件的值。有关设置 mirrorOf 值的说明,请参阅 Apache Maven 文档中的 Mirror Settings。默认值为 external:*。使用此值,Maven 从镜像检索每个所需的工件,且不会查询任何其他存储库。

    • 如果您配置外部 Maven 存储库(MAVEN_REPO_URL),请更改 MAVEN_MIRROR_OF,以从镜像中排除此仓库中的工件,如 external:*,!repo-custom。将 repo-custom 替换为您在 MAVEN_REPO_ID 中配置的 ID。
    • 如果您配置内置的 Business Central Maven 存储库(BUSINESS_CENTRAL_MAVEN_SERVICE),请更改 MAVEN_MIRROR_OF 以从镜像中排除此存储库中的工件: external:*,!repo-rhpamcentr
    • 如果您配置这两个存储库,请更改 MAVEN_MIRROR_OF,以从 mirror: external:*,!repo-rhpamcentr,!repo-custom 中排除这两个软件仓库中的工件。将 repo-custom 替换为您在 MAVEN_REPO_ID 中配置的 ID。

后续步骤

如有必要,设置附加参数。

要完成部署,请按照 第 12.1.10 节 “为固定受管服务器环境完成模板部署” 中的步骤操作。

12.1.6. 为固定受管服务器环境设置 RH-SSO 身份验证参数

如果要使用 RH-SSO 身份验证,请在配置模板以部署固定受管服务器环境时完成以下额外配置。

重要

不要在同一部署中配置 LDAP 身份验证和 RH-SSO 身份验证。

先决条件

  • 在 RH-SSO 身份验证系统中创建 Red Hat Process Automation Manager 的域。
  • Red Hat Process Automation Manager 的用户名和密码在 RH-SSO 身份验证系统中创建。有关可用角色的列表,请参阅 第 14 章 Red Hat Process Automation Manager 角色和用户

    您必须为管理用户创建带有在 secret 中配置的用户名和密码的用户,如 第 7.5 节 “为管理用户创建 secret” 所述。此用户必须具有 kie-server,rest-all,admin 角色。

  • 客户端是在 RH-SSO 身份验证系统中为您要部署的 Red Hat Process Automation Manager 环境的所有组件中创建的。客户端设置包含组件的 URL。在部署环境后,您可以检查并编辑 URL。另外,红帽流程自动化管理器部署可以创建客户端。但是,此选项对环境提供较少的详细控制。
  • 您启动了模板的配置,如 第 12.1.1 节 “启动固定受管服务器环境的模板配置” 所述。

流程

  1. 设置以下参数:

    • RH-SSO URL (SSO_URL): RH-SSO 的 URL。
    • RH-SSO Realm 名称 (SSO_REALM):红帽流程自动化管理器的 RH-SSO 域。
    • RH-SSO 禁用 SSL 证书验证 (SSO_DISABLE_SSL_CERTIFICATE_VALIDATION):如果您的 RH-SSO 安装不使用有效的 HTTPS 证书,则设置为 true
  2. 完成以下流程之一:

    1. 如果您在 RH-SSO 中为 Red Hat Process Automation Manager 创建客户端,请在模板中设置以下参数:

      • Business Central Monitoring RH-SSO Client name (BUSINESS_CENTRAL_SSO_CLIENT): Business Central Monitoring 的 RH-SSO 客户端名称。
      • 对于模板中定义的每个 KIE 服务器:

        • KIE Server n RH-SSO Client name (KIE_SERVERn_SSO_CLIENT): 此 KIE 服务器的 RH-SSO 客户端名称。
        • KIE Server n RH-SSO Client Secret (KIE_SERVERn_SSO_SECRET):此 KIE Server 的 RH-SSO 中设置的机密字符串。
    2. 要在 RH-SSO 中为 Red Hat Process Automation Manager 创建客户端,请在模板中设置以下参数:

      • 对于模板中定义的每个 KIE 服务器:

        • KIE Server n RH-SSO Client name (KIE_SERVERn_SSO_CLIENT):此 KIE 服务器的 RH-SSO 中创建的客户端名称。
        • KIE Server n RH-SSO Client Secret (KIE_SERVERn_SSO_SECRET):此 KIE 服务器的客户端的 RH-SSO 中设置的机密字符串。
      • RH-SSO Realm Admin Username (SSO_USERNAME)和 RH-SSO Realm Admin Password (SSO_PASSWORD):红帽流程自动化管理器的 RH-SSO 域的用户名和密码。您必须提供此用户名和密码来创建所需的客户端。

后续步骤

如有必要,设置附加参数。

要完成部署,请按照 第 12.1.10 节 “为固定受管服务器环境完成模板部署” 中的步骤操作。

完成部署后,查看 RH-SSO 身份验证系统中 Red Hat Process Automation Manager 组件的 URL,以确保它们正确。

12.1.7. 为固定受管服务器环境设置 LDAP 身份验证参数

如果要使用 LDAP 身份验证,在配置模板以部署固定受管服务器环境时,完成以下额外配置。

重要

不要在同一部署中配置 LDAP 身份验证和 RH-SSO 身份验证。

先决条件

流程

  1. 设置模板的 AUTH_LDAP* 参数。这些参数使用红帽 JBoss EAP 的 Elytron 子系统配置 LDAP 身份验证。有关在 LDAP 中使用 Red Hat JBoss EAP 的 Elytron 子系统的更多信息,请参阅使用 基于 LDAP 的身份存储配置身份验证

    注意

    如果要启用 LDAP 故障转移,您可以在 AUTH_LDAP_URL 参数中放置设置或更多 LDAP 服务器地址,用空格分隔。

    如果 LDAP 服务器没有定义部署所需的所有角色,您可以将 LDAP 组映射到 Red Hat Process Automation Manager 角色。要启用 LDAP 角色映射,请设置以下参数:

    • RoleMapping rolesProperties 文件路径或一行角色 (AUTH_ROLE_MAPPER_ROLES_PROPERTIES):定义角色映射的文件的完全限定路径名称,如 /opt/eap/standalone/configuration/rolemapping.properties。您必须提供此文件,并在所有适用的部署配置中的这个路径中挂载该文件 ; 有关说明,请参阅 第 13.3 节 “(可选)提供 LDAP 角色映射文件”

      或者,您可以使用 role=role1,role2;another-role=role2 pattern (如 admins=kie-server,rest-all,admin;developers=kie-server,rest-all,admin;developers=kie-server,rest-all )在此属性中输入角色映射设置。

    • 角色映射程序 Keep Mapped (AUTH_LDAP_MAPPER_KEEP_MAPPED):如果设为 true,则 LDAP 服务器上定义的映射角色和角色都设置为 用户应用角色;如果设为 false,则映射的角色将替换 LDAP 服务器上定义的角色。默认设置为 false
    • 角色映射程序 Keep Non-mapped (AUTH_LDAP_MAPPER_KEEP_NON_MAPPED):如果设为 true,则 LDAP 服务器上定义的角色不是用户应用角色;如果设为 false,则没有映射的角色会被删除。默认设置为 false

后续步骤

如有必要,设置附加参数。

要完成部署,请按照 第 12.1.10 节 “为固定受管服务器环境完成模板部署” 中的步骤操作。

12.1.8. 为固定受管服务器环境使用外部数据库服务器设置参数

如果您将模板修改为使用 KIE Server 的外部数据库服务器,如 第 12.2 节 “为固定受管环境修改模板” 所述,在配置模板以部署固定受管服务器环境时完成以下附加配置。

先决条件

流程

  1. 设置以下参数:

    • KIE 服务器外部数据库 驱动程序(KIE_SERVER_EXTERNALDB_DRIVER):服务器的驱动程序,具体取决于服务器类型:

      • mysql
      • postgresql
      • mariadb
      • mssql
      • db2
      • oracle
      • sisu
    • KIE Server External Database User (KIE_SERVER_EXTERNALDB_USER)和 KIE Server External Database Password (KIE_SERVER_EXTERNALDB_PWD):外部数据库服务器的用户名和密码
    • KIE Server External Database URL (KIE_SERVER_EXTERNALDB_URL):外部数据库服务器的 JDBC URL

      注意

      如果您使用 EntrepriseDB Postgres 数据库服务器,请使用以 jdbc:postgresql:// 开头的 URL,而不使用 jdbc:edb://。或者,不要设置 URL,而是设置主机和端口参数。

    • KIE Server External Database Host (KIE_SERVER_EXTERNALDB_SERVICE_HOST)和 KIE Server External Database Port (KIE_SERVER_EXTERNALDB_SERVICE_PORT):外部数据库服务器的主机名和端口号。您可以将这些参数设置为设置 KIE_SERVER_EXTERNALDB_URL 参数的替代选择。
    • KIE Server External Database Dialect (KIE_SERVER_EXTERNALDB_DIALECT):服务器的 Hibernate 空间,具体取决于服务器类型。常见设置有:

      • org.hibernate.dialect.MySQL5InnoDBDialect
      • org.hibernate.dialect.MySQL8Dialect
      • org.hibernate.dialect.MariaDB102Dialect
      • org.hibernate.dialect.PostgreSQL95Dialect
      • org.hibernate.dialect.PostgresPlusDialect (用于 EntrepriseDB Postgres Advanced Server)
      • org.hibernate.dialect.SQLServer2012Dialect (用于 MS SQL)
      • org.hibernate.dialect.DB2Dialect
      • org.hibernate.dialect.Oracle10gDialect
      • org.hibernate.dialect.SybaseASE15Dialect

        有关支持的 dialects 列表,请参阅 Red Hat JBoss EAP 文档中的 Hibernate 属性中的 Hibernate SQL Dialects 表。

    • KIE 服务器外部数据库名称 (KIE_SERVER_EXTERNALDB_DB):在外部数据库服务器上使用的数据库名称
    • JDBC 连接检查器类 (KIE_SERVER_EXTERNALDB_CONNECTION_CHECKER): 数据库服务器的 JDBC 连接检查程序类的名称。如果没有此信息,则数据库服务器连接在丢失后无法恢复,例如,如果数据库服务器被重启。
    • JDBC Exception Sorter 类 (KIE_SERVER_EXTERNALDB_EXCEPTION_SORTER):数据库服务器的 JDBC 异常分类器类的名称。如果没有此信息,则数据库服务器连接在丢失后无法恢复,例如,如果数据库服务器被重启。
  2. 如果您为使用外部数据库服务器创建了自定义镜像,如 第 7.10 节 “为外部数据库构建自定义 KIE 服务器扩展镜像” 所述,请设置以下参数:

    • 驱动程序扩展镜像 (EXTENSIONS_IMAGE):扩展镜像的 ImageStreamTag 定义,如 jboss-kie-db2-extension-openshift-image:11.1.4.4
    • Driver ImageStream Namespace (EXTENSIONS_IMAGE_NAMESPACE):上传扩展镜像的命名空间,如 openshift 或项目命名空间。
  3. 如果您使用 MySQL 版本 8 外部数据库服务器,请启用 mysql_native_password 插件并使用它来进行身份验证。有关此插件的说明,请参阅 MySQL 8.0 Reference Manual 中的 原生可插拔身份验证

    如果您在 Red Hat OpenShift Container Platform 上使用红帽提供的 MySQL 版本 8 镜像来启用该插件,请将 MYSQL_DEFAULT_AUTHENTICATION_PLUGIN 环境变量设置为 mysql_native_password

    如果您在启用 mysql_native_password 插件前在 MySQL 版本 8 服务器上创建了用户,则必须在启用插件后更新 mysql-user 表。

后续步骤

如有必要,设置附加参数。

如果要配置 EJB 计时器,您必须为 KIE 服务器运行时数据和 EJB 计时器数据使用两个不同的数据库。要使用不同数据库或模式配置 EJB 计时器,请参阅 第 9.1.12 节 “使用不同数据库或模式配置 EJB 计时器”

要完成部署,请按照 第 12.1.10 节 “为固定受管服务器环境完成模板部署” 中的步骤操作。

12.1.9. 为固定受管服务器环境启用 Prometheus 指标集合

如果要将 KIE 服务器部署配置为使用 Prometheus 来收集和存储指标,请在部署过程中在 KIE Server 中启用对这个功能的支持。

先决条件

流程

要启用 Prometheus 指标集合的支持,请将 Prometheus Server Extension Disabled (PROMETHEUS_SERVER_EXT_DISABLED)参数设置为 false

后续步骤

如有必要,设置附加参数。

要完成部署,请按照 第 12.1.10 节 “为固定受管服务器环境完成模板部署” 中的步骤操作。

有关配置 Prometheus 指标集合的说明,请参阅 管理和监控 KIE Server

12.1.10. 为固定受管服务器环境完成模板部署

在 OpenShift Web UI 或命令行中设置所有必要的参数后,完成模板的完整部署。

流程

根据您使用的方法,完成以下步骤:

  • 在 OpenShift Web UI 中,单击 Create

    • 如果 这将创建可能具有安全或项目行为影响消息的资源,请单击 Create Anyway
  • 完成命令行并按 Enter 键。

后续步骤

根据您的环境需求,(可选)完成 第 13 章 部署环境后的可选流程 中描述的步骤。

12.2. 为固定受管环境修改模板

要根据您的需要调整固定的受管环境,您需要在部署环境前修改 rhpam712-prod.yaml 模板。

默认情况下,模板创建两个复制的 KIE 服务器 pod。您可以在每个 pod 上部署单独的进程。要添加更多重复的 KIE Server pod,您需要在部署环境前修改模板。

默认情况下,模板会创建一个 PostgreSQL pod,为每个复制的 KIE 服务器提供数据库服务器。如果您希望使用 PostgreSQL 或使用外部服务器(在 OpenShift 项目之外),则需要在部署环境前修改模板。

对于 rhpam712-prod.yaml 模板,您也可以调整 Business Central Monitoring 的初始副本数。

OpenShift 模板定义了一组可由 OpenShift 创建的对象。要更改环境配置,您需要修改、添加或删除这些对象。为简化此任务,Red Hat Process Automation Manager 模板中提供了注释。

模板中的一些注释标记块,以 BEGIN 和结尾处 结束。例如,以下块被命名为 Sample block

## Sample block BEGIN
sample line 1
sample line 2
sample line 3
## Sample block END

对于某些更改,您可能需要将一个模板文件中的块替换为由 Red Hat Process Automation Manager 提供的另一个模板文件的块。在这种情况下,删除块,然后将新块粘贴到其确切的位置。

请注意,命名的块可以嵌套。

流程

  • 如果要添加更多重复的 KIE 服务器 pod,请对每个额外 pod 重复以下操作:

    1. 为新 pod 选择一个数字。默认 pod 具有数字 12,因此您可以将 3 用于第一个新 pod,然后 4 等。
    2. 将文件的以下块(使用注释从 BEGINEND 标记)复制到文件的末尾:

      • KIE 服务器服务 1
      • PostgreSQL 服务 1
      • KIE 服务器路由 1
      • KIE server deployment config 1
      • PostgreSQL 部署配置 1
      • PostgreSQL 持久性卷声明 1
    3. 在新副本中,将所有 -1 实例替换为新 pod 号,例如 -3
  • 如果要使用 MySQL 而不是 PostgreSQL,替换文件的多个块(从 BEGINEND 标记为注释),使用 rhpam712-kieserver-postgresql.yaml 文件中的内容替换它们,然后修改新添加块的一些内容:

    1. 将名为 MySQL 数据库参数 的块替换为名为 PostgreSQL 数据库参数 的块。(使用此块以及 rhpam712-kieserver-postgresql.yaml 文件中的所有后续替换块。)

      为每个复制的 KIE Server pod 号(例如 12) 在未修改的模板中重复以下操作。n 代表 pod 号,例如 1

      • 将名为 PostgreSQL service N 的块替换为名为 MySQL service 的块。
      • 将名为 PostgreSQL 驱动程序设置 N 的块替换为名为 MySQL 驱动程序设置 的块。
      • 将名为 PostgreSQL 部署配置 N 的块替换为名为 MySQL 部署配置的块。
      • 将名为 PostgreSQL 持久卷声明 N 的块替换为名为 MySQL 持久卷声明 的块。
      • 在所有新添加的块中,手动进行以下替换,其中 N 是 pod 号:

        • -mysql 带有 -mysql-Nexcept-mysql-pvol-mysql-claim
        • -mysql-claim with -mysql-claim-N
  • 如果要使用外部数据库服务器,替换文件的多个块,标记为 BEGIN 中的注释到 END,使用 rhpam712-kieserver-externaldb.yaml 文件中的块,删除一些块,以及修改一些新添加的块:

    1. 将名为 MySQL 数据库参数 的块替换为名为 External database parameters 的块。(使用此块以及 rhpam712-kieserver-external.yaml 文件中的所有后续替换块。)

      为每个复制的 KIE Server pod 号(例如 12) 在未修改的模板中重复以下操作。n 代表 pod 号,例如 1

      • 删除名为 PostgreSQL 服务 N的块
      • 删除名为 PostgreSQL 部署配置 N的块
      • 删除名为 PostgreSQL 持久性卷声明 N的块
      • 将名为 PostgreSQL 驱动程序设置 N 的块替换为名为 External database driver settings 的块。
      • 在新的 外部数据库驱动程序设置 块中,如果对于基础架构中的不同 KIE Server pod 有所不同,请设置此特定 pod 的值:

        • RHPAM_USERNAME :登录到数据库服务器的用户名
        • RHPAM_PASSWORD :登录到数据库服务器的密码
        • RHPAM_XA_CONNECTION_PROPERTY_URL :登录到数据库服务器的完整 URL
        • RHPAM_SERVICE_HOST :数据库服务器的主机名
        • RHPAM_DATABASE :数据库名称
重要

标准 KIE 服务器镜像包括 MySQL、MariaDB 和 PostgreSQL 外部数据库服务器的驱动程序。如果要使用另一个数据库服务器,您必须构建自定义 KIE Server 镜像。具体说明请查看 第 7.10 节 “为外部数据库构建自定义 KIE 服务器扩展镜像”

  • 如果要更改最初为 Business Central Monitoring 创建的副本数,请在注释其下面的行中,为 Business Central Monitoring 更改副本的数量,请将副本数改为所需的值。

第 13 章 部署环境后的可选流程

根据您的环境需求,您可能需要在部署后完成某些可选流程。

13.1. (可选)提供 Git hook 目录

如果您部署编写信封并配置 GIT_HOOKS_DIR 参数,您必须提供 Git hook 目录,并且必须在 Business Central 部署中挂载此目录。

Git hook 的典型用途与上游存储库交互。要启用 Git hook 以将提交推送到上游存储库,还必须提供一个与上游存储库上配置的公钥对应的 secret 密钥。

先决条件

  • 已使用模板部署了 Red Hat Process Automation Manager 编写环境
  • 您可以在部署中设置 GIT_HOOKS_DIR 参数

流程

  1. 如果需要使用 SSH 身份验证与上游存储库交互,请完成以下步骤,以准备和挂载带有所需文件的 secret:

    1. 使用与存储库中存储的公钥匹配的私钥准备 id_rsa 文件。
    2. 使用存储库的正确名称、地址和公钥准备 known_hosts 文件。
    3. 使用 oc 命令创建带有两个文件的 secret,例如:

      oc create secret git-hooks-secret --from-file=id_rsa=id_rsa --from-file=known_hosts=known_hosts
    4. 将 secret 挂载到 Business Central 部署的 SSH 密钥路径中,例如:

      oc set volume dc/<myapp>-rhpamcentr --add --type secret --secret-name git-hooks-secret --mount-path=/home/jboss/.ssh --name=ssh-key

      <myapp > 替换为您在配置模板时设置的应用程序名称。

  2. 创建 Git hook 目录。具体步骤请查看 Git hook 参考文档

    例如,一个简单的 Git hook 目录可以提供 post-commit hook,用于推送上游更改。如果项目从存储库导入到 Business Central,则该存储库仍会配置为上游存储库。创建名为 post-commit 的文件,其权限值为 755 及以下内容:

    git push
    注意

    Business Central 不支持 pre-commit 脚本。使用 post-commit 脚本。

  3. 为 Business Central 部署提供 Git hook 目录。您可以使用配置映射或持久性卷。

    1. 如果 Git hook 由一个或多个固定的脚本文件组成,请使用配置映射。完成以下步骤:

      1. 更改到您创建的 Git hook 目录。
      2. 从目录中的文件创建 OpenShift 配置映射。运行以下命令:

        oc create configmap git-hooks --from-file=<file_1>=<file_1> --from-file=<file_2>=<file_2> ...

        file_1file_2 等替换为 Git hook 脚本文件名。例如:

        oc create configmap git-hooks --from-file=post-commit=post-commit
      3. 将配置映射挂载到您配置的路径中的 Business Central 部署中:

        oc set volume dc/<myapp>-rhpamcentr --add --type configmap --configmap-name git-hooks  --mount-path=<git_hooks_dir> --name=git-hooks

        <myapp> 替换为在配置模板时设置的应用程序名称,<git_hooks_dir> 是在配置模式时设置的 GIT_HOOKS_DIR 的值。

    2. 如果 Git hook 由长文件组成,或者依赖于可执行文件或 KJAR 文件等二进制文件,请使用持久性卷。您必须创建一个持久性卷,创建一个持久性卷声明,并将卷与声明相关联,将文件传送到卷,并在 myapp-rhpamcentr 部署配置中挂载卷(将 myapp 替换为应用名称)。有关创建和挂载持久性卷的说明,请参阅使用持久性卷。有关将文件复制到持久性卷的说明,请参阅 和容器中的 传输文件
  4. 等待几分钟,然后检查项目中的 pod 列表和状态。由于 Business Central 在提供 Git hook 目录之前不会启动,KIE 服务器可能无法完全启动。要查看 KIE 服务器是否已启动,请检查以下命令的输出:

    oc get pods

    如果没有正常工作的 KIE Server pod,请启动它:

    oc rollout latest dc/<myapp>-kieserver

    <myapp > 替换为在配置模板时设置的应用程序名称。

13.2. (可选)提供信任存储来访问带有自签名证书的 HTTPS 服务器

红帽流程自动化管理器基础架构的组件可能需要对具有自签名 HTTPS 证书的服务器使用 HTTPS 访问。例如,Business Central、Business Central Monitoring 和 KIE 服务器可能需要与使用自签名 HTTPS 服务器证书的内部 Nexus 存储库进行交互。

在这种情况下,为了确保 HTTPS 连接成功完成,您必须使用信任存储为这些服务提供客户端证书。

如果您不需要 Red Hat Process Automation Manager 组件与使用自签名 HTTPS 服务器证书的服务器进行通信,请跳过这个过程。

先决条件

  • 已使用模板部署了 Red Hat Process Automation Manager 环境
  • 您有要添加到部署的客户端证书

流程

  1. 使用证书准备信任存储。使用以下命令来创建信任存储,或将证书添加到现有信任存储中。将所有必要的证书添加到一个信任存储中。

    keytool -importcert -file certificate-file -alias alias -keyalg algorithm -keysize size -trustcacerts -noprompt -storetype JKS -keypass truststore-password -storepass truststore-password -keystore keystore-file

    替换以下值:

    • certificate-file :您要添加到信任存储中的证书路径名称。
    • alias :信任存储中证书的别名。如果您要在 truststore 中添加多个证书,每个证书都必须有一个唯一的别名。
    • 算法 :用于证书的加密算法,通常为 RSA
    • 大小 :证书密钥的大小(以字节为单位),例如 2048
    • truststore-password : truststore 的密码。
    • keystore-file :信任存储文件的路径名。如果文件不存在,命令会创建一个新的信任存储。

      以下示例命令将 /var/certs/nexus.cer 文件中的证书添加到 /var/keystores/custom-trustore.jks 文件中的信任存储中。truststore 密码为 mykeystorepass

      keytool -importcert -file /var/certs/nexus.cer -alias nexus-cert -keyalg RSA -keysize 2048 -trustcacerts -noprompt -storetype JKS -keypass mykeystorepass -storepass mykeystorepass -keystore /var/keystores/custom-trustore.jks
  2. 使用 oc 命令创建带有 truststore 文件的 secret,例如:

    oc create secret generic truststore-secret --from-file=/var/keystores/custom-trustore.jks
  3. 在基础架构所需组件的部署中,挂载 secret,然后设置 JAVA_OPTS_APPEND 选项,使 Java 应用程序基础架构能够使用 trast 存储,例如:

    oc set volume dc/myapp-rhpamcentr --add --overwrite --name=custom-trustore-volume --mount-path /etc/custom-secret-volume --secret-name=custom-secret
    
    oc set env dc/myapp-rhpamcentr JAVA_OPTS_APPEND='-Djavax.net.ssl.trustStore=/etc/custom-secret-volume/custom-trustore.jks -Djavax.net.ssl.trustStoreType=jks -Djavax.net.ssl.trustStorePassword=mykeystorepass'
    oc set volume dc/myapp-kieserver --add --overwrite --name=custom-trustore-volume --mount-path /etc/custom-secret-volume --secret-name=custom-secret
    
    oc set env dc/myapp-kieserver JAVA_OPTS_APPEND='-Djavax.net.ssl.trustStore=/etc/custom-secret-volume/custom-trustore.jks -Djavax.net.ssl.trustStoreType=jks -Djavax.net.ssl.trustStorePassword=mykeystorepass'

    使用您在配置模板时设置的应用程序名称替换 myapp

13.3. (可选)提供 LDAP 角色映射文件

如果您使用文件名配置 AUTH_ROLE_MAPPER_ROLES_PROPERTIES 参数,您必须提供定义角色映射的文件。将此文件挂载到所有受影响的部署配置上。

先决条件

  • 已使用模板部署了 Red Hat Process Automation Manager 环境
  • 在部署中设置 AUTH_ROLE_MAPPER_ROLES_PROPERTIES 参数

流程

  1. 创建角色映射属性文件,如 my-role-map。该文件必须包含以下格式的条目:

    ldap_role=product_role1, product_role2...

    例如:

    admins=kie-server,rest-all,admin
  2. 输入以下命令从文件创建 OpenShift 配置映射:

    oc create configmap ldap-role-mapping --from-file=<new_name>=<existing_name>

    将 &lt ;new_name > 替换为 pod 上要具有的名称(它必须与 AUTH_ROLE_MAPPER_ROLES_PROPERTIES 文件中指定的名称相同)以及您创建的 <existing_name> 文件的名称。例如:

    oc create configmap ldap-role-mapping --from-file=rolemapping.properties=my-role-map
  3. 将配置映射挂载到为角色映射配置的每个部署配置上。

    以下部署配置在此环境中会受到影响:

    使用应用程序名称替换 myapp。有时,可以在不同的应用程序名称下存在几个 KIE 服务器部署。

    对于每个部署配置,运行以下命令:

     oc set volume dc/<deployment_config_name> --add --type configmap --configmap-name ldap-role-mapping --mount-path=<mapping_dir> --name=ldap-role-mapping

    <mapping_dir > 替换为 AUTH_ROLE_MAPPER_ROLES_PROPERTIES 参数中设置的目录名称(没有文件名),例如 /opt/eap/standalone/configuration/rolemapping

13.4. 提供 Elytron 用户配置或其他安装后设置

如果不使用 LDAP 或 RH-SSO 身份验证,Red Hat Process Automation Manager 依赖于 Red Hat JBoss EAP 的 Elytron 子系统中的内部用户。默认情况下,只创建管理用户。您可能需要将其他用户添加到 Red Hat JBoss EAP 的 Elytron 安全子系统。为此,您必须运行 Red Hat JBoss EAP 后配置脚本。

您可以在 Red Hat OpenShift Container Platform 部署 Red Hat Process Automation Manager 中,配置此安装后脚本或任何其他 Red Hat JBoss EAP 后配置脚本。

流程

  1. GitHub 存储库 下载示例文件。
  2. 根据示例文件准备以下文件:

    • postconfigure.sh :Red Hat JBoss EAP 必须运行的、后配置 shell 脚本。在这个示例中,此脚本使用 add-users.cli 脚本来添加 Elytron 用户。如果要在 CLI 脚本之外完成安装后任务,请修改此脚本。
    • delayedpostconfigure.sh: 一个空文件,Red Hat Process Automation Manager 版本 7.12.0 需要。
    • add-users.cli :用于配置 Elytron 用户或任何其他 CLI 任务的红帽 JBoss EAP 命令行界面脚本。在以下行间添加您的命令:

      embed-server --std-out=echo --server-config=standalone-openshift.xml batch
      
        <your jboss-cli commands>
      
      run-batch quit
  3. 使用 oc 命令登录到 Red Hat OpenShift Container Platform 集群,并更改到部署的命名空间。
  4. 使用以下命令,使用您准备的文件创建 ConfigMap:

    oc create configmap postconfigure \
        --from-file=add-users.cli=add-users.cli \
        --from-file=delayedpostconfigure.sh=delayedpostconfigure.sh \
        --from-file=postconfigure.sh=postconfigure.sh
  5. 使用以下命令,将 ConfigMap 挂载到 Business Central 和 KIE 服务器的部署配置中:

    oc set volumes dc/myapp-kieserver --add  \
        --configmap-name=postconfigure \
        --mount-path=/opt/eap/extensions \
        --default-mode=0555
    oc set volumes dc/myapp-rhpamcentr --add  \
        --configmap-name=postconfigure \
        --mount-path=/opt/eap/extensions \
        --default-mode=0555

    使用您配置的应用程序名称替换 myapp。如果需要,您可以删除您不需要的任何部署配置的命令。如果您有几个 KIE 服务器实例,您可以为它们添加命令。

    这个变化会导致重新部署组件。

第 14 章 Red Hat Process Automation Manager 角色和用户

要访问 Business Central 或 KIE Server,您必须创建用户并在服务器启动前为其分配适当的角色。安装 Business Central 或 KIE 服务器时,您可以创建用户和角色。

如果 Business Central 和 KIE 服务器都在单一实例上运行,则对 Business Central 进行身份验证的用户也可以访问 KIE 服务器。

但是,如果 Business Central 和 KIE 服务器在不同实例上运行,则对 Business Central 进行身份验证的用户必须单独通过身份验证才能访问 KIE 服务器。例如,如果一个在 Business Central 上通过身份验证但未通过 KIE Server 进行身份验证的用户尝试查看或管理 Business Central 中的进程定义,则会在日志文件中记录 401 错误,以及从远程服务器加载数据的 Invalid 凭证。请联系您的系统管理员。 信息出现在 Business Central 中。

本节论述了 Red Hat Process Automation Manager 用户角色。

注意

admin, analyst, developer, manager, process-admin, user, 和 rest-all 角色为 Business Central 保留。kie-server 角色为 KIE 服务器保留。因此,可用的角色可能会因 Business Central、KIE Server 还是安装这两者而异。

  • admin :具有管理 角色的用户 是 Business Central 管理员。他们可以管理用户、创建、克隆和管理存储库。它们具有对应用程序所需的更改的完整访问权限。具有 admin 角色的用户可以访问 Red Hat Process Automation Manager 中的所有区域。
  • 分析师 :具有 分析 者角色的用户有权访问所有高级别功能。他们可以对他们的项目进行建模和执行。但是,这些用户无法在 Design → Projects 视图中为空格或删除空格添加贡献者。带有 analyst 角色的用户没有访问 Deploy → Execution Servers 视图(面向管理员)的访问权限。但是,当这些用户访问 Library 透视图时,可以使用 Deploy 按钮。
  • 开发人员 :具有 developer 角色的用户几乎可以访问所有的功能,并且可以管理规则、模型、流程、表单和仪表板。他们可以管理资产存储库,他们可以创建、构建和部署项目。只有某些管理功能(如创建和克隆新存储库)才会在具有 developer 角色的用户中隐藏。
  • 管理器 :具有 manager 角色的用户可以查看报告。这些用户通常对业务流程及其性能、业务指示器和其他业务相关报告相关的统计信息感兴趣。具有此角色的用户只能访问进程和任务报告。
  • process-admin :具有 process-admin 角色的用户是业务流程管理员。他们可完全访问业务流程、业务任务和执行错误。这些用户还可以查看业务报告,并可访问 Task Inbox 列表。
  • 用户 :具有用户角色 的用户 可以处理 Task Inbox 列表,其中包含属于当前运行的进程的商业任务。具有此角色的用户可以查看进程和任务报告和管理进程。
  • rest-all :拥有 rest-all 角色的用户可以访问 Business Central REST 功能。
  • kie-server :具有 kie-server 角色的用户可以访问 KIE Server REST 功能。对于需要访问 Business Central 中的 ManageTrack 视图的用户,这个角色是必须的。

第 15 章 OpenShift 模板参考信息

Red Hat Process Automation Manager 提供以下 OpenShift 模板。要访问模板,请从红帽客户门户网站的 Software Downloads 页面下载并提取 rhpam-7.12.0-openshift-templates.zip 产品交付的文件。

  • rhpam712-trial-ephemeral.yaml 提供了一个 Business Central 实例,以及一个连接到 Business Central 实例的 KIE 服务器实例。此环境使用没有持久性存储的临时配置。有关此模板的详情,请参考 第 15.1 节 “rhpam712-trial-ephemeral.yaml template”
  • rhpam712-authoring.yaml 提供了一个 Business Central 实例和 KIE 服务器实例,连接到 Business Central 实例。KIE 服务器实例使用具有持久性存储的 H2 数据库。您可以使用此环境编写流程、服务和其他业务资产。有关此模板的详情,请参考 第 15.2 节 “rhpam712-authoring.yaml template”
  • rhpam712-authoring-ha.yaml 提供高可用性 Business Central、一个连接到 Business Central 实例的 KIE 服务器实例,以及 KIE 服务器实例使用的 MySQL 实例。您可以使用此环境编写流程、服务和其他业务资产。有关此模板的详情,请参考 第 15.3 节 “rhpam712-authoring-ha.yaml template”
  • rhpam712-prod-immutable-monitor.yaml 提供了一个 Business Central Monitoring 实例,以及一个可与不可变 KIE 服务器一起使用的智能路由器。部署此模板时,OpenShift 会显示您必须用来部署 rhpam712-prod-immutable-kieserver.yaml 模板的设置。有关此模板的详情,请参考 第 15.4 节 “rhpam712-prod-immutable-monitor.yaml template”
  • rhpam712-prod-immutable-kieserver.yaml 提供了一个不可变的 KIE 服务器实例。当您部署此模板时,为 KIE 服务器实例上运行的一个或多个服务触发 Source-to-Image (S2I)构建。KIE 服务器实例可以选择配置为连接到由 rhpam712-prod-immutable-monitor.yaml 提供的 Business Central Monitoring 实例和智能路由器。有关此模板的详情,请参考 第 15.5 节 “rhpam712-prod-immutable-kieserver.yaml template”
  • rhpam712-prod-immutable-kieserver-amq.yaml 提供不可变 KIE 服务器实例。当您部署此模板时,为 KIE 服务器实例上运行的一个或多个服务触发 Source-to-Image (S2I)构建。KIE 服务器实例可以选择配置为连接到由 rhpam712-prod-immutable-monitor.yaml 提供的 Business Central Monitoring 实例和智能路由器。模板的此版本包括 JMS 集成。有关此模板的详情,请参考 第 15.6 节 “rhpam712-prod-immutable-kieserver-amq.yaml template”
  • rhpam712-kieserver-externaldb.yaml 提供了一个使用外部数据库的 KIE 服务器实例。您可以配置 KIE 服务器实例以连接到 Business Central 实例。另外,您可以将此模板中的部分复制到另一个模板中,以配置其他模板中的 KIE 服务器实例以使用外部数据库。有关此模板的详情,请参考 第 15.7 节 “rhpam712-kieserver-externaldb.yaml template”
  • rhpam712-kieserver-mysql.yaml 提供了一个 KIE 服务器实例,以及 KIE 服务器实例使用的 MySQL 实例。您可以配置 KIE 服务器实例以连接到 Business Central 实例。另外,您可以将此模板中的部分复制到另一个模板中,以配置其他模板中的 KIE 服务器实例,以使用 MySQL 和 提供 MySQL 实例。有关此模板的详情,请参考 第 15.8 节 “rhpam712-kieserver-mysql.yaml template”
  • rhpam712-kieserver-postgresql.yaml 提供了一个 KIE 服务器实例,以及 KIE 服务器实例使用的 PostgreSQL 实例。您可以配置 KIE 服务器实例以连接到 Business Central 实例。另外,您可以将此模板中的部分复制到另一个模板中,以配置其他模板中的 KIE 服务器实例,以使用 PostgreSQL 和提供 PostgreSQL 实例。有关此模板的详情,请参考 第 15.9 节 “rhpam712-kieserver-postgresql.yaml template”
  • rhpam712-managed.yaml 提供了一个高可用性 Business Central Monitoring 实例、KIE Server 实例和 KIE 服务器实例使用的 PostgreSQL 实例。OpenShiftStartupStrategy 已启用,确保 Business Central Monitoring 实例可以自动连接到同一项目中的其他 KIE 服务器实例,只要这些实例也启用了 OpenShiftStartupStrategy。有关此模板的详情,请参考 第 15.10 节 “rhpam712-managed.yaml template”
  • rhpam712-prod.yaml 提供了一个高可用性 Business Central 监控实例、智能路由器、连接到 Business Central 实例的两个不同 KIE 服务器,以及智能路由器,以及两个 PostgreSQL 实例。每个 KIE 服务器都使用自己的 PostgreSQL 实例。您可以使用此环境在生产环境或暂存环境中执行业务资产。您可以为每个组件配置副本数。有关此模板的详情,请参考 第 15.11 节 “rhpam712-prod.yaml template”

15.1. rhpam712-trial-ephemeral.yaml template

用于 Red Hat Process Automation Manager 7.12 的临时编写和测试环境的应用程序模板 - 已弃用

15.1.1. 参数

模板允许您定义接受值的参数。然后,该值会在引用参数的位置替换。可在对象列表字段中的任意文本字段中定义引用。如需更多信息,请参阅 Openshift 文档

变量名称镜像环境变量描述示例值必填

APPLICATION_NAME

 — 

应用程序的名称。

myapp

true

DEFAULT_PASSWORD

KIE_ADMIN_PWD

此试用环境中的用户方便使用默认密码。

RedHat

true

KIE_ADMIN_USER

KIE_ADMIN_USER

KIE 管理员用户名。

adminUser

False

KIE_SERVER_BYPASS_AUTH_USER

KIE_SERVER_BYPASS_AUTH_USER

允许 KIE 服务器绕过经过身份验证的用户进行与任务相关的操作,如查询。(设置 org.kie.server.bypass.auth.user 系统属性)

false

False

KIE_SERVER_MODE

KIE_SERVER_MODE

KIE 服务器模式.有效值为 'DEVELOPMENT' 或 'PRODUCTION'。在生产模式中,您无法在 KIE 服务器上部署 SNAPSHOT 工件版本,且无法更改现有容器中的工件版本。(设置 org.kie.server.mode 系统属性)。

开发

False

KIE_MBEANS

KIE_MBEANS

KIE Server mbeans 启用/禁用.(设置 kie.mbeans 和 kie.scanner.mbeans 系统属性)

enabled

False

DROOLS_SERVER_FILTER_CLASSES

DROOLS_SERVER_FILTER_CLASSES

KIE 服务器类过滤.(设置 org.drools.server.filter.classes 系统属性)

true

False

PROMETHEUS_SERVER_EXT_DISABLED

PROMETHEUS_SERVER_EXT_DISABLED

如果设置为 false,则启用 prometheus 服务器扩展。(设置 org.kie.prometheus.server.ext.disabled 系统属性)

false

False

KIE_SERVER_HOSTNAME_HTTP

HOSTNAME_HTTP

http 服务路由的自定义主机名。默认主机名留空,例如: insecure-<application-name>-kieserver-<project>.<default-domain-suffix>

 — 

False

KIE_SERVER_ACCESS_CONTROL_ALLOW_ORIGIN

AC_ALLOW_ORIGIN_FILTER_RESPONSE_HEADER_VALUE

在 KIE 服务器中设置 Access-Control-Allow-Origin 响应标头值(对于 CORS 支持)。

*

False

KIE_SERVER_ACCESS_CONTROL_ALLOW_METHODS

AC_ALLOW_METHODS_FILTER_RESPONSE_HEADER_VALUE

在 KIE 服务器中设置 Access-Control-Allow-Methods 响应标头值(对于 CORS 支持使用)。

GET、POST、OPTIONS、PUT

False

KIE_SERVER_ACCESS_CONTROL_ALLOW_HEADERS

AC_ALLOW_HEADERS_FILTER_RESPONSE_HEADER_VALUE

在 KIE 服务器中设置 Access-Control-Allow-Headers 响应标头值(对于 CORS 支持使用)。

accept, Authorization, Content-Type, X-Requested-With

False

KIE_SERVER_ACCESS_CONTROL_ALLOW_CREDENTIALS

AC_ALLOW_CREDENTIALS_FILTER_RESPONSE_HEADER_VALUE

在 KIE 服务器中设置 Access-Control-Allow-Credentials 响应标头值(对于 CORS 支持使用)。

true

False

KIE_SERVER_ACCESS_CONTROL_MAX_AGE

AC_MAX_AGE_FILTER_RESPONSE_HEADER_VALUE

在 KIE 服务器中设置 Access-Control-Max-Age 响应标头值(对于 CORS 支持使用)。

1

False

BUSINESS_CENTRAL_HOSTNAME_HTTP

HOSTNAME_HTTP

Business Central 的 http 服务路由的自定义主机名。默认主机名留空,例如: insecure-<application-name>-rhpamcentr-<project>.<default-domain-suffix>

 — 

False

KIE_SERVER_CONTROLLER_OPENSHIFT_GLOBAL_DISCOVERY_ENABLED

KIE_SERVER_CONTROLLER_OPENSHIFT_GLOBAL_DISCOVERY_ENABLED

如果设置为 true,请打开 KIE Server 全局发现功能(设置 org.kie.server.controller.openshift.global.discovery.enabled 系统属性)

false

False

KIE_SERVER_CONTROLLER_OPENSHIFT_PREFER_KIESERVER_SERVICE

KIE_SERVER_CONTROLLER_OPENSHIFT_PREFER_KIESERVER_SERVICE

如果开启了 Business Central 的 OpenShift 集成,则将此参数设置为 true 可让通过 OpenShift 内部服务端点连接到 KIE Server。(设置 org.kie.server.controller.openshift.prefer.kieserver.service 系统属性)

true

False

KIE_SERVER_CONTROLLER_TEMPLATE_CACHE_TTL

KIE_SERVER_CONTROLLER_TEMPLATE_CACHE_TTL

KIE ServerTemplate Cache TTL (以毫秒为单位)。(设置 org.kie.server.controller.template.cache.ttl 系统属性)

5000

False

IMAGE_STREAM_NAMESPACE

 — 

安装 Red Hat Process Automation Manager 镜像的 ImageStreams 的命名空间。这些 ImageStreams 通常安装在 openshift 命名空间中。只有在不同的命名空间/项目中安装 ImageStream 时,才需要修改此参数。默认为 "openshift"。

openshift

true

KIE_SERVER_IMAGE_STREAM_NAME

 — 

用于 KIE 服务器的镜像流的名称。默认为 "rhpam-kieserver-rhel8"。

rhpam-kieserver-rhel8

true

IMAGE_STREAM_TAG

 — 

指向镜像流中镜像的命名指针。默认为 "7.12.0"。

7.12.0

true

KIE_SERVER_CONTAINER_DEPLOYMENT

KIE_SERVER_CONTAINER_DEPLOYMENT

带有可选别名的 KIE 服务器容器部署配置。Format: containerId=groupId:artifactId:version|c2(alias2)=g2:a2:v2

 — 

False

MAVEN_REPO_ID

MAVEN_REPO_ID

用于 maven 存储库的 id (如果已设置)。默认是随机生成的。

repo-custom

False

MAVEN_REPO_URL

MAVEN_REPO_URL

Maven 存储库或服务的完全限定 URL。

http://nexus.nexus-project.svc.cluster.local:8081/nexus/content/groups/public/

False

MAVEN_REPO_USERNAME

MAVEN_REPO_USERNAME

用于访问 Maven 存储库的用户名(如果需要)。

 — 

False

MAVEN_REPO_PASSWORD

MAVEN_REPO_PASSWORD

如果需要,用于访问 Maven 存储库的密码。

 — 

False

GIT_HOOKS_DIR

GIT_HOOKS_DIR

用于 git hook 的目录(如果需要)。

/opt/kie/data/git/hooks

False

BUSINESS_CENTRAL_MEMORY_LIMIT

 — 

Business Central 容器内存限值.

2Gi

False

KIE_SERVER_MEMORY_LIMIT

 — 

KIE 服务器容器内存限值。

1Gi

False

SSO_URL

SSO_URL

RH-SSO URL。

https://rh-sso.example.com/auth

False

SSO_REALM

SSO_REALM

RH-SSO Realm 名称。

 — 

False

BUSINESS_CENTRAL_SSO_CLIENT

SSO_CLIENT

Business Central RH-SSO 客户端名称。

 — 

False

BUSINESS_CENTRAL_SSO_SECRET

SSO_SECRET

Business Central RH-SSO 客户端 Secret。

252793ed-7118-4ca8-8dab-5622fa97d892

False

KIE_SERVER_SSO_CLIENT

SSO_CLIENT

KIE Server RH-SSO 客户端名称。

 — 

False

KIE_SERVER_SSO_SECRET

SSO_SECRET

KIE 服务器 RH-SSO 客户端机密.

252793ed-7118-4ca8-8dab-5622fa97d892

False

SSO_USERNAME

SSO_USERNAME

用于创建客户端的 RH-SSO Realm admin 用户名(如果不存在)。

 — 

False

SSO_PASSWORD

SSO_PASSWORD

用于创建客户端的 RH-SSO Realm 管理员密码。

 — 

False

SSO_DISABLE_SSL_CERTIFICATE_VALIDATION

SSO_DISABLE_SSL_CERTIFICATE_VALIDATION

RH-SSO 禁用 SSL 证书验证.

false

False

SSO_PRINCIPAL_ATTRIBUTE

SSO_PRINCIPAL_ATTRIBUTE

RH-SSO Principal Attribute,用作用户名。

preferred_username

False

AUTH_LDAP_URL

AUTH_LDAP_URL

要连接的 LDAP 端点以进行身份验证。对于故障转移,请设置两个或更多 LDAP 端点,用空格分开。

ldap://myldap.example.com:389

False

AUTH_LDAP_LOGIN_MODULE

AUTH_LDAP_LOGIN_MODULE

LDAP 登录模块标志,增加了与 Elytron 上传统安全子系统的向后兼容性。"可选"是唯一支持的值(如果设置),它将在使用 KIE_ADMIN_USER 添加用户的 Elytron 配置中创建分布式域。

optional

False

AUTH_LDAP_LOGIN_FAILOVER

AUTH_LDAP_LOGIN_FAILOVER

启用故障转移,如果 LDAP Url 不可访问,它将切换到 KieFsRealm。

true

False

AUTH_LDAP_BIND_DN

AUTH_LDAP_BIND_DN

用于身份验证的绑定 DN。

uid=admin,ou=users,ou=example,ou=com

False

AUTH_LDAP_BIND_CREDENTIAL

AUTH_LDAP_BIND_CREDENTIAL

用于身份验证的 LDAP 凭据。

密码

False

AUTH_LDAP_BASE_CTX_DN

AUTH_LDAP_BASE_CTX_DN

顶级上下文的 LDAP 基础 DN 开始用户搜索。

ou=users,ou=example,ou=com

False

AUTH_LDAP_BASE_FILTER

AUTH_LDAP_BASE_FILTER

用于查找要进行身份验证的用户上下文的 LDAP 搜索过滤器。从登录模块回调获取的输入用户名或 userDN 被替换为使用 {0} 表达式的过滤器。搜索过滤器的一个常见示例是(uid={0})。

(uid={0})

False

AUTH_LDAP_RECURSIVE_SEARCH

AUTH_LDAP_RECURSIVE_SEARCH

指明用户查询是否递归。

true

False

AUTH_LDAP_SEARCH_TIME_LIMIT

AUTH_LDAP_SEARCH_TIME_LIMIT

用户或角色搜索的超时时间(毫秒)。

10000

False

AUTH_LDAP_ROLE_ATTRIBUTE_ID

AUTH_LDAP_ROLE_ATTRIBUTE_ID

包含用户角色的属性名称。

memberOf

False

AUTH_LDAP_ROLES_CTX_DN

AUTH_LDAP_ROLES_CTX_DN

用于搜索用户角色的上下文的固定 DN。这不是实际角色的 DN,而是包含用户角色对象的 DN。例如,在 Microsoft Active Directory 服务器中,这是用户帐户所属的 DN。

ou=groups,ou=example,ou=com

False

AUTH_LDAP_ROLE_FILTER

AUTH_LDAP_ROLE_FILTER

用于查找与经过身份验证的用户关联的角色的搜索过滤器。从登录模块回调获取的输入用户名或 userDN 被替换为使用 {0} 表达式的过滤器。经过身份验证的用户 DN 被替换为使用 GC 任何位置的过滤器。与输入用户名匹配的搜索过滤器示例为(member={0})。在经过身份验证的用户DN 上匹配的替代方案是(member=maistra)。

(memberOf={1})

False

AUTH_LDAP_ROLE_RECURSION

AUTH_LDAP_ROLE_RECURSION

角色搜索的递归级别数量将保存在匹配的上下文下。将此选项设置为 0 来禁用递归。

1

False

AUTH_LDAP_DEFAULT_ROLE

AUTH_LDAP_DEFAULT_ROLE

包含所有经过身份验证的用户的角色。

user

False

AUTH_LDAP_NEW_IDENTITY_ATTRIBUTES

AUTH_LDAP_NEW_IDENTITY_ATTRIBUTES

提供 LDAP 身份映射的新身份,此 env 一起使用的模式是 'attribute_name=attribute_value;another_attribute_name=value'

sn=BlankSurname;cn=BlankCommonName

False

AUTH_LDAP_REFERRAL_MODE

AUTH_LDAP_REFERRAL_MODE

如果后面应遵循 LDAP 引用:对应于 REFERRAL ('java.naming.referral') 环境属性。允许的值: 'ignore', 'follow', 'throw'

 — 

False

AUTH_ROLE_MAPPER_ROLES_PROPERTIES

AUTH_ROLE_MAPPER_ROLES_PROPERTIES

存在时,roleMapping 将配置为使用提供的属性文件或角色。此参数定义属性文件的完全限定域名或一组具有以下模式 'role=role1;another-role=role2' 的角色。文件中每个条目的格式为 original_role=role1,role2,role3

role=role1,role3,role4;role7=role,admin

False

AUTH_LDAP_MAPPER_KEEP_MAPPED

AUTH_LDAP_MAPPER_KEEP_MAPPED

当设置为 'true' 时,映射的角色将保留所有已定义映射的角色。

 — 

False

AUTH_LDAP_MAPPER_KEEP_NON_MAPPED

AUTH_LDAP_MAPPER_KEEP_NON_MAPPED

当设置为 'true' 时,映射的角色将保留所有没有定义的映射的角色。

 — 

False

15.1.2. 对象(object)

CLI 支持各种对象类型。Openshift 文档 可以找到这些对象类型及其缩写的列表。

15.1.2.1. 服务

服务是一个抽象,用于定义一组逻辑的 pod 以及用于访问它们的策略。如需更多信息,请参阅 container-engine 文档

服务端口名称描述

${APPLICATION_NAME}-rhpamcentr

8080

http

所有 Business Central Web 服务器的端口。

${APPLICATION_NAME}-kieserver

8080

 — 

所有 KIE 服务器 Web 服务器的端口。

15.1.2.2. Routes

路由是通过为服务提供一个外部可访问主机名(如 www.example.com )来公开服务的方法。定义的路由和由服务标识的端点可由路由器使用,从而从外部客户端向应用程序提供命名连接。每个路由都由路由名称、服务选择器和(可选)安全配置组成。如需更多信息,请参阅 Openshift 文档

服务安全性Hostname

insecure-${APPLICATION_NAME}-rhpamcentr-http

none

${BUSINESS_CENTRAL_HOSTNAME_HTTP}

insecure-${APPLICATION_NAME}-kieserver-http

none

${KIE_SERVER_HOSTNAME_HTTP}

15.1.2.3. 部署配置

OpenShift 中的部署是基于名为部署配置的用户定义的模板的复制控制器。部署是手动创建的,或响应触发的事件。如需更多信息,请参阅 Openshift 文档

15.1.2.3.1. 触发器

触发器驱动创建新部署以响应 OpenShift 内部和外部的事件。如需更多信息,请参阅 Openshift 文档

Deployment触发器

${APPLICATION_NAME}-rhpamcentr

ImageChange

${APPLICATION_NAME}-kieserver

ImageChange

15.1.2.3.2. Replicas

复制控制器确保任意一个时间运行指定数量的 pod "replicas"。如果数量太多,复制控制器会终止一些 pod。如果数量太少,它会启动更多。如需更多信息,请参阅 container-engine 文档

DeploymentReplicas

${APPLICATION_NAME}-rhpamcentr

1

${APPLICATION_NAME}-kieserver

1

15.1.2.3.3. Pod 模板
15.1.2.3.3.1. 服务帐户

服务帐户是各个项目中存在的 API 对象。它们可以像任何其他 API 对象一样创建或删除。如需更多信息,请参阅 Openshift 文档

Deployment服务帐户

${APPLICATION_NAME}-rhpamcentr

${APPLICATION_NAME}-rhpamsvc

${APPLICATION_NAME}-kieserver

${APPLICATION_NAME}-rhpamsvc

15.1.2.3.3.2. 镜像
Deployment镜像

${APPLICATION_NAME}-rhpamcentr

rhpam-businesscentral-rhel8

${APPLICATION_NAME}-kieserver

${KIE_SERVER_IMAGE_STREAM_NAME}

15.1.2.3.3.3. 就绪度(Readiness)探测

${APPLICATION_NAME}-rhpamcentr

Http Get on http://localhost:8080/rest/ready

${APPLICATION_NAME}-kieserver

Http Get on http://localhost:8080/services/rest/server/readycheck

15.1.2.3.3.4. 存活度(Liveness)探测

${APPLICATION_NAME}-rhpamcentr

Http Get on http://localhost:8080/rest/healthy

${APPLICATION_NAME}-kieserver

Http Get on http://localhost:8080/services/rest/server/healthcheck

15.1.2.3.3.5. 公开端口
Deployments名称端口协议

${APPLICATION_NAME}-rhpamcentr

Jolokia

8778

TCP

http

8080

TCP

${APPLICATION_NAME}-kieserver

Jolokia

8778

TCP

http

8080

TCP

15.1.2.3.3.6. 镜像环境变量
Deployment变量名称描述示例值

${APPLICATION_NAME}-rhpamcentr

WORKBENCH_ROUTE_NAME

 — 

insecure-${APPLICATION_NAME}-rhpamcentr

KIE_ADMIN_USER

KIE 管理员用户名。

${KIE_ADMIN_USER}

KIE_ADMIN_PWD

此试用环境中的用户方便使用默认密码。

${DEFAULT_PASSWORD}

KIE_MBEANS

KIE Server mbeans 启用/禁用.(设置 kie.mbeans 和 kie.scanner.mbeans 系统属性)

${KIE_MBEANS}

KIE_SERVER_CONTROLLER_OPENSHIFT_ENABLED

 — 

true

KIE_SERVER_CONTROLLER_OPENSHIFT_GLOBAL_DISCOVERY_ENABLED

如果设置为 true,请打开 KIE Server 全局发现功能(设置 org.kie.server.controller.openshift.global.discovery.enabled 系统属性)

${KIE_SERVER_CONTROLLER_OPENSHIFT_GLOBAL_DISCOVERY_ENABLED}

KIE_SERVER_CONTROLLER_OPENSHIFT_PREFER_KIESERVER_SERVICE

如果开启了 Business Central 的 OpenShift 集成,则将此参数设置为 true 可让通过 OpenShift 内部服务端点连接到 KIE Server。(设置 org.kie.server.controller.openshift.prefer.kieserver.service 系统属性)

${KIE_SERVER_CONTROLLER_OPENSHIFT_PREFER_KIESERVER_SERVICE}

KIE_SERVER_CONTROLLER_TEMPLATE_CACHE_TTL

KIE ServerTemplate Cache TTL (以毫秒为单位)。(设置 org.kie.server.controller.template.cache.ttl 系统属性)

${KIE_SERVER_CONTROLLER_TEMPLATE_CACHE_TTL}

MAVEN_REPO_ID

用于 maven 存储库的 id (如果已设置)。默认是随机生成的。

${MAVEN_REPO_ID}

MAVEN_REPO_URL

Maven 存储库或服务的完全限定 URL。

${MAVEN_REPO_URL}

MAVEN_REPO_USERNAME

用于访问 Maven 存储库的用户名(如果需要)。

${MAVEN_REPO_USERNAME}

MAVEN_REPO_PASSWORD

如果需要,用于访问 Maven 存储库的密码。

${MAVEN_REPO_PASSWORD}

GIT_HOOKS_DIR

用于 git hook 的目录(如果需要)。

${GIT_HOOKS_DIR}

KUBERNETES_NAMESPACE

 — 

 — 

SSO_URL

RH-SSO URL。

${SSO_URL}

SSO_OPENIDCONNECT_DEPLOYMENTS

 — 

ROOT.war

SSO_REALM

RH-SSO Realm 名称。

${SSO_REALM}

SSO_SECRET

Business Central RH-SSO 客户端 Secret。

${BUSINESS_CENTRAL_SSO_SECRET}

SSO_CLIENT

Business Central RH-SSO 客户端名称。

${BUSINESS_CENTRAL_SSO_CLIENT}

SSO_USERNAME

用于创建客户端的 RH-SSO Realm admin 用户名(如果不存在)。

${SSO_USERNAME}

SSO_PASSWORD

用于创建客户端的 RH-SSO Realm 管理员密码。

${SSO_PASSWORD}

SSO_DISABLE_SSL_CERTIFICATE_VALIDATION

RH-SSO 禁用 SSL 证书验证.

${SSO_DISABLE_SSL_CERTIFICATE_VALIDATION}

SSO_PRINCIPAL_ATTRIBUTE

RH-SSO Principal Attribute,用作用户名。

${SSO_PRINCIPAL_ATTRIBUTE}

HOSTNAME_HTTP

Business Central 的 http 服务路由的自定义主机名。默认主机名留空,例如: insecure-<application-name>-rhpamcentr-<project>.<default-domain-suffix>

${BUSINESS_CENTRAL_HOSTNAME_HTTP}

AUTH_LDAP_URL

要连接的 LDAP 端点以进行身份验证。对于故障转移,请设置两个或更多 LDAP 端点,用空格分开。

${AUTH_LDAP_URL}

AUTH_LDAP_LOGIN_MODULE

LDAP 登录模块标志,增加了与 Elytron 上传统安全子系统的向后兼容性。"可选"是唯一支持的值(如果设置),它将在使用 KIE_ADMIN_USER 添加用户的 Elytron 配置中创建分布式域。

${AUTH_LDAP_LOGIN_MODULE}

AUTH_LDAP_LOGIN_FAILOVER

启用故障转移,如果 LDAP Url 不可访问,它将切换到 KieFsRealm。

${AUTH_LDAP_LOGIN_FAILOVER}

AUTH_LDAP_BIND_DN

用于身份验证的绑定 DN。

${AUTH_LDAP_BIND_DN}

AUTH_LDAP_BIND_CREDENTIAL

用于身份验证的 LDAP 凭据。

${AUTH_LDAP_BIND_CREDENTIAL}

AUTH_LDAP_BASE_CTX_DN

顶级上下文的 LDAP 基础 DN 开始用户搜索。

${AUTH_LDAP_BASE_CTX_DN}

AUTH_LDAP_BASE_FILTER

用于查找要进行身份验证的用户上下文的 LDAP 搜索过滤器。从登录模块回调获取的输入用户名或 userDN 被替换为使用 {0} 表达式的过滤器。搜索过滤器的一个常见示例是(uid={0})。

${AUTH_LDAP_BASE_FILTER}

AUTH_LDAP_RECURSIVE_SEARCH

指明用户查询是否递归。

${AUTH_LDAP_RECURSIVE_SEARCH}

AUTH_LDAP_SEARCH_TIME_LIMIT

用户或角色搜索的超时时间(毫秒)。

${AUTH_LDAP_SEARCH_TIME_LIMIT}

AUTH_LDAP_ROLE_ATTRIBUTE_ID

包含用户角色的属性名称。

${AUTH_LDAP_ROLE_ATTRIBUTE_ID}

AUTH_LDAP_ROLES_CTX_DN

用于搜索用户角色的上下文的固定 DN。这不是实际角色的 DN,而是包含用户角色对象的 DN。例如,在 Microsoft Active Directory 服务器中,这是用户帐户所属的 DN。

${AUTH_LDAP_ROLES_CTX_DN}

AUTH_LDAP_ROLE_FILTER

用于查找与经过身份验证的用户关联的角色的搜索过滤器。从登录模块回调获取的输入用户名或 userDN 被替换为使用 {0} 表达式的过滤器。经过身份验证的用户 DN 被替换为使用 GC 任何位置的过滤器。与输入用户名匹配的搜索过滤器示例为(member={0})。在经过身份验证的用户DN 上匹配的替代方案是(member=maistra)。

${AUTH_LDAP_ROLE_FILTER}

AUTH_LDAP_ROLE_RECURSION

角色搜索的递归级别数量将保存在匹配的上下文下。将此选项设置为 0 来禁用递归。

${AUTH_LDAP_ROLE_RECURSION}

AUTH_LDAP_DEFAULT_ROLE

包含所有经过身份验证的用户的角色。

${AUTH_LDAP_DEFAULT_ROLE}

AUTH_LDAP_NEW_IDENTITY_ATTRIBUTES

提供 LDAP 身份映射的新身份,此 env 一起使用的模式是 'attribute_name=attribute_value;another_attribute_name=value'

${AUTH_LDAP_NEW_IDENTITY_ATTRIBUTES}

AUTH_LDAP_REFERRAL_MODE

如果后面应遵循 LDAP 引用:对应于 REFERRAL ('java.naming.referral') 环境属性。允许的值: 'ignore', 'follow', 'throw'

${AUTH_LDAP_REFERRAL_MODE}

AUTH_ROLE_MAPPER_ROLES_PROPERTIES

存在时,roleMapping 将配置为使用提供的属性文件或角色。此参数定义属性文件的完全限定域名或一组具有以下模式 'role=role1;another-role=role2' 的角色。文件中每个条目的格式为 original_role=role1,role2,role3

${AUTH_ROLE_MAPPER_ROLES_PROPERTIES}

AUTH_LDAP_MAPPER_KEEP_MAPPED

当设置为 'true' 时,映射的角色将保留所有已定义映射的角色。

${AUTH_LDAP_MAPPER_KEEP_MAPPED}

AUTH_LDAP_MAPPER_KEEP_NON_MAPPED

当设置为 'true' 时,映射的角色将保留所有没有定义的映射的角色。

${AUTH_LDAP_MAPPER_KEEP_NON_MAPPED}

${APPLICATION_NAME}-kieserver

WORKBENCH_SERVICE_NAME

 — 

${APPLICATION_NAME}-rhpamcentr

KIE_ADMIN_USER

KIE 管理员用户名。

${KIE_ADMIN_USER}

KIE_ADMIN_PWD

此试用环境中的用户方便使用默认密码。

${DEFAULT_PASSWORD}

KIE_SERVER_MODE

KIE 服务器模式.有效值为 'DEVELOPMENT' 或 'PRODUCTION'。在生产模式中,您无法在 KIE 服务器上部署 SNAPSHOT 工件版本,且无法更改现有容器中的工件版本。(设置 org.kie.server.mode 系统属性)。

${KIE_SERVER_MODE}

KIE_MBEANS

KIE Server mbeans 启用/禁用.(设置 kie.mbeans 和 kie.scanner.mbeans 系统属性)

${KIE_MBEANS}

DROOLS_SERVER_FILTER_CLASSES

KIE 服务器类过滤.(设置 org.drools.server.filter.classes 系统属性)

${DROOLS_SERVER_FILTER_CLASSES}

PROMETHEUS_SERVER_EXT_DISABLED

如果设置为 false,则启用 prometheus 服务器扩展。(设置 org.kie.prometheus.server.ext.disabled 系统属性)

${PROMETHEUS_SERVER_EXT_DISABLED}

KIE_SERVER_BYPASS_AUTH_USER

允许 KIE 服务器绕过经过身份验证的用户进行与任务相关的操作,如查询。(设置 org.kie.server.bypass.auth.user 系统属性)

${KIE_SERVER_BYPASS_AUTH_USER}

KIE_SERVER_ID

 — 

 — 

KIE_SERVER_ROUTE_NAME

 — 

insecure-${APPLICATION_NAME}-kieserver

KIE_SERVER_STARTUP_STRATEGY

 — 

OpenShiftStartupStrategy

KIE_SERVER_CONTAINER_DEPLOYMENT

带有可选别名的 KIE 服务器容器部署配置。Format: containerId=groupId:artifactId:version|c2(alias2)=g2:a2:v2

${KIE_SERVER_CONTAINER_DEPLOYMENT}

MAVEN_REPOS

 — 

RHPAMCENTR,EXTERNAL

RHPAMCENTR_MAVEN_REPO_ID

 — 

repo-rhpamcentr

RHPAMCENTR_MAVEN_REPO_SERVICE

 — 

${APPLICATION_NAME}-rhpamcentr

RHPAMCENTR_MAVEN_REPO_PATH

 — 

/maven2/

RHPAMCENTR_MAVEN_REPO_USERNAME

KIE 管理员用户名。

${KIE_ADMIN_USER}

RHPAMCENTR_MAVEN_REPO_PASSWORD

此试用环境中的用户方便使用默认密码。

${DEFAULT_PASSWORD}

EXTERNAL_MAVEN_REPO_ID

用于 maven 存储库的 id (如果已设置)。默认是随机生成的。

${MAVEN_REPO_ID}

EXTERNAL_MAVEN_REPO_URL

Maven 存储库或服务的完全限定 URL。

${MAVEN_REPO_URL}

EXTERNAL_MAVEN_REPO_USERNAME

用于访问 Maven 存储库的用户名(如果需要)。

${MAVEN_REPO_USERNAME}

EXTERNAL_MAVEN_REPO_PASSWORD

如果需要,用于访问 Maven 存储库的密码。

${MAVEN_REPO_PASSWORD}

KUBERNETES_NAMESPACE

 — 

 — 

SSO_URL

RH-SSO URL。

${SSO_URL}

SSO_OPENIDCONNECT_DEPLOYMENTS

 — 

ROOT.war

SSO_REALM

RH-SSO Realm 名称。

${SSO_REALM}

SSO_SECRET

KIE 服务器 RH-SSO 客户端机密.

${KIE_SERVER_SSO_SECRET}

SSO_CLIENT

KIE Server RH-SSO 客户端名称。

${KIE_SERVER_SSO_CLIENT}

SSO_USERNAME

用于创建客户端的 RH-SSO Realm admin 用户名(如果不存在)。

${SSO_USERNAME}

SSO_PASSWORD

用于创建客户端的 RH-SSO Realm 管理员密码。

${SSO_PASSWORD}

SSO_DISABLE_SSL_CERTIFICATE_VALIDATION

RH-SSO 禁用 SSL 证书验证.

${SSO_DISABLE_SSL_CERTIFICATE_VALIDATION}

SSO_PRINCIPAL_ATTRIBUTE

RH-SSO Principal Attribute,用作用户名。

${SSO_PRINCIPAL_ATTRIBUTE}

HOSTNAME_HTTP

http 服务路由的自定义主机名。默认主机名留空,例如: insecure-<application-name>-kieserver-<project>.<default-domain-suffix>

${KIE_SERVER_HOSTNAME_HTTP}

AUTH_LDAP_URL

要连接的 LDAP 端点以进行身份验证。对于故障转移,请设置两个或更多 LDAP 端点,用空格分开。

${AUTH_LDAP_URL}

AUTH_LDAP_LOGIN_MODULE

LDAP 登录模块标志,增加了与 Elytron 上传统安全子系统的向后兼容性。"可选"是唯一支持的值(如果设置),它将在使用 KIE_ADMIN_USER 添加用户的 Elytron 配置中创建分布式域。

${AUTH_LDAP_LOGIN_MODULE}

AUTH_LDAP_LOGIN_FAILOVER

启用故障转移,如果 LDAP Url 不可访问,它将切换到 KieFsRealm。

${AUTH_LDAP_LOGIN_FAILOVER}

AUTH_LDAP_BIND_DN

用于身份验证的绑定 DN。

${AUTH_LDAP_BIND_DN}

AUTH_LDAP_BIND_CREDENTIAL

用于身份验证的 LDAP 凭据。

${AUTH_LDAP_BIND_CREDENTIAL}

AUTH_LDAP_BASE_CTX_DN

顶级上下文的 LDAP 基础 DN 开始用户搜索。

${AUTH_LDAP_BASE_CTX_DN}

AUTH_LDAP_BASE_FILTER

用于查找要进行身份验证的用户上下文的 LDAP 搜索过滤器。从登录模块回调获取的输入用户名或 userDN 被替换为使用 {0} 表达式的过滤器。搜索过滤器的一个常见示例是(uid={0})。

${AUTH_LDAP_BASE_FILTER}

AUTH_LDAP_RECURSIVE_SEARCH

指明用户查询是否递归。

${AUTH_LDAP_RECURSIVE_SEARCH}

AUTH_LDAP_SEARCH_TIME_LIMIT

用户或角色搜索的超时时间(毫秒)。

${AUTH_LDAP_SEARCH_TIME_LIMIT}

AUTH_LDAP_ROLE_ATTRIBUTE_ID

包含用户角色的属性名称。

${AUTH_LDAP_ROLE_ATTRIBUTE_ID}

AUTH_LDAP_ROLES_CTX_DN

用于搜索用户角色的上下文的固定 DN。这不是实际角色的 DN,而是包含用户角色对象的 DN。例如,在 Microsoft Active Directory 服务器中,这是用户帐户所属的 DN。

${AUTH_LDAP_ROLES_CTX_DN}

AUTH_LDAP_ROLE_FILTER

用于查找与经过身份验证的用户关联的角色的搜索过滤器。从登录模块回调获取的输入用户名或 userDN 被替换为使用 {0} 表达式的过滤器。经过身份验证的用户 DN 被替换为使用 GC 任何位置的过滤器。与输入用户名匹配的搜索过滤器示例为(member={0})。在经过身份验证的用户DN 上匹配的替代方案是(member=maistra)。

${AUTH_LDAP_ROLE_FILTER}

AUTH_LDAP_ROLE_RECURSION

角色搜索的递归级别数量将保存在匹配的上下文下。将此选项设置为 0 来禁用递归。

${AUTH_LDAP_ROLE_RECURSION}

AUTH_LDAP_DEFAULT_ROLE

包含所有经过身份验证的用户的角色。

${AUTH_LDAP_DEFAULT_ROLE}

AUTH_LDAP_REFERRAL_MODE

如果后面应遵循 LDAP 引用:对应于 REFERRAL ('java.naming.referral') 环境属性。允许的值: 'ignore', 'follow', 'throw'

${AUTH_LDAP_REFERRAL_MODE}

AUTH_ROLE_MAPPER_ROLES_PROPERTIES

存在时,roleMapping 将配置为使用提供的属性文件或角色。此参数定义属性文件的完全限定域名或一组具有以下模式 'role=role1;another-role=role2' 的角色。文件中每个条目的格式为 original_role=role1,role2,role3

${AUTH_ROLE_MAPPER_ROLES_PROPERTIES}

AUTH_LDAP_MAPPER_KEEP_MAPPED

当设置为 'true' 时,映射的角色将保留所有已定义映射的角色。

${AUTH_LDAP_MAPPER_KEEP_MAPPED}

AUTH_LDAP_MAPPER_KEEP_NON_MAPPED

当设置为 'true' 时,映射的角色将保留所有没有定义的映射的角色。

${AUTH_LDAP_MAPPER_KEEP_NON_MAPPED}

过滤器

 — 

AC_ALLOW_ORIGIN,AC_ALLOW_METHODS,AC_ALLOW_HEADERS,AC_ALLOW_CREDENTIALS,AC_MAX_AGE

AC_ALLOW_ORIGIN_FILTER_RESPONSE_HEADER_NAME

 — 

Access-Control-Allow-Origin

AC_ALLOW_ORIGIN_FILTER_RESPONSE_HEADER_VALUE

在 KIE 服务器中设置 Access-Control-Allow-Origin 响应标头值(对于 CORS 支持)。

${KIE_SERVER_ACCESS_CONTROL_ALLOW_ORIGIN}

AC_ALLOW_METHODS_FILTER_RESPONSE_HEADER_NAME

 — 

access-Control-Allow-Methods

AC_ALLOW_METHODS_FILTER_RESPONSE_HEADER_VALUE

在 KIE 服务器中设置 Access-Control-Allow-Methods 响应标头值(对于 CORS 支持使用)。

${KIE_SERVER_ACCESS_CONTROL_ALLOW_METHODS}

AC_ALLOW_HEADERS_FILTER_RESPONSE_HEADER_NAME

 — 

Access-Control-Allow-Headers

AC_ALLOW_HEADERS_FILTER_RESPONSE_HEADER_VALUE

在 KIE 服务器中设置 Access-Control-Allow-Headers 响应标头值(对于 CORS 支持使用)。

${KIE_SERVER_ACCESS_CONTROL_ALLOW_HEADERS}

AC_ALLOW_CREDENTIALS_FILTER_RESPONSE_HEADER_NAME

 — 

Access-Control-Allow-Credentials

AC_ALLOW_CREDENTIALS_FILTER_RESPONSE_HEADER_VALUE

在 KIE 服务器中设置 Access-Control-Allow-Credentials 响应标头值(对于 CORS 支持使用)。

${KIE_SERVER_ACCESS_CONTROL_ALLOW_CREDENTIALS}

AC_MAX_AGE_FILTER_RESPONSE_HEADER_NAME

 — 

Access-Control-Max-Age

AC_MAX_AGE_FILTER_RESPONSE_HEADER_VALUE

在 KIE 服务器中设置 Access-Control-Max-Age 响应标头值(对于 CORS 支持使用)。

${KIE_SERVER_ACCESS_CONTROL_MAX_AGE}

15.1.2.4. 外部依赖项

15.1.2.4.1. Secrets

此模板需要安装下列机密,以便应用运行:

15.2. rhpam712-authoring.yaml template

用于 Red Hat Process Automation Manager 7.12 的非 HA 持久编写环境的应用程序模板 - 已弃用

15.2.1. 参数

模板允许您定义接受值的参数。然后,该值会在引用参数的位置替换。可在对象列表字段中的任意文本字段中定义引用。如需更多信息,请参阅 Openshift 文档

变量名称镜像环境变量描述示例值必填

APPLICATION_NAME

 — 

应用程序的名称。

myapp

true

CREDENTIALS_SECRET

 — 

包含 KIE_ADMIN_USER 和 KIE_ADMIN_PWD 值的 secret。

rhpam-credentials

true

KIE_SERVER_CONTROLLER_TOKEN

KIE_SERVER_CONTROLLER_TOKEN

KIE 服务器控制器令牌,用于 bearer 身份验证。(设置 org.kie.server.controller.token 系统属性)

 — 

False

KIE_SERVER_BYPASS_AUTH_USER

KIE_SERVER_BYPASS_AUTH_USER

允许 KIE 服务器绕过经过身份验证的用户获取与任务相关的操作,例如查询。(设置 org.kie.server.bypass.auth.user 系统属性)

false

False

KIE_SERVER_PERSISTENCE_DS

RHPAM_JNDI

KIE 服务器持久性数据源.(设置 org.kie.server.persistence.ds 系统属性)

java:/jboss/datasources/rhpam

False

KIE_SERVER_H2_USER

RHPAM_USERNAME

KIE 服务器 H2 数据库用户名.

sa

False

KIE_SERVER_H2_PWD

RHPAM_PASSWORD

KIE 服务器 H2 数据库密码.

 — 

False

KIE_SERVER_MODE

KIE_SERVER_MODE

KIE 服务器模式.有效值为 'DEVELOPMENT' 或 'PRODUCTION'。在生产模式中,您无法在 KIE 服务器上部署 SNAPSHOT 工件版本,且无法更改现有容器中的工件版本。(设置 org.kie.server.mode 系统属性)

开发

False

KIE_MBEANS

KIE_MBEANS

KIE Server mbeans 启用/禁用.(设置 kie.mbeans 和 kie.scanner.mbeans 系统属性)

enabled

False

DROOLS_SERVER_FILTER_CLASSES

DROOLS_SERVER_FILTER_CLASSES

KIE 服务器类过滤.(设置 org.drools.server.filter.classes 系统属性)

true

False

PROMETHEUS_SERVER_EXT_DISABLED

PROMETHEUS_SERVER_EXT_DISABLED

如果设置为 false,则启用 prometheus 服务器扩展。(设置 org.kie.prometheus.server.ext.disabled 系统属性)

false

False

BUSINESS_CENTRAL_HOSTNAME_HTTP

HOSTNAME_HTTP

Business Central 的 http 服务路由的自定义主机名。默认主机名留空,例如: insecure-<application-name>-rhpamcentr-<project>.<default-domain-suffix>

 — 

False

BUSINESS_CENTRAL_HOSTNAME_HTTPS

HOSTNAME_HTTPS

Business Central 的 https 服务路由的自定义主机名。默认主机名留空,例如: <application-name>-rhpamcentr-<project>.<default-domain-suffix>

 — 

False

KIE_SERVER_HOSTNAME_HTTP

HOSTNAME_HTTP

KIE 服务器的 http 服务路由的自定义主机名。默认主机名留空,例如: insecure-<application-name>-kieserver-<project>.<default-domain-suffix>

 — 

False

KIE_SERVER_HOSTNAME_HTTPS

HOSTNAME_HTTPS

KIE 服务器的 https 服务路由的自定义主机名。默认主机名留空,例如: <application-name>-kieserver-<project>.<default-domain-suffix>

 — 

False

BUSINESS_CENTRAL_HTTPS_SECRET

 — 

包含 Business Central 的密钥存储文件的 secret 名称。

businesscentral-app-secret

true

BUSINESS_CENTRAL_HTTPS_KEYSTORE

HTTPS_KEYSTORE

机密中的密钥存储文件的名称。

keystore.jks

False

BUSINESS_CENTRAL_HTTPS_NAME

HTTPS_NAME

与服务器证书关联的名称。

jboss

False

BUSINESS_CENTRAL_HTTPS_PASSWORD

HTTPS_PASSWORD

密钥存储和证书的密码。

mykeystorepass

False

KIE_SERVER_HTTPS_SECRET

 — 

包含 KIE Server 的密钥存储文件的 secret 名称。

kieserver-app-secret

true

KIE_SERVER_HTTPS_KEYSTORE

HTTPS_KEYSTORE

机密中的密钥存储文件的名称。

keystore.jks

False

KIE_SERVER_HTTPS_NAME

HTTPS_NAME

与服务器证书关联的名称。

jboss

False

KIE_SERVER_HTTPS_PASSWORD

HTTPS_PASSWORD

密钥存储和证书的密码。

mykeystorepass

False

DB_VOLUME_CAPACITY

 — 

数据库卷的持久性存储大小。

1Gi

true

KIE_SERVER_CONTROLLER_OPENSHIFT_GLOBAL_DISCOVERY_ENABLED

KIE_SERVER_CONTROLLER_OPENSHIFT_GLOBAL_DISCOVERY_ENABLED

如果设置为 true,请打开 KIE Server 全局发现功能(设置 org.kie.server.controller.openshift.global.discovery.enabled 系统属性)

false

False

KIE_SERVER_CONTROLLER_OPENSHIFT_PREFER_KIESERVER_SERVICE

KIE_SERVER_CONTROLLER_OPENSHIFT_PREFER_KIESERVER_SERVICE

如果开启了 Business Central 的 OpenShift 集成,则将此参数设置为 true 可让通过 OpenShift 内部服务端点连接到 KIE Server。(设置 org.kie.server.controller.openshift.prefer.kieserver.service 系统属性)

true

False

KIE_SERVER_CONTROLLER_TEMPLATE_CACHE_TTL

KIE_SERVER_CONTROLLER_TEMPLATE_CACHE_TTL

KIE ServerTemplate Cache TTL (以毫秒为单位)。(设置 org.kie.server.controller.template.cache.ttl 系统属性)

5000

False

IMAGE_STREAM_NAMESPACE

 — 

安装 Red Hat Process Automation Manager 镜像的 ImageStreams 的命名空间。这些 ImageStreams 通常安装在 openshift 命名空间中。只有在不同的命名空间/项目中安装 ImageStream 时,才需要修改此参数。默认为 "openshift"。

openshift

true

KIE_SERVER_IMAGE_STREAM_NAME

 — 

用于 KIE 服务器的镜像流的名称。默认为 "rhpam-kieserver-rhel8"。

rhpam-kieserver-rhel8

true

IMAGE_STREAM_TAG

 — 

指向镜像流中镜像的命名指针。默认为 "7.12.0"。

7.12.0

true

MAVEN_MIRROR_URL

MAVEN_MIRROR_URL

Business Central 和 KIE 服务器必须使用的 Maven 镜像。如果配置镜像,此镜像必须包含构建和部署服务所需的所有工件。

 — 

False

MAVEN_MIRROR_OF

MAVEN_MIRROR_OF

KIE 服务器的 Maven 镜像配置.

外部:*,!repo-rhpamcentr

False

MAVEN_REPO_ID

MAVEN_REPO_ID

用于 maven 存储库的 id。如果设置,可以通过将其添加到 MAVEN_MIRROR_OF 来从可选配置的镜像中排除。例如: external:*,!repo-rhpamcentr,!repo-custom。如果设置了 MAVEN_MIRROR_URL,但没有设置 MAVEN_MIRROR_ID,则 id 将随机生成,但无法在 MAVEN_MIRROR_OF 中使用。

repo-custom

False

MAVEN_REPO_URL

MAVEN_REPO_URL

Maven 存储库或服务的完全限定 URL。

http://nexus.nexus-project.svc.cluster.local:8081/nexus/content/groups/public/

False

MAVEN_REPO_USERNAME

MAVEN_REPO_USERNAME

用于访问 Maven 存储库的用户名(如果需要)。

 — 

False

MAVEN_REPO_PASSWORD

MAVEN_REPO_PASSWORD

如果需要,用于访问 Maven 存储库的密码。

 — 

False

GIT_HOOKS_DIR

GIT_HOOKS_DIR

用于 git hook 的目录(如果需要)。

/opt/kie/data/git/hooks

False

BUSINESS_CENTRAL_VOLUME_CAPACITY

 — 

Business Central 运行时数据的持久性存储大小。

1Gi

true

BUSINESS_CENTRAL_MEMORY_LIMIT

 — 

Business Central 容器内存限值。

4Gi

true

BUSINESS_CENTRAL_CPU_LIMIT

 — 

Business Central 容器 CPU 限制。

2

true

BUSINESS_CENTRAL_CPU_REQUEST

 — 

Business Central 容器 CPU 请求.

1500m

true

BUSINESS_CENTRAL_MEMORY_REQUEST

 — 

Business Central 容器内存请求。

3Gi

true

KIE_SERVER_MEMORY_LIMIT

 — 

KIE 服务器容器内存限值。

2Gi

true

KIE_SERVER_MEMORY_REQUEST

 — 

KIE 服务器容器内存请求.

1536Mi

true

KIE_SERVER_CPU_LIMIT

 — 

KIE 服务器容器 CPU 限制。

1

true

KIE_SERVER_CPU_REQUEST

 — 

KIE 服务器容器 CPU 请求.

750m

true

SSO_URL

SSO_URL

RH-SSO URL。

https://rh-sso.example.com/auth

False

SSO_REALM

SSO_REALM

RH-SSO Realm 名称。

 — 

False

BUSINESS_CENTRAL_SSO_CLIENT

SSO_CLIENT

Business Central RH-SSO 客户端名称。

 — 

False

BUSINESS_CENTRAL_SSO_SECRET

SSO_SECRET

Business Central RH-SSO 客户端 Secret。

252793ed-7118-4ca8-8dab-5622fa97d892

False

KIE_SERVER_SSO_CLIENT

SSO_CLIENT

KIE Server RH-SSO 客户端名称。

 — 

False

KIE_SERVER_SSO_SECRET