840
微信
资源(Resources)__模板语法_资源编排-阿里云
描述堆栈中每一个资源的属性和依赖关系。一个资源可以被其他资源和 Output 所引用。
语法
资源部分由资源 ID 和资源描述组成。所有资源描述都被括在括号里。如果您声明多个资源,则可用逗号将它们分隔开。以下代码段描述了 Resources 的语法结构:
"Resources" : {
"资源1 ID" : {
"Type" : "资源类型",
"Properties" : {
资源属性描述
}
},
"资源2 ID" : {
"Type" : "资源类型",
"Properties" : {
资源属性描述
}
}
}
资源 ID
资源 ID 在模板中具有唯一性。可使用资源 ID 在模板的其他部分中引用资源。
资源类型
资源类型标识您正在声明的资源的类型。例如,ALIYUN::ECS::Instance 声明阿里云 ECS 实例。有关所有资源的列表,请参阅 资源列表。
资源属性
资源属性是可以为资源指定的附加选项。例如,对于每个阿里云 ECS 实例,必须为该实例指定一个 Image ID。如以下代码段所示:
"Resources" : {
"ECSInstance" : {
"Type" : "ALIYUN::ECS::Instance",
"Properties" : {
"ImageId" : "m-25l0rcfjo"
}
}
}
如果资源不需要声明任何属性,那么您可以忽略该资源的属性部分。
属性值可以是文本字符串、字符串列表、布尔值、参数引用或者函数返回的值。如果属性值为文件字符串,该值会被双引号括起来。如果值为任一类型的列表结果,则它会被中括号 ([ ]) 括起来。如果值为内部函数或引用的结果,则它会被大括号 ({ }) 括起来。当您将文字、列表、参考和函数合并起来获取值时,上述规则适用。以下示例说明如何声明不同的属性值类型:
"Properties" : {
"String" : "string",
"LiteralList" : [ "value1", "value2" ],
"Boolean" : "true"
"ReferenceForOneValue" : { "Ref" : "ResourceID" } ,
"FunctionResultWithFunctionParams" : {
"Fn::Join" : [ "%", [ "Key=", { "Ref" : "SomeParameter" } ] ] }
}
DeletionPolicy
利用 DeletionPolicy 属性,用户可以在某个资源的堆栈被删除时保留该资源。如以下代码段所示:
"Resources" : {
"ECSInstance" : {
"Type" : "ALIYUN::ECS::Instance",
"Properties" : {
"ImageId" : "m-25l0rcfjo"
},
"DeletionPolicy" : "Retain"
}
}
在上例中,如果模板对应的堆栈被删除,则会保留 ECSInstance 资源。
DependsOn
使用 DependsOn 属性可以指定特定资源紧跟着另一个资源创建。在您为资源添加 DependsOn 属性时,该资源仅在创建 DependsOn 属性中指定的资源之后创建。
如以下代码段所示,WebServer 将在 DatabaseServer 创建成功后才开始创建:
{
"ROSTemplateFormatVersion" : "2015-09-01",
"Resources" : {
"WebServer": {
"Type": "ALIYUN::ECS::Instance",
"DependsOn": "DatabseServer"
},
"DatabseServer": {
"Type": "ALIYUN::ECS::Instance",
"Properties": {
"ImageId" : "m-25l0rcfjo",
"InstanceType": "ecs.t1.small"
}
}
}
}
示例
以下示例显示的是典型的资源声明。
"Resources" : {
"WebServer": {
"Type": "ALIYUN::ECS::Instance",
"Properties": {
"ImageId" : "m-25l0rcfjo",
"InstanceType": "ecs.t1.small",
"SecurityGroupId": "sg-25zwc3se0",
"ZoneId": "cn-beijing-b",
"Tags": [{
"Key": "tiantt",
"Value": "ros"
},{
"Key": "tiantt1",
"Value": "ros1"
}
]
}
},
"ScalingConfiguration": {
"Type": "ALIYUN::ESS::ScalingConfiguration",
"Properties": {
"ImageId": "ubuntu1404_64_20G_aliaegis_20150325.vhd",
"InstanceType": "ecs.t1.small",
"InstanceId": "i-25xhhcqbu",
"InternetChargeType": "PayByTraffic",
"InternetMaxBandwidthIn": 1,
"InternetMaxBandwidthOut": 20,
"SystemDisk_Category": "cloud",
"ScalingGroupId": "bwhtvpcBcKYac9fe3vd0kv7E",
"SecurityGroupId": "sg-25zwc3se0",
"DiskMappings": [
{
"Size": 10
},
{
"Category": "cloud",
"Size": 10
}
]
}
}
}
最后更新:2016-11-23 16:04:02
上一篇:
参数(Parameters)__模板语法_资源编排-阿里云
下一篇:
输出(Outputs)__模板语法_资源编排-阿里云
通过控制台发送邮件__发送邮件_使用手册_邮件推送-阿里云
修改数据复制方式__实例管理_用户指南_云数据库 RDS 版-阿里云
使用集群__命令行工具_批量计算-阿里云
统计分析__使用手册(new)_机器学习-阿里云
升级系统服务__集群管理_用户指南_容器服务-阿里云
阿里云Link城市物联网平台生态战略与合作伙伴案例亮相云栖大会
C-SDK使用(threadx)__SDK使用参考_设备端接入手册_阿里云物联网套件-阿里云
SDK接口简介__数据订阅_用户指南_数据传输-阿里云
Linux 系统虚拟主机 .htaccess 限制 IP 访问的方法___安全问题_技术分享_云虚机主机-阿里云
优势__产品简介_云服务器 ECS-阿里云
相关内容
常见错误说明__附录_大数据计算服务-阿里云
发送短信接口__API使用手册_短信服务-阿里云
接口文档__Android_安全组件教程_移动安全-阿里云
运营商错误码(联通)__常见问题_短信服务-阿里云
设置短信模板__使用手册_短信服务-阿里云
OSS 权限问题及排查__常见错误及排除_最佳实践_对象存储 OSS-阿里云
消息通知__操作指南_批量计算-阿里云
设备端快速接入(MQTT)__快速开始_阿里云物联网套件-阿里云
查询API调用流量数据__API管理相关接口_API_API 网关-阿里云
使用STS访问__JavaScript-SDK_SDK 参考_对象存储 OSS-阿里云