资源栈模板语法

资源栈模板是一个UTF8编码格式的文件。

基于模板可快速创建资源栈,用户在模板中定义所需的云资源、资源间的依赖关系、资源配置等,资源编排将解析模板,自动完成所有资源的创建和配置。

资源栈模板结构

资源栈模板结构如下:
{
    "ZStackTemplateFormatVersion" : "YYYY-MM-DD",
    "Description" : "模板描述信息,可用于说明模板的适用场景、架构说明等。",
    "Parameters" : {
      // 定义创建资源栈时,用户可以定制化的参数。
    },
    "Mappings" : {
      // 定义映射信息表,映射信息是一种多层的Map结构。
    },
    "Resources" : {
      // 所需资源的详细定义,包括资源间的依赖关系、配置细节等。
    },
    "Outputs" : {
      // 用于输出一些资源属性等有用信息,可以通过API获取输出的内容。
  }
  • ZStackTemplateFormatVersion(必需)
    模板版本号。
    • 格式为:YYYY-MM-DD
  • Description(可选)
    模板描述信息,可用于说明模板的适用场景、架构说明等。
    • 对模板进行详细描述,有利于用户理解模板内容。
  • Parameters(可选)
    定义创建资源栈时,用户可以定制化的参数。
    • 例如,用户将创建云主机的计算规格设计成一个参数。
    • 参数支持默认值。
    • 使用参数可以增强模板的灵活性,提高复用性。
    • 关于参数(Parameters)的详细介绍,请参考参数(Parameters)章节。
  • Mappings(可选)
    定义映射信息表,映射信息是一种多层的Map结构。
    • 可通过Fn::FindInMap函数选择key对应的值。
    • 可根据不同的输入参数值作为key查找映射表。
    • 例如,可根据区域不同,自动查找区域-镜像映射表,从而找到适用的镜像。
    • 关于映射(Mappings)的详细介绍,请参考映射(Mappings)章节。
  • Resources(可选)
    所需资源的详细定义,包括资源间的依赖关系、配置细节等。
  • Outputs(可选)
    用于输出一些资源属性等有用信息,可以通过API获取输出的内容。