Ecs实例创建接口升级-RunInstances

简介: 现在提供的ECSOpenAPI有2个实例创建接口RunInstances和CreateInstance,由于CreateInstance接口提供时间较早,因此还有有依赖该接口的调用,但是RunInstances接口其实在设计和使用便利性上其实更胜一筹。 CreateInstance的创建调用是一次非常细粒度的原子操作,只会将实例创建成功,因此对于接口使用者来说并不一定是最方便的。首先最明

现在提供的ECSOpenAPI有2个实例创建接口RunInstances和CreateInstance,由于CreateInstance接口提供时间较早,因此还有有依赖该接口的调用,但是RunInstances接口其实在设计和使用便利性上其实更胜一筹。

CreateInstance的创建调用是一次非常细粒度的原子操作,只会将实例创建成功,因此对于接口使用者来说并不一定是最方便的。首先最明显的区别就是RunInstances接口的终态稳定状态是Running,这会带来多方面的影响,

调用效率提升

直接的优化就是实例从创建到启动可以工作,调用的管控接口大大减少,创建n(小于100)台实例时,之前的调用需要n次CreateInstance调用,需要至少n次StartInstance调用,而更换使用RunInstances接口后,由于支持批量创建,只需要一次接口调用即可。

CreateInstance接口创建的实例由于不去启动,所以创建过程中也是不会直接分配公网IP的(当然我们的最佳实践也不建议每台使用的实例都使用公网IP进行管理--可以使用VPC和跳板机的方式进行网络管理),如果有公网分配的需求,那么使用RunInstances接口就再方便不过了,接口的原子操作中包含了实例的公网IP分配和实例启动过程。创建成功的机器会带有公网IP,可以直接登录运维。

弹性能力的提升

其次就是创建参数中的差别,我们知道ECS的收费模式有包年包月和按量收费两种,RunInstances接口天然支持了两种收费模式(InstanceChargeType参数),同时一次请求的创建量从CreateInstance支持的单一实例创建提高支持到一次请求可以创建[1, 100]个实例(Amount参数),同时为了方便实例的批量管理,批量创建出来的实例也可以设定一套顺序的实例name(UniqueSuffix参数),所以使用RunInstances接口带来的不仅是调用方式的提升,而且更是基础设施平台的弹性能力和运维效率提升。

提到批量创建,可能会有“直接的批量创建和循环一下创建批量不是一样的”问题,其实这两种操作(CreateInstance创建多次和RunInstances创建一次)是完全不同的,单个实例的创建封装为批量操作实际是将整个操作的原子性交给了自己,就会存在创建一半以后创建失败无法处理的情况。而一次创建多个实例是将原子操作交给接口,要么全部创建成功,要么请求会直接失败,如果有比如库存不够创建需求等情况,接口会直接返回失败,可以提前知道整批实例的创建情况,也可以提早进行部署架构的调整(可用区的调整等)。同时,对于实例状态的保证,RunInstances接口会不停重试启动实例,直到启动成功或达到重试上限次数,充分保证创建出的实例均为Running状态。

对其他特性的支持,得益于RunInstances的批量创建,可以很好地支持实例启动模板功能 https://help.aliyun.com/document_detail/73916.html , 这个功能允许创建一套自定义的实例Spec(规格、网络等特性)描述,并依托RunInstances的批量创建,可以秒级扩容出一组符合定义的实例。

接口对比图

最后,放上RunInstances接口定义: https://help.aliyun.com/document_detail/63440.html , 并附上简单版本接口对比

RunInstances CreateInstance
一次请求创建量 [1, 100] 1
创建稳定终态 Running Stopped
公网IP分配模式 可以接口直接分配 不分配,需要使用AllocatePublicIpAddress接口分配
支持的创建收费类型 包年包月和按量 按量
LaunchTemplate支持

代码示例见ecs购买页面( https://ecs-buy.aliyun.com/wizard/ ),选择完参数后确认订单页的“生成Open API最佳实践脚本”。

相关实践学习
2分钟自动化部署人生模拟器
本场景将带你借助云效流水线Flow实现人生模拟器小游戏的自动化部署
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
12天前
|
弹性计算 监控 负载均衡
|
29天前
|
弹性计算 网络安全
阿里云国际OpenAPI多接口快速管理ECS服务器教程
阿里云国际OpenAPI多接口快速管理ECS服务器教程
|
19天前
|
弹性计算 双11 开发者
阿里云ECS“99套餐”再升级!双11一站式满足全年算力需求
11月1日,阿里云弹性计算ECS双11活动全面开启,在延续火爆的云服务器“99套餐”外,CPU、GPU及容器等算力产品均迎来了全年最低价。同时,阿里云全新推出简捷版控制台ECS Lite及专属宝塔面板,大幅降低企业和开发者使用ECS云服务器门槛。
157127 23
|
9天前
|
存储 缓存 安全
阿里云服务器内存型r7、r8a、r8y、r8i实例区别及选择参考
随着阿里云2024年金秋云创季的开始,目前在阿里云的活动中,属于内存型实例规格的云服务器有内存型r7、内存型r8a、内存型r8y和内存型r8i这几个实例规格,相比于活动内的经济型e和通用算力型u1等实例规格来说,这些实例规格等性能更强,虽然这几个实例规格的云服务器通常处理器与内存的配比为都是1:8,但是他们在处理器、存储、网络、安全等方面等性能并不是一样的,所以他们的适用场景也有着不同。本文为大家介绍内存型r7、r8a、r8y、r8i实例的性能、适用场景的区别以及选择参考。
|
12天前
|
机器学习/深度学习 弹性计算 编解码
阿里云服务器c7/c8a/c8y/c8i/g7/g8a/g8y/g8i/r7/r8a/r8y/r8i实例区别及选择参考
在阿里云目前的活动中,除了特价的轻量应用服务器和经济型e及通用算力型u1实例之外,属于计算型实例的实例有计算型c7/c8a/c8y/c8i,属于通用型实例的有通用型g7/g8a/g8y/g8i,属于内存型实例的有内存型r7/r8a/r8y/r8i。本文将详细介绍阿里云服务器中的c7、c8a、c8y、c8i、g7、g8a、g8y、g8i、r7、r8a、r8y、r8i等实例规格的性能、适用场景及选择参考,帮助用户更好地选择合适的云服务器实例。
|
14天前
|
人工智能 安全 Linux
|
15天前
|
存储 机器学习/深度学习 编解码
阿里云服务器计算型c7、c8a、c8y、c8i实例性能、适用场景区别及选择参考
随着阿里云2024年金秋云创季的开始,目前在阿里云的活动中,属于计算型实例规格的云服务器有计算型c7、计算型c8a、计算型c8y和计算型c8i这几个实例规格,相比于活动内的经济型e和通用算力型u1等实例规格来说,这些实例规格等性能更强,虽然这几个实例规格的云服务器通常处理器与内存的配比为都是1:2,但是他们在处理器、存储、网络、安全等方面等性能并不是一样的,所以他们的适用场景也有着不同。本文为大家介绍计算型c7、c8a、c8y、c8i实例的性能、适用场景的区别以及选择参考。
|
14天前
|
存储 人工智能 安全
阿里云服务器通用型g7、g8a、g8y、g8i实例区别及选择指南
目前在阿里云的活动中,属于通用型实例规格的云服务器有通用型g7、通用型g8a、通用型g8y和通用型g8i这几个实例规格,相比于活动内的经济型e和通用算力型u1等实例规格来说,这些实例规格等性能更强,虽然这几个实例规格的云服务器通常处理器与内存的配比为都是1:4,但是他们在处理器、存储、网络、安全等方面等性能并不是一样的,所以他们的适用场景也有着不同。本文为大家介绍通用型g7、g8a、g8y、g8i实例的性能、适用场景的区别以及选择参考。
|
19天前
|
弹性计算 大数据 双11
阿里云ECS“99套餐”再升级!双11一站式满足全年算力需求
弹性计算双11爆款清单来袭,感恩回馈好礼,优惠惊喜不断!
|
22天前
|
存储 机器学习/深度学习 编解码
阿里云服务器计算型c7、计算型c8y、计算型c8i实例性能对比与选择参考
目前阿里云在售的云服务器中,主要包含了第6代、第7代、第8代实例规格的云服务器产品,从类别上来说,又分为计算型(c系列)、通用型(g系列)、内存型(r/re系列)、通用算力型(U实例)、大数据型(d系列)、本地SSD型(i系列)、高主频型(hf系列)等不同种类的云服务器实例规格,而在阿里云目前的活动中,计算型(c系列)主要计算型c7、计算型c8y和计算型c8i实例可选,有的新手用户并不清楚这三个计算型实例之间的差别,本文对这三个计算型实例的实例规格、CPU(核)、内存(G)、计算、存储、内存等方面为大家做个对比,让大家了解一下他们之间的不同,以供参考选择。