CLI集成示例

阿里云命令行工具(Alibaba Cloud Command Line Interface)是基于OpenAPI建立的通用命令行工具,您可以借助阿里云CLI实现与内网DNS解析(PrivateZone)进行交互,在Shell工具中管理您的内网DNS解析(PrivateZone)资源。本文将为您介绍使用阿里云CLI调用内网DNS解析(PrivateZone)的操作步骤和示例。

背景信息

阅读本文前,若您还不了解阿里云CLI,请参见什么是阿里云CLI

安装阿里云CLI

使用阿里云CLI前,您需要先安装阿里云CLI。阿里云CLI为用户提供了Windows、LinuxmacOS三种操作系统下的安装服务,请根据您使用设备的操作系统选择对应的安装服务。

您也可使用阿里云提供的云命令行Cloud Shell调试阿里云CLI命令。关于云命令行的更多信息,请参见什么是云命令行

配置阿里云CLI

重要

阿里云主账号拥有所有产品API的管理和访问权限,风险很高。强烈建议您创建并使用RAM用户进行API访问或日常运维。RAM用户需授予管理内网DNS解析(PrivateZone)的权限AliyunPvtzFullAccess

使用阿里云CLI之前,您需要在阿里云CLI中配置身份凭证、地域ID等信息。阿里云CLI支持多种身份凭证,详情请参见身份凭证类型。本文操作以AK类型凭证为例,具体操作步骤如下:

  1. 您需要创建一个RAM用户并根据需要授予管理对应产品的权限。具体操作,请参见创建RAM用户RAM用户授权

  2. 创建RAM用户并授权后,您需要创建RAM用户对应的AccessKey,并记录AccessKey IDAccessKey Secret,以便后续配置身份凭证使用。具体操作,请参见创建AccessKey

  3. 配置凭证需要设置地域ID,阿里云CLI将使用您指定的地域发起API调用。可用地域请参见服务接入点

    说明

    使用阿里云CLI过程中您可使用--region选项指定地域发起命令调用,该选项在使用时将忽略默认身份凭证配置及环境变量设置中的地域信息。详情请参见API命令可用选项

  4. 使用RAM用户的AccessKey配置AK类型凭证,配置文件命名为AkProfile。具体操作,请参见配置示例

生成CLI命令示例

  1. 登录内网DNS解析(PrivateZone)调试列表

  2. API调试界面左侧搜索框中可搜索您需要使用的API。在参数配置中根据API文档信息填写参数,单击参数配置右侧的CLI示例页签即可生成携带参数的命令示例。

    image

    • 单击运行命令image按钮,可唤出云命令行快速完成命令调试。

    • 单击复制image按钮,将CLI示例复制到剪贴板中,可粘贴至本地Shell工具中运行。

      • 复制CLI示例到本地Shell工具中进行调试时请注意参数格式。关于阿里云CLI命令参数使用格式的详细信息,请参见参数格式说明

      • OpenAPI门户生成示例中会默认添加--region选项,复制命令到本地调用时阿里云CLI将忽略默认身份凭证配置及环境变量设置中的地域信息,优先使用指定的地域调用命令,您可根据需要删除或保留。

使用CLI内网DNS解析(PrivateZone)

命令结构

阿里云CLI的通用命令行结构如下。更多详情,请参见命令结构

aliyun <command> <subcommand> [options and parameters]

常用命令选项

在阿里云CLI中,您可根据需要使用命令行选项,用来修改命令的默认行为或为命令提供额外功能。常用命令行选项如下:

  • --profile<profileName>:使用--profile选项并指定有效配置名称profileName后,阿里云CLI将忽略默认身份凭证配置及环境变量设置,优先使用指定的配置进行命令调用。

  • --help:在需要获取帮助的命令层级处键入--help选项,即可获取该命令的帮助信息。更多详情,请参见获取帮助信息

更多详细信息,请参见API命令可用选项

调用示例

说明

该示例以在Windows的命令提示符中调用为例,在其他操作系统中,运行命令的参数格式会有所不同,请注意参数格式。关于阿里云CLI命令参数使用格式的详细信息,请参见参数格式说明

  • 示例一:以下示例将为您展示如何使用阿里云CLI调用内网DNS解析(PrivateZone)的AddZone接口,创建一个域名Zone,名称为zone_test,内置权威区为快速区。

    1. 执行命令。

      aliyun pvtz AddZone --region cn-qingdao --ZoneName zone_test --DnsGroup FAST_ZONE
    2. 输出结果。

      {
              "RequestId": "139C297E-8E9C-5E06-8758-CD4D6A4C89AF",
              "Success": true,
              "ZoneId": "79e6d8c6974042e9c9a4a988130****",
              "ZoneName": "zone_test"
      }
  • 示例二:以下示例将为您展示如何使用阿里云CLI调用内网DNS解析(PrivateZone)的AddZoneRecord接口,为域名Zone(zone_test)添加解析记录。

    1. 执行命令。

      aliyun pvtz AddZoneRecord --region cn-qingdao --ZoneId 79e6d8c6974042e9c9a4a9881306**** --Rr www --Type A --Value '192.168.XX.XX'
    2. 输出结果。

      {
              "RecordId": 440563****,
              "RequestId": "61DD3A77-9E25-5E86-A314-3E2B741BE44A",
              "Success": true
      }
  • 示例三:以下示例将为您展示如何使用阿里云CLI调用内网DNS解析(PrivateZone)的BindZoneVpc接口,为域名Zone(zone_test)设置VPC生效范围。

    1. 执行命令。

      aliyun pvtz BindZoneVpc --region cn-qingdao --ZoneId 79e6d8c6974042e9c9a4a9881306**** --Vpcs.1.VpcId 'vpc-0jl96awrjt75ezglc****'
    2. 输出结果。

      {
              "RequestId": "9D48AF1B-A5DE-50B8-9882-481C8C5010F8"
      }
说明

如果调用内网DNS解析(PrivateZone) API后返回错误,您需要根据返回的错误码提示检查传入的请求参数及其取值是否正确。

您也可以记录下调用返回的RequestIDSDK报错信息,通过阿里云OpenAPI诊断平台进行自助诊断。