如何通过内网调用API

更新时间:
复制 MD 格式

本文通过配置云解析PrivateZone,为伸缩组中无公网访问能力的专有网络VPC类型ECS实例提供了通过阿里云内网调用API的方案。

背景信息

由于弹性伸缩提供的接入地址(Endpoint)为公网服务地址,当伸缩组ECS实例没有分配公网带宽或者不存在公网IP地址时,无法使用阿里云CLI或者SDK等工具发起API请求。此时,您可以为伸缩组ECS实例所在地域下的专有网络VPC关联云解析PrivateZone,即可实现在阿里云内网调用API。

  • 此方案仅适用于伸缩组中专有网络VPC类型ECS实例所在的地域,不支持跨地域配置云解析PrivateZone。

  • 建议您在伸缩配置中使用已部署了阿里云CLI或者SDK的自定义镜像,避免伸缩组实例在无公网访问的条件下无法加载相关依赖。

  • 目前,支持云解析PrivateZone的弹性伸缩接入地址(Endpoint)如下表所示,请确保您使用的Endpoint在列举范围内。

    阿里云地域

    地域ID

    CNAME记录值

    公网接入地址(Endpoint)

    华北2(北京)

    cn-beijing

    popunify-vpc.cn-beijing.aliyuncs.com

    ess.aliyuncs.com

    华东1(杭州)

    cn-hangzhou

    popunify-vpc.cn-hangzhou.aliyuncs.com

    ess.aliyuncs.com

    华东2(上海)

    cn-shanghai

    popunify-vpc.cn-shanghai.aliyuncs.com

    ess.aliyuncs.com

    华南 1(深圳)

    cn-shenzhen

    popunify-vpc.cn-shenzhen.aliyuncs.com

    ess.aliyuncs.com

    中国(香港)

    cn-hongkong

    popunify-vpc.cn-hongkong.aliyuncs.com

    ess.aliyuncs.com

    新加坡

    ap-southeast-1

    popunify-vpc.ap-southeast-1.aliyuncs.com

    ess.aliyuncs.com

操作步骤

  1. 登录云解析控制台

  2. 在左侧导航栏,单击内网DNS解析(PrivateZone)

  3. 单击右上角的管理配置模式

  4. 用户域名页签下,单击添加域名(Zone)

  5. 添加内置权威域名(Zone)面板,完成以下设置后,单击确定

    • 内置权威域名(Zone):设置一个已支持云解析PrivateZone的云服务器ECS接入地址,如ess.cn-hangzhou.aliyuncs.com

    • 子域名递归解析代理:开启后,当DNS查询的域名以Zone名称为后缀,但是在Zone文件里未配置时,会以公网的权威解析为准。

      添加内置权威域名 (Zone) 面板中,填写内置权威域名 (Zone)(创建成功后无法更改)。在域名类型中选择内置权威加速区(推荐,直接应答解析请求,解析时延最低,记录变更实时生效)或内置权威普通区(解析应答结果会被缓存)。根据需要配置域名生效范围

  6. 找到已创建的PrivateZone,在操作列,单击解析记录

  7. 解析记录页签下,单击添加记录

  8. 添加记录面板中,完成以下设置后,单击确定

    • 记录类型:选择CNAME。

    • 主机记录:填写@可以解析@.example.com域名。

    • 记录值:设置为对应地域下的CNAME记录值。

    • TTL:生存时间,本文选择了1分钟

  9. 返回PrivateZone列表页面,找到已创建的PrivateZone,单击操作列的生效范围设置

  10. 选择与PrivateZone相同的地域,选中需要关联的专有网络VPC(即阿里云VPC内网),然后单击确定

    具体操作,请参见设置方法

    说明

    请选择伸缩组内ECS实例所在的专有网络VPC。

执行结果

为专有网络VPC关联了云解析PrivateZone后,您可以通过远程登录伸缩组ECS实例,在ECS实例内部测试是否能访问对应地域的接入地址,具体操作,请参见通过VNC连接实例

下面以ess.cn-hangzhou.aliyuncs.com为例演示测试效果:

  • 使用ping功能测试数据包收发状况。

    ping ess.cn-hangzhou.aliyuncs.com
    [root@xxx          ~]# ping ess.cn-hangzhou.aliyuncs.com
    PING popunify-vpc-cn-hangzhou.aliyuncs.com.gds.alibadns.com (xxx) 56(84) bytes of data.
    64 bytes from xxx: icmp_seq=1 ttl=102 time=1.30 ms
    64 bytes from xxx: icmp_seq=2 ttl=102 time=1.34 ms
    64 bytes from xxx: icmp_seq=3 ttl=102 time=1.31 ms
    64 bytes from xxx: icmp_seq=4 ttl=102 time=1.33 ms
    64 bytes from xxx: icmp_seq=5 ttl=102 time=2.29 ms
    64 bytes from xxx: icmp_seq=6 ttl=102 time=1.30 ms
    64 bytes from xxx: icmp_seq=7 ttl=102 time=2.99 ms
    ^C
    --- popunify-vpc-cn-hangzhou.aliyuncs.com.gds.alibadns.com ping statistics ---
    7 packets transmitted, 7 received, 0% packet loss, time 6009ms
    rtt min/avg/max/mdev = 1.308/1.698/2.990/0.626 ms
  • 使用阿里云CLI调用DescribeRegions,并通过--endpoint字段修改接入地址。

    aliyun ess DescribeRegions --endpoint ess.cn-hangzhou.aliyuncs.com
    [root@                    'l]# aliyun ess DescribeRegions --endpoint ess.cn-hangzhou.aliyuncs.com
    {"RequestId":"1339AEF0-B414-4E06-B9B9-604B9E551BC2","Regions":{"Region":[{"ClassicUnavailable":false,"RegionId":"cn-hangzhou-tes
    x xxx","RegionEndpoint":"ess.aliyuncs.com","LocalName":"x x xxx","VpcUnavailable":false},{"ClassicUnavailable":false,"RegionId"
    :"cn-hangzhou-tes xxx","RegionEndpoint":"ess.aliyuncs.com","LocalName":"x x 2x","VpcUnavailable":false},{"ClassicUnavailable":
    false,"RegionId":"cn-hangzhou-test-300","RegionEndpoint":"ess.aliyuncs.com","LocalName":"x x 3x","VpcUnavailable":false},{"Clas
    sicUnavailable":false,"RegionId":"cn-qingdao","RegionEndpoint":"ess.aliyuncs.com","LocalName":"x x 1x","VpcUnavailable":false},{
    "ClassicUnavailable":false,"RegionId":"cn-beijing","RegionEndpoint":"ess.aliyuncs.com","LocalName":"x x 2","VpcUnavailable":fal
    se},{"ClassicUnavailable":false,"RegionId":"cn-zhangjiakou","RegionEndpoint":"ess.cn-zhangjiakou.aliyuncs.com","LocalName":"x x
    x3","VpcUnavailable":false},{"ClassicUnavailable":false,"RegionId":"cn-huhehaote","RegionEndpoint":"ess.cn-huhehaote.aliyuncs.co
    m","LocalName":"x x 5","VpcUnavailable":false},{"ClassicUnavailable":false,"RegionId":"cn-hangzhou","RegionEndpoint":"ess.aliyuncs.com","LocalName":"xx","VpcUnavailable":false}]}}