vRealize Orchestrator 8.8 | 2022 年 4 月 28 日

请查看发行说明以了解新增内容及更新。

发行版本

VMware vRealize Orchestrator 8.8 | 2022 年 4 月 28 日
  • vRealize Orchestrator 8.8 Appliance 内部版本 19690303
  • vRealize Orchestrator 8.8 更新存储库内部版本 19690303

对本文档进行的更新:

日期 有关更新的说明 类型
2022 年 4 月 28 日 初始发布。

vRealize Orchestrator 8.8 新增功能

vRealize Orchestrator 8.8 包含多项新功能并修复了一些问题。新功能包括:

  • vRO 8.x:RESTOperation.createRequest 不应自动将空格转换为“+”符号。

    java.net.URLEncoder.encode() 方法现已替换为 org.springframework.web.util.UriUtils.encodeQuery()。此更改涉及对 URL 地址进行编码,更具体地说,在执行 REST 操作时对查询参数进行编码。空格现在编码为 %20,而不是 +。将空格替换为 %20 是更为常见的方法,RFC 规范中也建议使用这种方法,大多数 REST 主机都应支持该规范。

  • 现在,您可以在 vRealize Orchestrator 客户端中更新已调度任务的身份验证。

    编辑已调度任务时,将显示一个名为启动用户的新字段。您可以使用此字段更改经过身份验证可运行已调度任务的用户。仅在编辑之前创建的现有已调度任务时,此功能才可用。

    了解有关更改已调度任务身份验证的更多信息

  • 更新了适用于 vRealize Orchestrator 的 Auto Deploy 插件并更改了插件 API 兼容性。

    vRealize Orchestrator 8.8 包含经过更新的预安装 Auto Deploy 插件。插件 API 兼容性也已更新,可支持:

    • vRealize Orchestrator 7.6
    • vRealize Orchestrator 8.7.2
    • vCenter 6.7
    • vCenter 7.0

    注意:要在 vRealize Orchestrator 7.6 中使用此插件,必须首先将 vSphere 插件更新到版本 7.x。此外,对于 vRealize Orchestrator 7.6,Auto Deploy 插件完全支持基于 Java 的 Orchestrator 旧版客户端,但对在基于 HTML5 的 vRealize Orchestrator 客户端中创建的工作流则提供有限的支持。

    了解有关在 vRealize Orchestrator 8.8 中使用 Auto Deploy 插件的更多信息

  • 更改了 Active Directory 配置工作流的输入表单。不再支持“每用户会话”选项。

    由于不再支持 LDAP 身份验证,而仅可使用共享会话身份验证,因此现在从多个 Active Directory 工作流的输入表单中移除了 useSharedSession 复选框,并且用户名和密码字段现在为必填字段。此更改会影响添加 Active Directory 服务器更新 Active Directory 服务器配置 Active Directory 服务器工作流。

  • 新的“在组织单位中创建计算机和密码”工作流现已可用

    新工作流会在组织单位中创建一个默认密码值等于 computername$ 的计算机。该工作流还支持配置自定义密码,方法是选中选择与默认密码不同的密码选项。 

  • 对 OpenAPI 3.0 和 Swagger 2.0 提供 REST 插件支持。

    现在,基于 Swagger 规格 (来自 URL) 添加 REST 主机基于 Swagger 规格 (以字符串形式) 添加 REST 主机工作流可以从 Swagger 2.0 和 OpenAPI 3.0 结构定义中创建 REST 主机。 

    对于这两个工作流,此操作可通过在主机属性选项卡中添加一个名为 Swagger/OpenAPI 版本的下拉列表来实现。根据您选择的版本,可以访问另外一个名为 Swagger 2.xOpenAPI 3.0 的选项卡。在此选项卡中,您可以为前者选择主机基础路径首选通信协议,为后者选择首选 URL 地址。

    RestHostManager 脚本对象中添加了以下方法:

    • createRESTHostFromOpenApiUrl"restHostName""openApiSpecUrl"authHeaders"preferredUrl"extraParams
    • createRESTHostFromOpenApiSpecString"restHostName""openApiSpecString""preferredUrl"extraParams
    • getOpenApiServiceUrl"openApiSpec""preferredUrl"

部署 vRealize Orchestrator Appliance

vRealize Orchestrator Appliance 是基于 VMware Photon OS 的设备,以 OVA 文件形式进行分发。它使用内部 PostgreSQL 数据库进行预构建和预配置,可与 vCenter Server 6.0 或更高版本一起部署。

vRealize Orchestrator Appliance 提供了一种快速易用且经济实惠的集成方式,实现 VMware 云堆栈(包括 vRealize Automation 和 vCenter Server)与您的 IT 流程和环境的集成。

有关部署 vRealize Orchestrator Appliance 的说明,请参见下载并部署 vRealize Orchestrator Appliance

有关配置 vRealize Orchestrator Appliance 服务器的信息,请参见配置独立 vRealize Orchestrator 服务器

升级和迁移 vRealize Orchestrator

可以使用挂载的 ISO 映像将独立或集群化 vRealize Orchestrator 8.x 部署升级到最新的产品版本。

有关升级 vRealize Orchestrator Appliance 的详细信息,请参见升级 vRealize Orchestrator

可以将使用 vSphere 或 vRealize Automation 进行身份验证的独立 vRealize Orchestrator 实例迁移到 vRealize Orchestrator 8.8。支持迁移的 vRealize Orchestrator 7.x 产品版本包括版本 7.3 到 7.6。不支持迁移集群化的 vRealize Orchestrator 7.x 部署。

有关迁移 vRealize Orchestrator Appliance 的详细信息,请参见迁移 vRealize Orchestrator

随 vRealize Orchestrator 8.8 一起安装的插件

以下插件默认随 vRealize Orchestrator 8.8 一起安装:

  • vRealize Orchestrator vCenter Server Plug-In 7.0.0
  • vRealize Orchestrator Mail Plug-In 8.0.1
  • vRealize Orchestrator SQL Plug-In 1.2.0
  • vRealize Orchestrator SSH Plug-In 7.3.0
  • vRealize Orchestrator SOAP Plug-In 2.0.6
  • vRealize Orchestrator HTTP-REST Plug-In 2.4.1
  • vRealize Orchestrator Plug-In for Microsoft Active Directory 3.0.13
  • vRealize Orchestrator AMQP Plug-In 1.0.6
  • vRealize Orchestrator SNMP Plug-In 1.0.4
  • vRealize Orchestrator PowerShell Plug-In 1.0.20
  • vRealize Orchestrator Multi-Node Plug-In 8.8.0
  • vRealize Orchestrator Dynamic Types 1.3.6
  • vRealize Orchestrator vCloud Suite API (vAPI) Plug-In 7.5.2
  • VMware vSphere Update Manager Plug-In 7.0.0
  • vRealize Orchestrator Auto Deploy Plug-In 7.0.0

vRealize Orchestrator 早期版本

已解决的问题

  • 导入的资源元素在一段时间后恢复其更新。

    执行提取或推送操作后,导入的插件配置可能会恢复到先前的版本。导致此问题的原因是,配置的本地版本历史记录不包含最新更改。

  • 对 vRealize Orchestrator 部署使用 vRealize Automation 身份验证时,默认情况下将启用基本身份验证。

    要在 vRealize Orchesrator 中使用基本身份验证,必须将系统属性 com.vmware.o11n.sso.basic-authentication.enabled 设置为 true

  • 无法添加由需要 4096 位加密的 Git 提供程序托管的 Git 存储库。

    在以前的版本中,通过 SSH 连接向 Git 存储库进行身份验证时,vRealize Orchestrator 仅提供 2048 位 RSA 密钥对。现在,通过 SSH 连接在 vRealize Orchestrator 中集成 Git 存储库时,具有更严格安全策略的用户可以使用 4096 位 RSA 密钥对。

  • 单击鼠标时,工作流架构中的断点标记不会激活。

    工作流架构管理断点切换的方式出现问题,可能会导致断点标记变得无响应。

  • 确保在 REST 插件中选择正确的客户端证书。

    某些 REST 主机操作可能会遇到客户端证书选择问题。此问题由 X509ExtendedKeyManager 中的 chooseClientAlias() 方法所导致。向 X509ExtendedKeyManager 中添加了一个新的 KeyManagerCertWrapper 包装程序,以解决此客户端证书问题。该包装程序会调用除 X509ExtendedKeyManager 方法之外的所有方法,并返回正确的密钥别名。

  • 修复了 vRealize Orchestrator 控制中心报告的 CVE-2021-23337 和 CVE-2020-8203 安全漏洞。

    更新了 vRealize Orchestrator 控制中心的 Swagger 库,解决了 CVE-2021-23337 和 CVE-2020-8203 安全漏洞。

  • 用户界面元素进入展开-折叠动画循环。

    在响应速度较慢的 vRealize Orchestrator 环境中,如果在动画正在播放时单击侧边导航中的元素,可能会触发展开-折叠动画循环。

  • 当其中一个变量的类型为 Property 时,用于恢复失败工作流的交互表单不会显示所有已定义变量的字段。系统将隐藏 Property 类型变量之后的变量输入,而且不会填充 Property 类型的输入字段。

    无法解释 Property 变量类型,这导致在表单呈现过程中出现问题。现在,在生成输入表单时会使用 Property 类型。

已知问题

  • 收到“错误: 无法推送到受保护的分支”(error: failed to push to protected branch) 错误。将 commit 推送到受保护的 Git 分支失败。

    如果配置的 Git 分支受到保护,则推送操作将持续失败,但显示的消息却指示推送成功。

    解决办法:已决定不在当前或即将发布的 vRealize Orchestrator 版本中修复此问题。此已知问题条目将从下一版本的发行说明中删除。

  • 导入的资源元素恢复到先前状态。

    如果从文件导入资源元素后更新资源元素而未在 Git 中运行 commit,元素状态会在一段时间后恢复到先前状态。例如,您可以导入 REST 主机资源元素,然后运行更新 REST 主机工作流(该工作流不会更新 Git 中的资源元素)。一段时间后,对 REST 主机所做的更改将丢失。

    解决办法:更新后,从 vRealize Orchestrator 客户端手动升级资源元素版本,以便同步 Git 中的资源状态。

先前已知问题

此部分包含先前已知问题(早期版本的 vRealize Orchestrator 中已出现且在现有产品中仍然存在的已知问题)。

  • 如果 REST 主机实例是由 Swagger 规格创建的,则 RESTOperation ID 无法正确初始化。

    在 HTTP-REST 插件中,如果 REST 主机实例是由 Swagger 规格创建的,则 RESTOperation ID 无法正确初始化并且 RESTHost 对象的 getOperation 方法不起作用。

    没有解决办法。

  • vCenter Server 插件的存储 VSAN 工作流不支持向 ESXi 主机添加固态驱动器 (SSD) 磁盘。

    向磁盘组添加磁盘从磁盘组移除磁盘工作流不支持将 SSD 磁盘作为容量磁盘添加到 ESXi 主机。

    没有解决办法。

  • 特定环境中处理非 ASCII 字符时的问题。

    在输入参数中使用非 ASCII 字符会导致在以下情形中行为异常:

    • 从 SSH 文件夹中运行 SCP putSCP get 工作流时,如果文件名中包含非 ASCII 字符,虽然工作流仍可运行,但目标计算机上生成文件的文件名则无法辩认。
    • 如果尝试在变量名称中插入非 ASCII 字符,则这些字符不会显示。工作流变量和操作变量会发生此问题。

    没有解决办法。

  • SSH 插件遇到防火墙连接问题。

    SSH 插件无法连接 Cisco Adaptive Security Appliance(ASA,自适应安全设备)防火墙。

    解决办法:vRealize Orchestrator 7.1 的 SSH 插件不支持与 Cisco Adaptive Security Appliance(ASA,自适应安全设备)防火墙的连接。

  • 如果在连接 SOAP 或 REST 主机、导入证书时遇到问题,您可能需要显式启用特定版本的 SSL 或 TLS。

    有关此问题的信息,请参见《Java 安全套接字扩展 (JSSE) 参考指南》

    解决办法:有关明确启用 SSLv3 和 TLSv1 以用于出站 HTTPS 连接的信息,请参见如何在 vRO 6.0.x 中启用 TLSv1.1 和 TLSv1.2 以用于出站 HTTPS 连接(知识库文章 2144316)

  • SOAP 插件无法使用经过身份验证的代理服务器进行连接。

    尝试运行添加 SOAP 主机工作流时,遇到代理服务器身份验证问题。

    解决办法:运行该工作流时,使用无需身份验证的代理服务器。

  • 如果身份验证提供程序证书发生更改或重新生成,可能会使 vRealize Orchestrator 身份验证配置失效。

    当在控制中心内配置为身份验证提供程序的 vRealize Automation 或 vSphere 实例的 SSL 证书发生更改或重新生成时,vRealize Orchestrator 身份验证配置将失效,并且 vRealize Orchestrator 服务器将无法启动。

    解决办法:导入新的身份验证提供商证书:

    1. root 用户身份登录控制中心。
    2. 单击证书
    3. 单击导可信证书选项卡。
    4. 从 URL 或文件加载 SSL 证书。
    5. 单击导入

  • 在 vRealize Orchestrator 控制中心安装插件的过程中,系统显示一条错误消息。

    当您从控制中心的管理插件页面安装插件时,系统将显示以下错误消息:插件“name_of_the_plug-in”(plug-in_file_name) 与当前平台版本不兼容。支持的平台版本为“names_of_the_supported_versions”。单击“安装”按钮将仍然进行安装。(Plug-in 'name_of_the_plug-in' (plug-in_file_name) is not compatible with the current platform version. Supported platform versions are 'names_of_the_supported_versions'. Clicking on the 'Install' button will install it anyway.)

    解决办法:您可以放心地忽略此错误并继续安装插件。

  • 无法向类型为数组的 vCenter Server 数据对象属性添加值。

    当 vRealize Orchestrator 运行脚本时,vCenter Server 插件会将 JavaScript 数组转换为固定大小的 Java 数组。因此,您无法向属性值为“数组”的 vCenter Server 数据对象添加新值。如果向对象传递一个预填充的数组将其实例化,可以创建一个将数组作为属性的对象。但是,将对象实例化后,则无法向该数组添加值。

    例如,如下代码无法运行:

    var spec = new VcVirtualMachineConfigSpec();
    spec.deviceChange = [];
    spec.deviceChange[0] = new VcVirtualDeviceConfigSpec();
    System.log(spec.deviceChange[0]);

    在以上代码中,vRealize Orchestrator 先将空的 spec.deviceChange JavaScript 数组转换为固定大小的 Java 数组 VirtualDeviceConfigSpec[],然后再调用 setDeviceChange()。当调用 spec.deviceChange[0] = new VcVirtualDeviceConfigSpec() 时,vRealize Orchestrator 会调用 getDeviceChange(),并且数组会保持为固定的空 Java 数组。调用 spec.deviceChange.add() 时也会这样。

    解决办法:将数组声明为本地变量:

    var spec = new VcVirtualMachineConfigSpec();
    var deviceSpec = [];
    deviceSpec[0] = new VcVirtualDeviceConfigSpec();
    spec.deviceChange = deviceSpec;
    System.log(spec.deviceChange[0]);

check-circle-line exclamation-circle-line close-line
Scroll to top icon