部署云模板后,可以运行实施后操作以对部署进行更改。Cloud Assembly 包括许多实施后操作,但您可能希望提供其他操作。可以创建自定义资源操作,并将其作为实施后操作提供给用户。
自定义资源操作可以基于 vRealize Orchestrator 工作流或可扩展性操作。以下自定义实施后资源操作示例旨在介绍基于 vRealize Orchestrator 的资源操作创建过程。
前提条件
- 确认您已配置 vRealize Orchestrator 集成。请参见在 Cloud Assembly 中配置 vRealize Orchestrator 集成。
- 确认 vRealize Orchestrator 中存在用于实施后操作的工作流,并且成功运行。
过程
- 创建一个自定义资源操作,使用 vMotion 将 vSphere 虚拟机从一个主机移至另一个主机。
- 在 Cloud Assembly 中,选择设计 > 资源操作,然后单击新建资源操作。
- 提供以下值。
请注意,除工作流名称外,这些值都是示例值。
设置 示例值 名称 vSphere_VM_vMotion 这是显示在“资源操作”列表中的名称。
显示名称 迁移虚拟机 这是用户在“部署操作”菜单中看到的名称。
- 单击激活选项,在“实施后操作”菜单中为与资源类型匹配的资源启用此操作。
- 选择用于定义实施后操作的资源类型和工作流。
设置 示例值 资源类型 选择 Cloud.vSphere.Machine 资源类型。 这是部署为云模板组件的资源类型,但不一定是云模板中的资源。例如,您的云模板中可能存在云平台无关的计算机,但在 vCenter Server 上部署该计算机时,该计算机将为 Cloud.vSphere.Machine。由于该操作适用于已部署的类型,因此在定义资源操作时,不要使用云平台无关的类型。
在此示例中,vMotion 仅适用于 vSphere 计算机,但您可能需要在多个资源类型上运行其他操作。必须为每个资源类型创建一个操作。
工作流 选择通过 vMotion 迁移虚拟机工作流。 如果您有多个 vRealize Orchestrator 集成,请在用于运行这些自定义资源操作的集成实例上选择工作流。
- 创建 vRealize Orchestrator 属性与 Cloud Assembly 结构定义属性的绑定。Cloud Assembly 实施后操作支持三种类型的绑定。
绑定类型 说明 在请求中 默认值绑定类型。如果选择该选项,则会在请求表单中显示输入属性,并且用户必须在请求时提供其值。 使用绑定操作 此选项仅适用于如下所示的引用类型输入: VC:VirtualMachine
VC:Folder
用户选择执行绑定的操作。所选操作必须返回与输入参数相同的类型。正确的属性定义为
${properties.someProperty}
。直接 此选项适用于使用基本数据类型的输入属性。如果选择该选项,将直接从输入属性的结构定义映射具有合适类型的属性。用户从结构定义树中选择属性。将禁用具有不同类型的属性。 在此用例中,绑定是一种 vRealize Orchestrator 操作,可在工作流中使用的 vRealize OrchestratorVC:VirtualMachine
输入类型与 Cloud AssemblyCloud.vSphere.Machine
资源类型之间建立连接。通过设置绑定,对于请求对 vSphere VM 计算机执行 vMotion 操作的用户,您可无缝执行实施后操作。系统会在工作流中提供名称,这样用户无需执行此操作。- 选择通过 vMotion 迁移虚拟机工作流后,导航到属性绑定窗格。
- 选择
vm
输入属性的绑定。 - 在绑定下,选择使用绑定操作。
将自动选择 findVcVmByVcAndVmUuid 操作。此操作在 Cloud Assembly 中预配置了 vRealize Orchestrator 集成。
- 单击保存。
- 要将更改保存到实施后操作,请单击创建。
- 要考虑工作流中的其他输入参数,可以自定义用户在请求操作时看到的请求表单。
- 从资源操作中,选择最近创建的实施后操作。
- 单击编辑请求参数。
可以自定义向用户显示请求页面的方式。
默认字段名称 外观 值 限制 虚拟机的目标资源池。默认为当前资源池。 - 标签 = 目标资源池
- 显示类型 = 值选择器
要将虚拟机迁移到的目标主机 - 标签 = 目标主机
- 显示类型 = 值选择器
必需 = 是 迁移任务的优先级 标签 = 任务的优先级 值选项 - 值源 = 常数
在文本框中,输入逗号分隔列表。
lowPriority|Low,defaultPriority|Default,highPriority|High
必需 = 是 (可选)仅当虚拟机的打开电源状态符合指定的状态时才迁移虚拟机 删除此文本框。 vMotion 可移动处于任何电源状态的计算机。
- 单击保存。
- 要限制操作可用的时间,可以配置条件。
例如,您只希望 vMotion 操作在计算机有四个或更少的 CPU 时可用。
- 打开需要条件。
- 输入条件。
Key 运算符 值 ${properties.cpuCount} lessThan 4 如果需要复杂条件,请参见如何为 Cloud Assembly 自定义操作构建高级条件。
- 单击更新。
- 验证“迁移虚拟机”操作是否可用于符合条件的已部署计算机。
- 选择部署。
- 找到包含与已定义条件匹配的已部署计算机的部署。
- 打开该部署并选择计算机。
- 在右侧窗格中单击“操作”,然后确认存在
Move VM
操作。 - 运行该操作。