利用资源编排创建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"
        ]
      }
    }
  }
}

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

相关实践学习
借助OSS搭建在线教育视频课程分享网站
本教程介绍如何基于云服务器ECS和对象存储OSS,搭建一个在线教育视频课程分享网站。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
2月前
|
存储 弹性计算 缓存
阿里云服务器ECS实例选型与性能监控指南:从场景匹配到优化参考
随着云服务器的普及应用,越来越多的企业和个人用户选择将业务迁移到云端,以享受其带来的灵活性、可扩展性和成本效益。阿里云服务器(Elastic Compute Service,简称ECS)以其丰富的实例规格、卓越的性能和稳定的运行环境,赢得了广大用户的信赖。然而,对于很多初次接触云服务器产品的新手用户来说,面对阿里云多达几十种的云服务器实例规格,往往感到无从下手,不知道如何选择最适合自己业务需求的实例规格。本文旨在通过详细解析阿里云ECS实例规格的选择策略,并介绍如何有效监控云服务器性能,确保业务的高效运行。
247 63
|
1月前
|
缓存 弹性计算 数据挖掘
阿里云服务器经济型e与通用算力型u1实例怎么选?二则性能及适用场景区别参考
在当今数字化时代,云服务器已成为众多个人开发者、学生、小微企业以及中小企业开展业务、搭建网站、运行应用程序等不可或缺的基础设施。阿里云推出了多种类型的云服务器实例,以满足不同用户的需求。其中,经济型e实例和通用算力型u1实例备受关注。经济型e实例ECS云服务器2核2G3M带宽新购和续费同价99元1年,通用算力型u1实例2核4G5M带宽新购和续费同价199元1年(限企业用户)、4核8G云服务器955元1年。本文将为大家介绍阿里云服务器中的经济型e实例和通用算力型u1实例的特点、区别以及新手选择参考。
|
2月前
|
存储 安全 网络协议
阿里云服务器通用型实例怎么选?g7/g8y/g8i适用场景、性能对比与选择参考
在选择云服务器实例规格时,对于需要平衡计算、存储和网络性能的应用场景来说,一般会选择通用型实例规格,在阿里云目前的活动中,属于通用型实例的主要有通用型g7、通用型g8y和通用型g8i实例。为了帮助大家更好地了解这三款实例的区别,并为选择提供参考,本文将详细对比它们的实例规格、CPU、内存、计算、存储、网络等方面的性能,并附上活动价格对比,以便用户能够全面了解它们之间的不同,以作参考选择。
131 14
|
2月前
|
存储 弹性计算 安全
阿里云服务器ECS实例选购参考:vCPU到云盘IOPS等指标详解
阿里云服务器ECS实例可以分为多种实例规格族,而根据CPU、内存等配置的不同,一种实例规格族又进一步细分为多种实例规格。这些实例规格包含了众多关键的性能指标,如 vCPU、处理器、内存、vTPM、本地存储、网络带宽、网络收发包 PPS、连接数、弹性网卡、云盘带宽、云盘 IOPS 等。深入理解这些性能指标,对于用户在阿里云服务器购买过程中选择最适合自己业务需求的实例规格至关重要。
|
3月前
|
存储 缓存 编解码
阿里云服务器实例规格怎么选?经济型、通用算力型、计算型、通用型、内存型场景化选购指南
阿里云服务器的实例规格有经济型、通用型、计算型、内存型、通用算力型、大数据型、本地SSD型、高主频型、突发型、共享型等不同种类的实例规格,以满足不同用户和业务场景的需求。对于初次接触阿里云服务器的用户来说,如何选择合适的实例规格成为了一个重要的问题。本文将为大家解析阿里云的经济型、通用算力型、计算型、通用型和内存型实例规格的主要性能和适用场景情况,帮助用户根据实际需求选择合适的云服务器实例。
391 10
|
2月前
|
存储 机器学习/深度学习 安全
阿里云服务器计算型c8i与通用型g8i实例性能、适用场景及价格参考
阿里云不断推陈出新,致力于为用户提供高性能、高可靠性和高安全性的云服务器实例,以满足不同用户在各种复杂场景下的需求。其中,计算型c8i与通用型g8i实例凭借其卓越的性能和灵活的配置,成为了企业级用户的热门选择。本文将深入探讨这两款实例的性能特点、最新收费标准以及适用场景和活动价格情况,以供大家了解和选择。
|
3月前
|
存储 缓存 弹性计算
阿里云经济型e实例云服务器评测:企业官网搭建的性价比之选
阿里云服务器经济型e实例可以用来搭建企业网站吗?云服务器作为搭建企业官网的基础设施,其性能、稳定性、成本等因素直接影响着官网的运营效果。阿里云经济型e实例云服务器作为一款性价比较高的产品,备受用户关注。许多企业在选择云服务器搭建官网时,都会将其纳入考虑范围。本文将详细探讨阿里云经济型e实例云服务器的特点、性能表现、稳定性与可靠性,以及成本考量,最终解答是否适合用它来搭建企业官网。
|
1月前
|
存储 缓存 安全
阿里云九代云服务器c9i/g9i/r9i实例性能、适用场景解析及活动价格参考
阿里云九代云服务器c9i、g9i、r9i实例是其最新推出的高性能企业级云服务器,凭借其卓越的性能和丰富的功能,广泛应用于机器学习推理、数据分析、高网络包收发等众多场景。接下来,我们将深入探讨这三款实例的性能、适用场景以及价格等方面的详细信息。
147 15
|
1月前
|
存储 机器学习/深度学习 安全
阿里云服务器通用型实例解析:g7/g8a/g8y/g8i性能对比与场景化选型参考
在阿里云服务器的通用型实例规格中,通用型g7、通用型g8a、通用型g8y和通用型g8i,凭借其强大的性能和灵活的配置,成为了众多企业和开发者的首选。这几个实例规格相比经济型e和通用算力型u1等实例规格,性能更为强劲,尽管它们的处理器与内存配比通常为1:4,但在处理器架构、存储能力、网络性能及安全特性等方面各有千秋,因此适用场景也各有侧重。以下是对通用型g7、g8a、g8y、g8i实例的详细性能对比、适用场景分析及选择建议。
|
1月前
|
弹性计算 数据挖掘 测试技术
阿里云服务器2核8G、4核16G、8核32G配置热门实例性能、适用场景对于与选择参考
2025年,阿里云针对2核8G、4核16G、8核32G这三种主流配置,推出了一系列极具吸引力的活动,为用户提供了多样化的选择。目前,2核8G配置的云服务器活动价格为522.79元/年起,4核16G配置的云服务器活动价格为2149.92元/年起,而8核32G配置的云服务器活动价格则为4249.44元/年起。这些价格涵盖了经济型e、通用算力型u1、通用型g8i、通用型g7和通用型g8y等不同实例规格,为用户提供了多样化的选择。本文将对这些配置热门实例规格的实例性能、适用场景和活动价格做个对比,以供选择和参考。

热门文章

最新文章

推荐镜像

更多
  • ros