资源栈模板语法
资源栈模板是一个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
(可选)所需资源的详细定义,包括资源间的依赖关系、配置细节等。- 关于资源(Resources)的详细介绍,请参考资源(Resources)章节。
Outputs
(可选)用于输出一些资源属性等有用信息,可以通过API获取输出的内容。- 关于输出(Outputs)的详细介绍,请参考输出(Outputs)章节。