云服务器ECS资源查询的正确姿势

基础概念

1、地域可用区概念

  • 地域是指物理的数据中心.
  • 可用区是指在同一地域内,电力和网络互相独立的物理区域。官网详解

2、产品概念:产品基本形态由四部分组成,<计费方式, 规格与IO优化,网络类型, 磁盘类型>

  • (1) 计费方式:目前主要有 包年/包月/包周、按量付费、竞价实例 三种。
  • (2) 规格与IO优化:ECS 实例规格定义了实例的 CPU 和内存的配置(包括 CPU 型号、主频等)这两个基本属性,目前新售卖的规格,都是默认IO优化
  • (3) 网络类型: 目前主要分为经典网路与专有网络,网络详解
  • (4) 磁盘类型: 磁盘主要分为云盘与本地盘。云盘详解

资源定位步骤

1、步骤概览

步骤 对应接口 对应参数 目标数据
1、查询地域 DescribeRegions N/A 地域名称(RegionId)
2、查询可用区 DescribeZones 地域名称 可用区名称(ZoneId)
3、确定付费类型 DescribeZones 付费类型/竞价策略 可用区资源组合
4、查询资源组合 DescribeZones 地域名称/付费类型 可用区资源组合

2、步骤注释

注1、实例的付费方式。取值范围:
  • PrePaid:预付费,即包年包月
  • PostPaid:后付费,即按量付费。
  • 默认值:PostPaid
注2、竞价策略。后付费实例的竞价策略。

当 InstanceChargeType 为PostPaid 时为生效,
取值范围:

  • NoSpot:正常按量付费实例;
  • SpotWithPriceLimit:设置上限价格的竞价实例;
  • SpotAsPriceGo:系统自动出价,最高按量付费价格。
  • 默认值:NoSpot
注3、可用区资源组合

AvailableResourcesType 中的详细信息组合

名称 类型 描述
IoOptimized String 是否 IO 优化
NetworkTypes String 支持的网络类型
InstanceGenerations Array 支持的实例系列
InstanceTypeFamilies Array 支持的实例规格族
SystemDiskCategories Array 支持创建的系统盘类型组成的数组
DataDiskCategories Array 支持创建的数据盘类型组成的数组
InstanceTypes Array 支持创建的实例规格组成的数组

3、案例与步骤

背景 : 开发小王,需要调用openAPI购买2台阿里云服务器ECS。具体需求是:杭州地域、双可用区容灾,包年包月,专有网络,企业级独享实例ecs.sn1.medium(2核心4G内存)实例。
问题 1、是否可以购买?
问题 2、哪个可用区满足要求?

1、确定地域的regionId;

首先,调用步骤1的DescribeRegions 接口,拿到杭州的regionID:

请求示例

https://ecs.aliyuncs.com/?Action=DescribeRegions
&<公共请求参数>

返回示例

<DescribeRegionsResponse>
    <RequestId>611CB80C-B6A9-43DB-9E38-0B0AC3D9B58F</RequestId>
    <Regions>
        <Region>
            <RegionId>cn-hangzhou </RegionId>
        </Region>
        <Region>
            <RegionId>cn-qingdao</RegionId>
        </Region>
    </Regions>
</DescribeRegionsResponse>
2、确定付费类型;

根据注释及DescribeZones参数,确定包年包月参数

InstanceChargeType = PrePaid
3、查询可见可用区;

根据步骤1、2 确定了reigonId 及InstanceChargeType,调用DescribeZones查询可用区

请求示例

https://ecs.aliyuncs.com/?Action=DescribeZones
&RegionId=cn-hangzhou
&InstanceChargeType=PrePaid
&<公共请求参数>

返回示例

{
    "RequestId":"ED962F8E-BAAE-4569-857C-F7B8932F1CF3",
    "Zones":{
        "Zone":[
            {
                "AvailableResourceCreation":Object{...},
                "AvailableResources":Object{...},
                "AvailableInstanceTypes":Object{...},
                "ZoneId":"cn-hangzhou-f",
                "AvailableVolumeCategories":Object{...},
                "LocalName":"华东 1 可用区 F",
                "AvailableDiskCategories":Object{...}
            },
            Object{...},
            Object{...},
            Object{...},
            Object{...}
        ]
    }
}

拿到zoneId列表 cn-hangzhou-b/cn-hangzhou-c/cn-hangzhou-e/cn-hangzhou-f

4、查询产品;

根据步骤3的返回实例,细致化分析可用区f内资源情况

1、可创建产品类别

AvailableResourceCreation 中代表可用区内可以创建的

  • 虚拟交换机:VSwitch
  • 实例:Instance
  • 独立云盘:Disk
    以上三种资源
返回示例

{
                "AvailableResourceCreation":{
                    "ResourceTypes":[
                        "VSwitch",
                        "Instance",
                        "Disk"
                    ]
                },
2、可创建资源组合

确定了可用区可以创建实例,接下来分析可用区实例资源组合

返回示例

          "AvailableResources":{
                    "ResourcesInfo":[
                        {
                            "IoOptimized":true,
                            "SystemDiskCategories":{
                                "supportedSystemDiskCategory":[
                                    "cloud_ssd",
                                    "cloud_efficiency"
                                ]
                            },
                            "InstanceTypes":{
                                "supportedInstanceType":[
                                    "ecs.sn1.medium",
                                    "...",
                                ]
                            },
                            "InstanceTypeFamilies":{
                                "supportedInstanceTypeFamily":[
                                    "ecs.sn1",
                                    "..."
                                ]
                            },
                            "DataDiskCategories":{
                                "supportedDataDiskCategory":[
                                    "cloud_ssd",
                                    "cloud_efficiency"
                                ]
                            },
                            "InstanceGenerations":{
                                "supportedInstanceGeneration":[
                                    "ecs-3",
                                    "..."
                                ]
                            },
                            "NetworkTypes":{
                                "supportedNetworkCategory":[
                                    "vpc"
                                ]
                            }
                        },
                        Object{...}
                    ]
                }

AvailableResources 中代表可用区内可以创建的资源组合

  • 规格:InstanceTypes,寻找 ecs.sn1.medium
  • IO优化:"IoOptimized", 寻找 true,
  • 磁盘类型:SystemDiskCategories/DataDiskCategories, 寻找cloud_efficiency
  • 网络类型:NetworkTypes, 寻找vpc

确定资源可用区f AvailableResources组合中,有且满足小王要求的产品。
按照同样的步骤,寻找到第二个可用区 b

3、创建实例;
  • 1、创建虚拟交换机:确定了可用区后,就可以在对应对应可用区创建虚拟交换机。
  • 2、创建对应产品:确定传入对应的产品组合:
  • 地域:RegionId =cn-hangzhou
  • 可用区:ZoneId =cn-hangzhou-f
  • 虚拟交换机:VSwitchId =id1/id2
  • io优化:IoOptimized =optimized
  • 规格:InstanceType =ecs.sn1.medium
  • 磁盘:SystemDisk.Category=cloud_efficiency

总结

工欲善其事必先利其器,理解并使用云服务器ECS资源查询的正确姿势,可以大大提升OpenAPI用户创建ECS的效率,希望大家多多使用,多多支持。

时间: 2024-12-09 15:36:56

云服务器ECS资源查询的正确姿势的相关文章

云服务器ECS安全组实践(一)

应用上云除了对资源生命周期管理和应用交付是一个转变,更重要是思维方式的转变.本篇文章就简单介绍下上云的一个重要概念安全组(Security Group).本文是安全组系列的第一篇,主要介绍安全组的基本概念.约束和如何配置入网规则. 安全组的基本概念和约束 安全组在云端提供类似虚拟防火墙功能,用于设置单个或多个 ECS 实例的网络访问控制,它是重要的安全隔离手段.在创建 ECS 实例时,必须选择一个安全组.您还可以添加安全组规则,对该安全组下的所有 ECS 实例的出方向和入方向进行网络控制. 安全

云服务器 ECS 安全:如何提高ECS实例的安全性

如何提高ECS实例的安全性 云服务器 ECS 实例是一个虚拟的计算环境,包含了 CPU.内存.操作系统.磁盘.带宽等最基础的服务器组件,是 ECS 提供给每个用户的操作实体. 我们基本可以理解为一个实例就等同于一台虚拟机,那么我们在本地维护的虚拟机一般会做虚拟机实例级别的安全防护,以防止虚拟机被攻击和入侵等.同样的,云上的ECS实例也需要做安全性防护. ECS实例放置在云上,除了置身于阿里云自身的安全平台外,用户也需要根据实际的需求进一步定制化安全,所以说ECS的安全是阿里云和用户共同构建的.如

使用OpenApi弹性释放和设置云服务器ECS释放

云服务器ECS的一个重要特性就是按需创建资源.您可以在业务高峰期按需弹性的自定义规则进行资源创建,在完成业务计算的时候释放资源.本篇将提供几个Tips帮助您更加容易和自动化的完成云服务器的释放和弹性设置. 本文将涉及到几个重要的功能和相关API: 释放按量付费的云服务器 设置按量付费实例的自动释放时间 停止服务器 查询实例列表 释放后实例所使用的物理资源都被回收,包括磁盘及快照,相关数据全部丢失且永久不可恢复.如果您还想继续使用相关的手,建议您释放云服务器之前一定要对磁盘数据做快照,这样您可以下

使用OpenApi弹性管理云服务器ECS

阿里云的云服务器ECS除了提供控制台来进行日常的管理和资源创建,还提供了OpenApi来进行资源的管理和定制开发.通过OpenApi您可以更加灵活的管理和配置云服务器. 阿里云提供了SDK来包装OpenApi,可以让您将云服务器的管理集成到您的已有系统中.本文以Python的开发来说明OpenApi如何来管理云服务器,即便您没有Python的开发经验,通过本文也可以轻松的0基础入门进行云服务的开发.其它语言的开发和管理您可以通过留言沟通. 安装ECS Python SDK 首先确保您已经具备Py

云服务器 ECS 使用OpenAPI管理ECS:使用OpenAPI弹性释放ECS实例

使用OpenAPI弹性释放ECS实例 云服务器 ECS 的一个重要特性就是按需创建资源.您可以在业务高峰期按需弹性地进行自定义资源创建,完成业务计算时释放资源.本篇将提供若干 Tips 帮助您更加便捷地完成云服务器的释放以及弹性设置. 本文将涉及到几个重要功能和相关API: 释放按量付费的云服务器 设置按量付费实例的自动释放时间 停止服务器 查询实例列表 释放后,实例所使用的物理资源将被回收,包括磁盘及快照,相关数据将全部丢失且永久不可恢复.如果您还想继续使用相关的数据,建议您释放云服务器之前一

云服务器 ECS 使用OpenAPI管理ECS:使用OpenAPI弹性管理ECS实例

使用OpenAPI弹性管理ECS实例 您除了可以通过 ECS 管理控制台 创建或管理 ECS 实例外,您也能通过 OpenAPI 管理或定制开发 ECS 实例. 阿里云提供了 SDK 来包装 OpenAPI,将云服务器 ECS 的管理集成到已有系统中.本文基于 Python 的开发来说明如何通过 OpenAPI 管理 ECS 实例.如果您没有 Python 开发经验,也能通过本文完成云服务的开发. 获取 RAM 子账号 AK 密钥 使用 OpenAPI 管理 ECS 实例,您需要能访问 ECS

云服务器ECS,你真的懂吗?

云服务器ECS是阿里云最基础的弹性计算服务,总计规划了十余种规格族,几十种规格.用户在面对阿里云众多的产品种类,颇有种挑花了眼不知如何入手的感觉,本文就对阿里云最基础的云服务器ECS进行一下详细的介绍. 立即购买>>  了解详情>> 服务器ECS(Elastic Compute Service:弹性计算服务,对应亚马逊AWS的产品叫EC2,Elastic Compute Cloud)本质上是向用户提供的虚拟机资源,背后核心技术采用KVM.虽然,不少企业客户依然在用桌面虚拟化方面依然

云服务器 ECS 建站教程:PostgreSQL 本地Slave搭建步骤

PostgreSQL 本地Slave搭建步骤 PostgreSQL被业界誉为"最先进的开源数据库",目前阿里云数据库PostgreSQL版具有NoSQL兼容,高效查询,插件化管理,安全稳定的特性.本文档介绍使用阿里云ECS搭建PostgreSQL主从架构的操作步骤. 适用对象 适用于熟悉ECS,熟悉Linux系统,熟悉PostgreSQL的阿里云用户. 基本流程 使用阿里云ECS搭建PostgreSQL主从架构的操作步骤如下: 选购ECS 实例 主节点安装配置 从节点安装配置 检测验证

云服务器 ECS 学习笔记

云服务器 ECS 云服务器 Elastic Compute Service(ECS)是阿里云提供的一种基础云计算服务 阿里云专有网络: 在阿里云专有网络之上,可以产生更多的业务可能性. 阿里云专有网络更加稳定和安全. 纵向的弹性,即单个服务器的配置变更 对于阿里云的弹性而言,是计算的弹性.存储的弹性.网络的弹性以及您对于业务架构重新规划的弹性 实例规格族,根据业务场景可分为: 面向通用计算场景的实例规格族 面向内存优化场景的实例规格族 面向计算优化场景的实例规格族 面向存储优化场景的实例规格族