node_templates
node_templates为必填项,用于定义该模板中编排的元素对象集合,其中所有对象均为元素。一个元素可以是一个应用、一个云服务资源。
node_templates格式:
<元素名称>: type: <元素类型> properties: <元素属性> requirements: <元素依赖> condition: <条件名称>
属性 |
是否必选 |
参数类型 |
取值约束 |
描述 |
---|---|---|---|---|
元素名称 |
是 |
字符串 |
由小写字母、数字和中划线“-”组成,长度为[1, 48]。 |
命名必须唯一。 |
元素类型 |
是 |
HuaweiCloud.***(***为资源索引中元素名) |
- |
用于指定编排对象的具体类型。 |
元素属性 |
否 |
- |
元素属性信息基于元素类型展开,每种元素类型会有其相应的属性,具体属性详见元素列表。 |
属性的变量可以来自inputs获取,也可以通过get_attribute得到运行时的信息。当一个元素没有需要特别声明的属性时,可以不定义properties。 |
元素依赖 |
否 |
- |
设置为与该元素存在依赖关系的其他元素名称。 |
如果元素与其他元素之间没有关系,则不需要定义。元素的依赖关系来自所定义的元素类型。针对具体的类型可以定义相关的依赖。
说明:
例如子网依赖vpc,可以在子网的requirements中定义依赖的node是vpc对象。 requirements: - vpcId: node: myvpc |
条件名称 |
否 |
字符串 |
由大写字母、小写字母、数字和中划线“-”组成,长度为[1-64]。 |
如果定义了条件,则元素在条件满足时才会部署创建。具体方法详见conditions。 |
node_templates配置示例:
# 元素对象定义 node_templates: myecs: type: HuaweiCloud.ECS.CloudServer properties: availabilityZone: cn-south-1a flavor: c1.medium imageId: a3934478-bfeb-4a02-b257-9089779f0380 instances: 1 name: my-ecs nics: - subnetId: get_input: subnet rootVolume: size: 40 volumeType: SATA vpcId: get_input: vpc