利用资源编排创建100台ECS实例并指定自动释放时间

本文涉及的产品
资源编排,不限时长
简介:

在之前的博客中我们提到了通过资源编排创建一个ECS实例。在实际的大规模使用中,还是非常不方便的。为了更快更方便的批量创建资源,我们提供了新的资源类型InstanceGroup,它可以方便创建最多100台的同规格配置的资源,并且可以在创建的时候指定自动释放时间,您也可以不指定,当需要释放全部资源的时候通过删除该资源组或者通过ECS控制台释放这些实例。

InstanceGroup简介

相对于ALIYUN::ECS::Instance, InstanceGroupInstanceGroupClone提供了几个新的参数:

  • MaxAmount

    • 当前资源组创建的最大的ECS实例的数量。目前最大支持100台。必填参数。
  • MinAmount

    • 当前资源组创建的最小的ECS实例的数量,目前不生效,但是必须小于等于最大值,为未来扩展。必填参数。
  • AutoReleaseTime

    • 由于资源编排创建的是按量付费的资源,所以可以指定自动的释放时间,格式为yyyy-MM-ddTHH:mm:ssZ。遵循ISO8601的UTC时间,相比北京时间要减去8个小时。如果您想在北京时间12月20日16点28分释放,您需要指定为2015-12-20T08:28:11Z。时间范围为不小于当前时间半个小时,不大于当前时间3年。选填参数。

由于通过Group生成的资源为数组,所以这里的生成的模板返回的属性名称和类型也有不同。

  • InstanceIds:

    • 当前实例组的实例Id数组,格式为['i-...1', 'i-...2',...]。
  • PublicIps

    • 当前实例组的公网IP数组,格式为['##.##.##.##', '##.##.##.##',...]。仅对经典网络有效
  • PrivateIps

    • 当前实例组的私网IP数组,格式为['##.##.##.##', '##.##.##.##',...]。仅对VPC网络有效

通过ALIYUN::ECS::InstanceGroupClone快速客隆一组ECS的资源

这个资源将会拷贝源实例:

  • 实例规格
  • 镜像ID
  • 安全组ID
  • 系统盘类型,名称,描述
  • 数据盘类型,名称,描述,如果从快照创建,则从快照拷贝
  • 网络配置,网络付费类型,网络带宽
  • VPC类型的拷贝VSwitch

除了上面的属性,依然支持指定下面的属性,如果指定下面的属性就会覆盖默认属性的配置:

  • 实例名称
  • 实例描述
  • 实例密码
  • Tags配置

通过下面的模板可以快速的创建一组ECS的实例。这里您需要提供一个源实例ID来客隆,默认客隆1台同配置的ECS。

{
  "ROSTemplateFormatVersion" : "2015-09-01",
  "Parameters": {
    "SourceInstanceId": {
      "Type": "String"
    },
    "Password": {
      "Type": "String",
      "NoEcho": "true",
    },
    "MinAmount": {
      "Type": "Number",
      "Default": 1
    },
    "MaxAmount": {
      "Type": "Number",
      "Default": 1
    },
  },
  "Resources" : {
    "WebServer": {
      "Type": "ALIYUN::ECS::InstanceGroupClone",
      "Properties": {
        "SourceInstanceId": {"Ref": "SourceInstanceId"},
        "Password": {"Ref": "Password"},
        "MinAmount": {"Ref": "MinAmount"},
        "MaxAmount": {"Ref": "MaxAmount"}
      }
    }
  },
  "Outputs": {
    "InstanceId": {
         "Value" : {"Fn::GetAtt": ["WebServer","InstanceIds"]}
    },
    "PublicIp": {
         "Value" : {"Fn::GetAtt": ["WebServer","PublicIps"]}
    },
    "PrivateIp": {
         "Value" : {"Fn::GetAtt": ["WebServer","PrivateIps"]}
    }    
  }
}

如果需要在创建的时候指定自动释放时间,您需要加上一个参数AutoReleaseTime

{
  "ROSTemplateFormatVersion" : "2015-09-01",
  "Parameters": {
    "SourceInstanceId": {
      "Type": "String"
    },
    "Password": {
      "Type": "String",
      "NoEcho": "true",
      "Description": "实例的密码。8-30个字符,必须同时包含三项(大、小写字母,数字和特殊符号)"
    },
    "MinAmount": {
      "Type": "Number",
      "Default": 1
    },
    "MaxAmount": {
      "Type": "Number",
      "Default": 1
    },
    "AutoReleaseTime": {
      "Type": "String",
      "Description": "自动释放时间, 使用yyyy-MM-ddTHH:mm:ssZ格式的UTC0时间,相比北京时间减8个小时。暂时支持当前时间大于半个小时,不大于当年时间3年。"
    }
  },
  "Resources" : {
    "WebServer": {
      "Type": "ALIYUN::ECS::InstanceGroupClone",
      "Properties": {
        "SourceInstanceId": {"Ref": "SourceInstanceId"},
        "Password": {"Ref": "Password"},
        "MinAmount": {"Ref": "MinAmount"},
        "MaxAmount": {"Ref": "MaxAmount"},
        "AutoReleaseTime": {"Ref": "AutoReleaseTime"}
      }
    }
  },
  "Outputs": {
    "InstanceId": {
         "Value" : {"Fn::GetAtt": ["WebServer","InstanceIds"]}
    },
    "PublicIp": {
         "Value" : {"Fn::GetAtt": ["WebServer","PublicIps"]}
    },
    "PrivateIp": {
         "Value" : {"Fn::GetAtt": ["WebServer","PrivateIps"]}
    }    
  }
}

使用模板参数创建一组ECS实例

类似于创建一个ECS的实例,这里只需要添加新的参数MaxAmount,MinAmount, AutoReleaseTime即可。

{
  "ROSTemplateFormatVersion" : "2015-09-01",
  "Description": "一个简配的ecs实例,包括一个安全组,用户只需要指定imageId",
  "Parameters" : {
    "ImageId": {
      "Type" : "String",
      "Description": "镜像文件 ID,表示启动实例时选择的镜像资源"
    },
    "InstanceType": {
      "Type": "String",
      "Description": "实例的资源规格"
    },
    "SecurityGroupId": {
      "Type": "String",
      "Description": "安全组Id"
    },
    "MinAmount": {
      "Type": "Number",
      "Default": 1
    },
    "MaxAmount": {
      "Type": "Number",
      "Default": 1
    },
    "AutoReleaseTime": {
      "Type": "String",
      "Description": "自动释放时间, 使用yyyy-MM-ddTHH:mm:ssZ格式的UTC0时间,相比北京时间减8个小时。暂时支持当前时间大于半个小时,不大于当年时间3年。"
    }
  },
  "Resources" : {
    "WebServer": {
      "Type": "ALIYUN::ECS::InstanceGroup",
      "Properties": {
        "ImageId" : {"Ref": "ImageId"},
        "InstanceType": {"Ref": "InstanceType"},
        "SecurityGroupId": {"Ref": "SecurityGroupId"},
        "MinAmount": {"Ref": "MinAmount"},
        "MaxAmount": {"Ref": "MaxAmount"},
        "AutoReleaseTime": {"Ref": "AutoReleaseTime"}        
      }
    }
  },
  "Outputs": {
    "InstanceId": {
         "Value" : {"Fn::GetAtt": ["WebServer","InstanceIds"]}
    },
    "PublicIp": {
         "Value" : {"Fn::GetAtt": ["WebServer","PublicIps"]}
    },
    "PrivateIp": {
         "Value" : {"Fn::GetAtt": ["WebServer","PrivateIps"]}
    }    
  }
}  

如果需要创建IO优化的实例或者N2规格的机型,您还需要额外额外设置两个属性。"SystemDisk_Category": "cloud_efficiency" and "IoOptimized": "optimized"。 样例参照下文。

{
  "ROSTemplateFormatVersion": "2015-09-01",
  "Description": "一个简配的ecs实例,包括一个安全组,用户只需要指定imageId",
  "Parameters": {
    "AutoReleaseTime": {
      "Description": "自动释放时间, 使用yyyy-MM-ddTHH:mm:ssZ格式的UTC0时间,相比北京时间减8个小时。暂时支持当前时间大于半个小时,不大于当年时间3年。",
      "Type": "String"
    },
    "ImageId": {
      "Description": "镜像文件 ID,表示启动实例时选择的镜像资源",
      "Type": "String"
    },
    "InstanceType": {
      "Description": "实例的资源规格",
      "Type": "String"
    },
    "MaxAmount": {
      "Default": 1,
      "Type": "Number"
    },
    "MinAmount": {
      "Default": 1,
      "Type": "Number"
    },
    "SecurityGroupId": {
      "Description": "安全组Id",
      "Type": "String"
    }
  },
  "Resources": {
    "WebServer": {
      "Properties": {
        "AutoReleaseTime": {
          "Ref": "AutoReleaseTime"
        },
        "ImageId": {
          "Ref": "ImageId"
        },
        "InstanceType": {
          "Ref": "InstanceType"
        },
        "IoOptimized": "optimized",
        "MaxAmount": {
          "Ref": "MaxAmount"
        },
        "MinAmount": {
          "Ref": "MinAmount"
        },
        "SecurityGroupId": {
          "Ref": "SecurityGroupId"
        },
        "SystemDisk_Category": "cloud_efficiency"
      },
      "Type": "ALIYUN::ECS::InstanceGroup"
    }
  },
  "Outputs": {
    "InstanceId": {
      "Value": {
        "Fn::GetAtt": [
          "WebServer",
          "InstanceIds"
        ]
      }
    },
    "PrivateIp": {
      "Value": {
        "Fn::GetAtt": [
          "WebServer",
          "PrivateIps"
        ]
      }
    },
    "PublicIp": {
      "Value": {
        "Fn::GetAtt": [
          "WebServer",
          "PublicIps"
        ]
      }
    }
  }
}

欢饮提出您对资源编排的需求和反馈,谢谢!

相关实践学习
2分钟自动化部署人生模拟器
本场景将带你借助云效流水线Flow实现人生模拟器小游戏的自动化部署
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
1月前
|
弹性计算 监控 负载均衡
|
15天前
|
存储 缓存 运维
阿里云服务器经济型e与通用算力型u1实例各自性能、适用场景区别及选择参考
在选择阿里云服务器实例规格时,经济型e实例和通用算力型u1实例因其高性价比和广泛适用性,备受个人开发者、中小企业的青睐。在同地域、相同配置的情况下,经济型e和通用算力型u1实例的价格相对于其他实例规格要低一些,很多个人和初创企业用户都会优先考虑选择这两个实例规格的云服务器,那么它们之间有什么区别?各自的性能、适用场景上有何区别?我们应该如何选择呢?本文将详细解析这两款实例的性能特点、适用场景、价格优势及购买建议,帮助用户更好地理解并选择合适的云服务器实例。
|
8天前
|
存储 弹性计算 数据挖掘
阿里云服务器ECS经济型e实例与通用算力u1区别、特性优势、使用场景及租赁费用对比
阿里云ECS云服务器的经济型e实例和通用算力型u1实例各有特点。e实例适合个人开发者和小微企业,适用于中小型网站、开发测试和轻量级应用,性价比高。u1实例则更适合中小企业,提供更高的性能和稳定性,适用于企业级应用、数据分析和中小型数据库。同等配置下,u1实例在计算、存储和网络性能上优于e实例。
136 86
|
1天前
|
存储 缓存 资源调度
阿里云服务器经济型、通用算力型、计算型、通用型、内存型实例区别与选择指南
在我们通过阿里云的活动选购云服务器的时候会发现,相同配置的云服务器往往有多个不同的实例可选,而且价格差别也比较大,这会是因为不同实例规格的由于采用的处理器不同,底层架构也有所不同(例如X86 计算架构与Arm 计算架构),因此不同实例的云服务器其性能与适用场景是有所不同。本文将详细解析阿里云的经济型、通用算力型、计算型、通用型和内存型实例的性能特点及适用场景,帮助用户根据自己的业务需求做出明智的选择。
|
2天前
|
开发框架 缓存 .NET
阿里云轻量应用服务器、经济型e、通用算力型u1实例怎么选?区别及选择参考
在阿里云目前的活动中,价格比较优惠的云服务器有轻量应用服务器2核2G3M带宽68元1年,经济型e实例2核2G3M带宽99元1年,通用算力型u1实例2核4G5M带宽199元1年,这几个云服务器是用户关注度最高的。有的新手用户由于是初次使用阿里云服务器,对于轻量应用服务器、经济型e、通用算力型u1实例的相关性能并不是很清楚,本文为大家做个简单的介绍和对比,以供参考。
|
7天前
|
存储 分布式计算 安全
阿里云服务器经济型、通用算力型、计算型、通用型各主要实例性能、适用场景对比
在阿里云目前的活动中,云服务器实例规格有几大类,分别是轻量应用服务器、经济型e实例、通用算力型u1实例,第七代计算型c7、通用型g7、内存型r7实例,第八代计算型c8i、通用型g8i、内存型r8i实例,倚天云服务器实例计算型c8y、通用型g8y、内存型r8y实例,不同类型的实例规格,性能和适用场景不同,本文将这些热门实例规格的性能和适用场景全部展示出来,以供大家做对比和选择参考,从而选择出适合自己需求的云服务器实例规格。
|
10天前
|
存储 缓存 网络协议
阿里云服务器实例选择:c7/g7/r7和c8i/g8i/r8i及c8y/g8y/r8y实例对比与选择参考
本文将重点介绍阿里云服务器七代云服务器实例(计算型c7、通用型g7、内存型r7)、八代云服务器实例(计算型c8i、通用型g8i、内存型r8i)以及倚天云服务器实例(计算型c8y、通用型g8y、内存型r8y)的主要性能、适用场景及选择参考,帮助用户根据自己的需求选择合适的云服务器实例。
|
8天前
|
存储 缓存 安全
阿里云服务器通用算力型u1实例怎么样?实例性能与测评结果参考
本文将通过性能评测、适用场景、特点介绍、实测数据分享以及最新活动价格等多个方面,全方位解析这款云服务器实例,以供用户了解和参考。
|
18天前
|
弹性计算 数据挖掘 测试技术
ECS e实例测评
ECS e实例是阿里云推出的经济型云服务器,适合中小规模应用。性能上能满足基本需求,但在高并发场景下表现一般。性价比高,价格亲民,适合预算有限的开发者。用户体验良好,配有丰富的技术文档,但部分高级功能操作说明有待优化。
44 18
|
9天前
|
弹性计算 监控 测试技术
ecs e实例测评
阿里云 e实例性能稳定,适用于中小型 Web 应用。在 CPU 和内存性能测试中,e实例表现出色,尤其在资源密集型任务中具有较高的性价比。相比同配置的其他 ECS 规格,e实例在轻量化场景中更为均衡。价格方面,e实例低于传统 ECS 的 t5 实例,且在中国大陆市场具备一定优势。用户体验方面,控制台提供了清晰的实例创建流程和快速部署选项,但缺乏高级应用文档和性能优化指导。总体而言,e实例适合中小型企业和个人开发者使用。
35 5

热门文章

最新文章

推荐镜像

更多