可通过将蓝图作为组件嵌套在其他蓝图中来重用这些蓝图。可以通过嵌套蓝图来重用蓝图并在置备计算机时进行模块化控制,但是,使用嵌套蓝图时,需要注意一些特定规则和事项。

包含一个或多个嵌套蓝图的蓝图称为外部蓝图。如果在创建或编辑其他蓝图时将某个蓝图组件添加到设计画布中,则该蓝图组件称为“嵌套蓝图”,而将其添加到的容器蓝图称为“外部蓝图”。

通过使用嵌套蓝图,可以提出一些有时并不明显的注意事项。要充分利用计算机置备功能,必须了解这些规则和注意事项。

嵌套蓝图的一般规则和注意事项

  • 最佳做法是尽可能降低蓝图的复杂性,将蓝图限制于三层,并让顶层蓝图充当其中一层。

  • 如果已授权用户访问外部蓝图,则该用户还有权访问该外部蓝图的嵌套蓝图。

  • 您可以将批准策略应用于蓝图。获得批准之后,将置备蓝图目录项及其所有组件(包括嵌套蓝图)。此外,您还可以将不同的批准策略应用于不同组件。所有批准策略必须先经过批准,然后才能置备请求的蓝图。

  • 在编辑已发布的蓝图时,不要更改已使用该蓝图置备的部署。置备时,生成的部署将从蓝图中读取当前值,包括从其嵌套蓝图中读取。可对已置备的部署进行的唯一更改是对软件组件进行编辑,例如对更新或卸载脚本进行编辑。

  • 在外部蓝图中定义的设置会覆盖在嵌套蓝图中配置的设置,但下列情况除外:

    • 您可以更改嵌套蓝图的名称,但无法更改计算机组件或嵌套蓝图内任何其他组件的名称。

    • 不能为嵌套蓝图中的计算机组件添加或删除自定义属性。但是,可以编辑这些自定义属性。不能为嵌套蓝图中的计算机组件添加、编辑或删除属性组。

  • 您或其他架构师对嵌套蓝图设置进行的更改会显示在外部蓝图中,除非您在外部蓝图中覆盖了这些设置。

  • 将外部蓝图上的最长租用时间限制为组件蓝图的最大租用值中的最低值。

    尽管在嵌套蓝图和外部蓝图上指定的租用时间可以设置为任意值,但外部蓝图上的最大租用时间应该限制为嵌套蓝图最大租用值中的最低值。这使得应用程序架构师可以设计具有统一的可变租用值但在基础架构架构师指定的限制范围内的复合蓝图。如果嵌套蓝图上定义的最大租用值小于外部蓝图上定义的值,置备请求将失败。

  • 在外部蓝图中进行操作时,您可以替代为嵌套蓝图中的计算机组件配置的计算机资源设置。

  • 在外部蓝图中进行操作时,您可以将软件组件拖到嵌套蓝图内的计算机组件上。

  • 如果您打开一个蓝图,而其中的嵌套蓝图中的计算机组件已移除或其 ID 已更改,并且该计算机组件与当前蓝图中的组件关联,则会移除关联的组件并显示以下消息或相似消息:

    嵌套蓝图中由当前蓝图中的组件引用的计算机组件已移除,或其计算机组件 ID 已更改。当前蓝图中与缺失的或已更改的计算机组件 ID 关联的所有组件都已移除。单击“取消”以保留嵌套蓝图中缺失的或已更改的计算机组件 ID 与当前蓝图中的组件的关联历史记录,并更正嵌套蓝图中的问题。打开嵌套蓝图并使用原始 ID 重新添加缺失的计算机组件,或将计算机组件 ID 重新更改为其原始 ID。单击“保存”以移除嵌套蓝图中缺失的或已更改的计算机组件 ID 与当前蓝图中的组件的所有关联历史记录。

嵌套蓝图的网络和安全规则及注意事项

  • 外部蓝图中的所有网络与安全组件均可与在嵌套蓝图中定义的计算机关联。

  • 将应用程序隔离应用于外部蓝图时,它将替代在嵌套蓝图中指定的应用程序隔离设置。

  • 在外部蓝图中定义的传输区域设置将替代在嵌套蓝图中指定的传输区域设置。

  • 在外部蓝图中进行操作时,您可以相对于在内部或嵌套蓝图中配置的网络组件设置和计算机组件设置来配置负载平衡器设置。

  • 对于包含按需 NAT 网络组件的嵌套蓝图,在该按需 NAT 网络组件中指定的 IP 范围在外部蓝图中不可编辑。

  • 外部蓝图无法包含此类内部蓝图:包含按需网络设置或按需负载平衡器设置的内部蓝图。不支持使用包含 NSX 按需网络组件或 NSX 负载平衡器组件的内部蓝图。

  • 对于包含 NSX 网络或安全组件的嵌套蓝图,您无法更改在嵌套蓝图中指定的网络配置文件或安全策略信息。但是,您可以对添加到外部蓝图中的其他 vSphere 计算机组件重用这些设置。

  • 为确保嵌套蓝图中的 NSX 网络与安全组件在复合蓝图中都是唯一的,vRealize Automation 会添加嵌套蓝图 ID 作为非唯一网络与安全组件名称的前缀。例如,如果将 ID 名称为 xbp_1 的蓝图添加到外部蓝图,且这两个蓝图均包含名为 OD_Security_Group_1 的按需安全组组件,则嵌套蓝图中的组件将在蓝图设计画布中重命名 xbp_1_OD_Security_Group_1。外部蓝图中的网络与安全组件名称没有前缀。

嵌套蓝图的软件组件注意事项

对于可缩放蓝图,最佳做法是创建不重用其他蓝图的单层蓝图。通常,在缩放操作期间,隐式依赖关系(例如将软件属性绑定到计算机属性时创建的依赖关系)会触发更新过程。但是,嵌套蓝图中的隐式依赖关系并不总是触发更新进程。如果需要在可缩放蓝图中使用嵌套蓝图,可手动绘制嵌套蓝图中的组件之间的依赖关系,创建始终触发更新的显式依赖关系。