为红帽决策管理器设计您的决策管理架构


Red Hat Decision Manager 7.11

摘要

本文档描述了红帽决策管理器实施的基本概念和选项,以便在设计决策管理架构时考虑。要验证最适合您环境的实施,请联系您的红帽大客户经理或解决方案架构师。

前言

作为业务分析、系统管理员或业务规则开发人员,您创建的红帽决策管理器业务资产的类型以及您开发、存储、执行和部署这些资产的方式因业务自动化环境的需求而异。您可以设计一个决策管理架构,它使用 Business Central 或外部集成开发环境(IDE)进行资产开发、内置或外部 Git 存储库,用于存储和版本控制、KIE 服务器或嵌入式应用程序用于部署,或其他实施组合。您还可以将 Red Hat Decision Manager 部署到 Red Hat OpenShift Container Platform 环境中,以进行增强的容器化实施。

本文档描述了红帽决策管理器实施的基本概念和选项,以便在设计决策管理架构时考虑。要验证最适合您环境的实施,请联系您的红帽大客户经理或解决方案架构师。

使开源包含更多

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

第 1 章 Red Hat Decision Manager 的安装环境选项

使用红帽决策管理器,您可以设置开发环境来开发业务应用程序、运行这些应用程序的运行时环境来支持决策。

  • 开发环境 :Typly 包括一个 Business Central 安装和至少一个 KIE 服务器安装。您可以使用 Business Central 设计决策和其他工件,您可以使用 KIE Server 执行并测试您创建的工件。
  • 运行时环境 :使用或不使用 Business Central 的一个或多个 KIE 服务器实例.Business Central 有一个嵌入式决策管理器控制器。如果安装了 Business Central,请使用 MenuDeployExecution servers 页面创建和维护容器。如果要在不使用 Business Central 的情况下自动执行 KIE 服务器管理,您可以使用无头决策管理器控制器。

您还可以集群开发和运行时环境。集群开发或运行时环境由由两个或多个服务器组成的统一组或集群组成。集群红帽决策管理器开发环境的主要优点是高可用性和增强的协作,而集群红帽决策管理器运行时环境的主要优点是高可用性和负载平衡。当单个服务器出现故障时,高可用性降低了数据丢失的几率。当服务器出现故障时,另一台服务器通过提供故障服务器上的数据副本来填补差距。当失败的服务器再次上线时,它会恢复它在集群中的位置。

注意

目前,Red Hat JBoss EAP 7.3 和 Red Hat OpenShift Container Platform 仅支持运行时环境集群。

第 2 章 红帽决策管理器中的决策授权资产

Red Hat Decision Manager 支持可用于为您的决策服务定义商业决策的多个资产。每个决策授权资产都有不同的优势,您可能需要根据目标和需求使用多个资产的一个或多个资产组合。

下表重点介绍了红帽决策管理器项目支持的主要决策 - 授权资产,以帮助您决定或确认在决策服务中定义决策的最佳方法。

表 2.1. Red Hat Decision Manager 支持的决策资源
资产亮点编写工具Documentation

决策模型和符号(DMN)模型

  • 是基于对象管理组(OMG)定义的表示法标准决策模型。
  • 使用图形决策要求图(DRD),它们代表部分或所有决策要求图(DRG)来跟踪业务决策流程
  • 使用允许在 DMN 兼容平台间共享 DMN 模型的 XML 模式
  • 支持 Friendly Enough Expression Language (FEEL),以在 DMN 决策表和其他 DMN boxed 表达式中定义决策逻辑
  • 是创建全面、示意图以及稳定的决策流的最佳选择

Business Central 或其他符合 DMN 的编辑器

使用 DMN 模型设计决策服务

指导决策表

  • 是在 Business Central 中的基于 UI 的表设计程序中创建的规则表
  • 是带向导的替代方法,用于电子表格决策表
  • 为可接受的输入提供字段和选项
  • 支持用于创建规则模板的模板键和值
  • 支持按策略、实时验证和其他资产不支持的其他功能
  • 是以受控的表格格式创建规则的最佳选择,以最小化编译错误

Business Central

使用指导决策表设计决策服务

电子表格决策表

  • 是 XLS 或 XLSX 电子表格,您可以上传到 Business Central
  • 支持用于创建规则模板的模板键和值
  • 是在已在 Business Central 之外管理的决策表中创建规则的最佳选择
  • 对于在上传时正确编译的规则具有严格的语法要求

电子表格编辑器

使用电子表格决策表设计决策服务

指导规则

  • 是在 Business Central 中的基于 UI 的规则设计程序中创建的个人规则
  • 为可接受的输入提供字段和选项
  • 是以受控格式创建单一规则的最佳选择,以最小化编译错误

Business Central

使用指导规则设计决策服务

指南规则模板

  • 是您在 Business Central 中的基于 UI 的模板设计程序中创建的可重复使用的规则结构
  • 为可接受的输入提供字段和选项
  • 支持用于创建规则模板的模板键和值(针对此资产的目的介绍)
  • 使用相同规则结构创建多个规则是最佳的,但使用不同的定义的字段值

Business Central

使用指导规则模板设计决策服务

DRL 规则

  • 是您在 .drl 文本文件中直接定义的单个规则
  • 提供最大灵活性来定义规则和其他规则行为的技术
  • 可以在某些单机环境中创建,并与 Red Hat Decision Manager 集成
  • 是创建需要高级 DRL 选项的规则的最佳选择
  • 对正确编译的规则有严格的语法要求

Business Central 或集成开发环境(IDE)

使用 DRL 规则设计决策服务

预测模型标记语言(PMML)模型

  • 是预测数据分析模型,它基于由 Data Mining Group (DMG)定义的标记标准。
  • 使用允许在 PMML 兼容平台间共享 PMML 模型的 XML 模式
  • 支持 Regression, Scorecard, Tree, Mining, 其他模型类型
  • 可包含在独立的红帽决策管理器项目或导入到 Business Central 中的项目中
  • 在 Red Hat Decision Manager 中将预测数据合并到决策服务的最佳选择

PMML 或 XML 编辑器

使用 PMML 模型设计决策服务

第 3 章 使用红帽决策管理器项目存储和构建选项

当您开发红帽决策管理器项目时,您需要使用一个版本控制的存储库跟踪项目版本,在稳定的环境中管理项目资产,并构建项目以测试和部署。您可以将 Business Central 用于所有这些任务,或使用 Business Central 和外部工具和存储库的组合。Red Hat Decision Manager 支持 Git 存储库用于项目版本控制,Apache Maven 用于项目管理,以及各种基于 Maven、基于 Java 的构建选项。

以下选项是 Red Hat Decision Manager 项目版本控制、存储和构建的主要方法:

表 3.1. 项目版本控制选项(Git)
版本控制选项描述Documentation

Business Central Git VFS

Business Central 包含内置 Git 虚拟文件系统(VFS),它存储您在编写环境中创建的所有进程、规则和其他工件。Git 是一个分布式版本控制系统,它将修订版本实施为提交对象。当您将更改提交到存储库时,会在 Git 存储库中创建新的提交对象。当您在 Business Central 中创建项目时,该项目将添加到连接到 Business Central 的 Git 存储库中。

不适用

外部 Git 存储库

如果您在 Business Central 之外的 Git 存储库中具有红帽决策管理器项目,您可以将它们导入到红帽决策管理器空间,并使用 Git hook 来同步内部和外部 Git 存储库。

在 Business Central 中管理项目

表 3.2. 项目管理选项(Maven)
管理选项描述Documentation

Business Central Maven 存储库

Business Central 包含内置 Maven 存储库,可在编写环境中组织并构建您创建的项目资产。Maven 是一个分布式构建自动化工具,它使用存储库来存储 Java 库、插件和其他构建工件。在构建项目和架构类型时,Maven 从本地或远程存储库动态检索 Java 库和 Maven 插件,以提升项目之间的共享依赖项。

注意

对于生产环境,请考虑使用配置了 Business Central 的外部 Maven 存储库。

不适用

外部 Maven 存储库

如果您在外部 Maven 存储库中拥有红帽决策管理器项目,如 Nexus 或 Artifactory,您可以创建一个带有连接详情的 settings.xml 文件,并将该文件路径添加到项目 standalone-full.xml 文件中的 kie.maven.settings.custom 属性中。

Maven 设置参考

打包和部署红帽决策管理器项目

表 3.3. 项目构建选项
构建选项描述Documentation

Business Central (KJAR)

Business Central 构建红帽决策管理器项目,存储在内置的 Maven 存储库或已配置的外部 Maven 存储库中。Business Central 中的项目自动打包为知识 JAR (KJAR)文件,其中包含构建项目时部署所需的所有组件。

打包和部署红帽决策管理器项目

独立 Maven 项目(KJAR)

如果您在 Business Central 之外有一个独立的红帽决策管理器 Maven 项目,您可以编辑项目 pom.xml 文件,以将项目打包为 KJAR 文件,然后使用构建项目所需的 KIE 基础和 KIE 会话配置添加 kmodule.xml 文件。

打包和部署红帽决策管理器项目

嵌入式 Java 应用程序(KJAR)

如果您有一个要从中构建红帽决策管理器项目的嵌入式 Java 应用程序,您可以使用 KieModuleModel 实例以编程方式创建一个带有 KIE 基础和 KIE 会话配置的 kmodule.xml 文件,然后将项目中的所有资源添加到 KIE 虚拟文件系统 KieFileSystem 中。

打包和部署红帽决策管理器项目

CI/CD 工具(KJAR)

如果您使用一个工具进行持续集成和持续交付(CI/CD),您可以将工具集配置为与红帽决策管理器 Git 存储库集成来构建指定项目。确保您的项目已打包并构建为 KJAR 文件,以确保优化部署。

不适用

OpenShift 中的 S2I (容器镜像)

如果您在 Red Hat OpenShift Container Platform 上使用 Red Hat Decision Manager,您可以以典型的方式构建 Red Hat Decision Manager 项目,或使用 Source-to-Image (S2I)构建项目作为容器镜像。S2I 是一个框架和工具,它允许您编写使用应用源代码的镜像作为输入,并生成作为输出运行汇编应用程序的新镜像。使用 S2I 工具构建可重复生成的容器镜像的主要优点是便于开发人员使用。

在 OpenShift 中创建镜像

第 4 章 Red Hat Decision Manager 的项目部署选项

在开发、测试和构建红帽决策管理器项目后,您可以部署项目以便开始使用您创建的业务资产。您可以将红帽决策管理器项目部署到配置的 KIE 服务器、嵌入式 Java 应用程序或 Red Hat OpenShift Container Platform 环境中,用于增强的容器化实施。

以下选项是 Red Hat Decision Manager 项目部署的主要方法:

表 4.1. 项目部署选项
部署选项描述Documentation

部署到 OpenShift 环境

Red Hat OpenShift Container Platform 结合了 Docker 和 Kubernetes,并可让您创建和管理容器。您可以在 OpenShift 上安装 Business Central 和 KIE Server。Red Hat Decision Manager 提供了模板,可用于在 OpenShift 上部署红帽决策管理器编写环境、受管服务器环境、不可变服务器环境或试用环境。借助 OpenShift,红帽决策管理器的组件被部署为单独的 OpenShift pod。您可以单独扩展和缩减每个 pod,从而根据特定组件所需的数量或多个容器提供。您可以使用标准的 OpenShift 方法管理容器集并平衡负载。

使用 Operator 在 Red Hat OpenShift Container Platform 4 上部署 Red Hat Decision Manager 环境

使用模板在 Red Hat OpenShift Container Platform 3 上部署 Red Hat Decision Manager 环境

部署到 KIE 服务器

KIE 服务器是由红帽决策管理器提供的服务器,它从打包和部署的红帽决策管理器项目(KJAR 文件)运行决策服务、处理应用程序和其他可部署资产。这些服务在运行时通过实例化 KIE 容器 或部署单元 使用。您可以使用 Business Central 在 KIE 服务器中部署和维护部署单元,或使用无头决策管理器控制器及其关联的 REST API (考虑 托管的 KIE 服务器实例)。您还可以使用 KIE Server REST API 或来自独立 Maven 项目、嵌入式 Java 应用程序或其他自定义环境的 Java 客户端 API 部署和维护部署单元(在托管 KIE 服务器实例之外)。

打包和部署红帽决策管理器项目

使用 KIE API 与 Red Hat Decision Manager 交互

管理和监控 KIE 服务器

部署到嵌入式 Java 应用程序

如果要将红帽决策管理器项目部署到您自己的 Java 虚拟机(JVM)环境、微服务或应用服务器,您可以在项目 WAR 文件中捆绑应用资源,以创建类似于 KIE 容器的部署单元。您还可以使用核心 KIE API (非 KIE 服务器 API)配置 KIE 扫描程序来定期更新 KIE 容器。

KIE 公共 API

第 5 章 Red Hat Decision Manager 的资产执行选项

将红帽决策管理器项目构建并部署到 KIE 服务器或其他环境后,可以执行部署的资产来测试或运行时消耗。除了部署后,您还可以在本地执行资产,而不执行它们。

以下选项是 Red Hat Decision Manager 资产执行的主要方法:

表 5.1. 资产执行选项
执行选项描述Documentation

KIE 服务器中的执行

如果您将红帽决策管理器项目资产部署到 KIE 服务器,您可以使用 KIE Server REST API 或 Java 客户端 API 执行并与部署资产进行交互。您还可以使用 Business Central 以外的 Business Central 或无头决策管理器控制器来管理与部署资产关联的 KIE 服务器实例中的配置和 KIE 容器。

使用 KIE API 与 Red Hat Decision Manager 交互

在嵌入式 Java 应用程序中执行

如果您在您自己的 Java 虚拟机(JVM)环境、微服务或应用服务器中部署红帽决策管理器项目资产,您可以使用自定义 API 或与核心 KIE API (非 KIE Server API)的应用程序交互来执行嵌入式引擎中的资产。

KIE 公共 API

在本地环境中执行扩展测试

作为开发周期的一部分,您可以在本地执行资产,以确保您在红帽决策管理器中创建的资产可以正常工作。除了部署后,您还可以使用本地执行,而不是执行资产。

使用 DRL 规则设计决策服务中的"执行规则"

第 6 章 使用红帽决策管理器进行决策管理架构示例

以下场景演示了红帽决策管理器安装、资产编写、项目存储、项目部署和资产在决策管理架构中执行的常见变化。每个部分都总结了使用的方法和工具,以及给定架构的优势。这个示例是基本的,只是您考虑的许多组合,具体取决于您的特定目标和 Red Hat Decision Manager 的需求。

Red Hat Decision Manager 使用 Business Central 和 KIE Server 在 OpenShift 上编写和托管服务器环境
  • 安装环境 :Red Hat OpenShift Container Platform 上的红帽决策管理器,使用 rhdm711-authoring.yamlrhdm711-kieserver.yaml 模板文件
  • 项目存储和构建环境 :使用 Git hook 与 Business Central Git 存储库同步的项目版本控制的外部 Git 存储库,以及用于项目管理和构建配置了 KIE Server 的外部 Maven 存储库
  • asset-authoring 工具 : Business Central
  • 主要资产类型 :决策模型和符号(DMN)决策模型
  • 项目部署和执行环境 : KIE Server on Red Hat OpenShift Container Platform
  • 场景优点

    • 在基于云的开发环境中容器化实施红帽决策管理器。Red Hat Decision Manager 的组件部署为单独的 OpenShift pod,您可以单独扩展和缩减,从而根据特定组件所需的数量或多个容器提供。您可以使用标准的 OpenShift 方法管理容器集并平衡负载。
    • 访问 Business Central 中的存储库、资产、资产设计程序和项目构建选项。
    • 使用 DMN 进行优化集成和稳定性的标准化资产验证方法。
    • 访问 KIE 服务器功能和 KIE API 用于资产部署和执行。

图 6.1. Red Hat Decision Manager on OpenShift with Business Central 和 KIE Server

OpenShift Enterprise 上的架构 BA
Red Hat Decision Manager on Red Hat JBoss EAP with Business Central 和 KIE Server
  • 安装环境 : Red Hat JBoss Enterprise Application Platform 上的红帽决策管理器
  • 项目存储和构建环境 :使用 Git hook 与 Business Central Git 存储库同步的项目版本控制的外部 Git 存储库,以及用于项目管理和构建配置了 KIE Server 的外部 Maven 存储库
  • asset-authoring 工具 : Business Central
  • 主要资产类型 :决策模型和符号(DMN)决策模型
  • 项目部署和执行环境 :KIE 服务器
  • 场景优点

    • 在内部开发环境中实现红帽决策管理器的稳定实施
    • 访问 Business Central 中的存储库、资产、资产设计程序和项目构建选项
    • 使用 DMN 进行最佳集成和稳定性的标准化资产验证方法
    • 访问 KIE 服务器功能和 KIE API 用于资产部署和执行

图 6.2. Red Hat Decision Manager on Red Hat JBoss EAP with Business Central 和 KIE Server

eap 企业上的架构 BA
Red Hat Decision Manager on Red Hat JBoss EAP with an IDE 和 KIE Server
  • 安装环境 : Red Hat JBoss Enterprise Application Platform 上的红帽决策管理器
  • 项目存储和构建环境:用于项目版本控制的外部 Git 存储库(不与 Business Central 同步)和用于项目管理的外部 Maven 存储库,并使用 KIE 服务器构建配置
  • asset-authoring 工具 :集成开发环境(IDE),如红帽 CodeReady Studio,以及电子表格编辑器或决策模型和注释(DMN)建模工具,用于其他决策格式
  • 主要资产类型 :Drools Rule Language (DRL)规则、电子表格决策表和决策模型和符号(DMN)模型用于决策
  • 项目部署和执行环境 :KIE 服务器
  • 场景优点

    • 在内部开发环境中实现红帽决策管理器的灵活实施
    • 能够使用外部 IDE 和其他资产定义业务资产-验证您的选择工具
    • 访问 KIE 服务器功能和 KIE API 用于资产部署和执行

图 6.3. Red Hat Decision Manager on Red Hat JBoss EAP with an IDE 和 KIE Server

使用 IDE 企业的架构 BA
带有 IDE 和嵌入式 Java 应用程序的 Red Hat Decision Manager
  • 安装环境 :红帽决策管理器库嵌入在自定义应用程序中
  • 项目存储和构建环境 :用于项目版本控制的外部 Git 存储库(不与 Business Central 同步)和用于项目管理的外部 Maven 存储库,以及使用嵌入式 Java 应用程序(未配置 KIE 服务器)进行构建。
  • asset-authoring 工具 :集成开发环境(IDE),如红帽 CodeReady Studio,以及电子表格编辑器或决策模型和注释(DMN)建模工具,用于其他决策格式
  • 主要资产类型 :Drools Rule Language (DRL)规则、电子表格决策表和决策模型和符号(DMN)模型用于决策
  • 项目部署和执行环境 :嵌入式 Java 应用,如 Java 虚拟机(JVM)环境、微服务或自定义应用服务器中
  • 场景优点

    • 使用嵌入式 Java 应用程序在内部开发环境中自定义红帽决策管理器实施
    • 能够使用外部 IDE 和其他资产定义业务资产-验证您的选择工具
    • 使用自定义 API 与核心 KIE API (非 KIE Server API)交互,并在嵌入式引擎中执行资产

图 6.4. 带有 IDE 和嵌入式 Java 应用程序的 Red Hat Decision Manager

带有自定义应用程序企业的架构 BA

第 7 章 其他资源

附录 A. 版本控制信息

文档最后更新了 2022 年 3 月 8 日。

附录 B. 联系信息

Red Hat Decision Manager 文档团队: brms-docs@redhat.com

法律通告

Copyright © 2023 Red Hat, Inc.
The text of and illustrations in this document are licensed by Red Hat under a Creative Commons Attribution–Share Alike 3.0 Unported license ("CC-BY-SA"). An explanation of CC-BY-SA is available at http://creativecommons.org/licenses/by-sa/3.0/. In accordance with CC-BY-SA, if you distribute this document or an adaptation of it, you must provide the URL for the original version.
Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law.
Red Hat, Red Hat Enterprise Linux, the Shadowman logo, the Red Hat logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.
Linux® is the registered trademark of Linus Torvalds in the United States and other countries.
Java® is a registered trademark of Oracle and/or its affiliates.
XFS® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries.
MySQL® is a registered trademark of MySQL AB in the United States, the European Union and other countries.
Node.js® is an official trademark of Joyent. Red Hat is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.
The OpenStack® Word Mark and OpenStack logo are either registered trademarks/service marks or trademarks/service marks of the OpenStack Foundation, in the United States and other countries and are used with the OpenStack Foundation's permission. We are not affiliated with, endorsed or sponsored by the OpenStack Foundation, or the OpenStack community.
All other trademarks are the property of their respective owners.
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2025 Red Hat