更新时间:2024-04-17 GMT+08:00

node_templates

node_templates为必填项,用于定义该模板中编排的元素对象集合,其中所有对象均为元素。一个元素可以是一个应用、一个云服务资源。

node_templates格式

<元素名称>:
  type: <元素类型>
  properties: <元素属性>
  requirements: <元素依赖>
  condition: <条件名称>
表1 参数属性说明

属性

是否必选

参数类型

取值约束

描述

元素名称

字符串

由小写字母、数字和中划线“-”组成,长度为[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