CLI集成示例

本文为您演示如何通过阿里云CLI创建一个云数据库 MongoDB 版副本集实例。

如果您还不了解阿里云CLI,请参见文档什么是阿里云CLI

资源架构

image.png

在指定地域创建一个VPC网络和一台交换机,然后创建一个MongoDB副本集实例。

安装CLI

  • 您如果想要在本地安装和配置CLI,请参见安装指南

  • 如果您不想安装CLI,可以使用阿里云提供的在线服务Cloud Shell,其中内置了CLI的运行环境。

配置权限

在本案例中,您需要创建专有网络(VPC)、交换机(vSwitch)和MongoDB实例。默认情况下CLI会直接使用当前登录控制台的用户凭证,要求当前用户必须具备以下权限:

  • AliyunVPCFullAccess:管理专有网络 VPC的权限。

  • AliyunMongoDBFullAccess:管理云数据库 MongoDB 版的权限。

生成CLI命令示例

  1. 登录OpenAPI门户

  2. 在页面上方,单击选择云产品,选择目标云产品。

  3. 在左侧导航栏中,单击调试

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

    • 单击运行命令运行命令.png按钮,可唤出云命令行Cloud Shell并在其中快速完成命令调试。

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

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

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

调用API

阿里云CLI中调用RPC API时,基本命令结构如下。

aliyun <product> <APIName> [--parameter1 value1 --parameter2 value2 ...]
  • product:需要调用的云产品code。例如MongoDB的产品codedds

  • APIName:需要调用的API。例如创建副本集实例需要使用CreateDBInstance接口。

  • --parameter:需要传入的请求参数。

创建VPC

CreateVpc接口的参数信息,请参见CreateVpc

示例如下:

aliyun vpc CreateVpc --RegionId cn-hangzhou

返回示例如下:

{
        "RequestId": "E8410523-E996-5345-9E4D-35D6C47A****",
        "ResourceGroupId": "rg-acfmz7u4zzr****",
        "RouteTableId": "vtb-bp1dcxc8j4jys18id****",
        "VRouterId": "vrt-bp1w2lsqfm9f7k2dy****",
        "VpcId": "vpc-bp191olzz22cgl073****"
}

创建vSwitch

CreateVSwitch接口的参数信息,请参见CreateVSwitch

示例如下:

aliyun vpc CreateVSwitch --ZoneId cn-hangzhou-i --CidrBlock 172.16.1.0/24 --VpcId vpc-bp191olzz22cgl073****

返回示例如下:

{
        "RequestId": "D3316995-CAB6-58A3-97E5-F1CBFE2E****",
        "VSwitchId": "vsw-bp10cm6ujv0na2vlp****"
}

创建MongoDB实例

CreateDBInstance接口的参数信息,请参见CreateDBInstance

示例如下:

aliyun dds CreateDBInstance --RegionId cn-hangzhou --ZoneId cn-hangzhou-i --EngineVersion 7.0 --DBInstanceClass mdb.shard.4x.large.d --DBInstanceStorage 20 --VpcId vpc-bp191olzz22cgl073**** --VSwitchId vsw-bp10cm6ujv0na2vlp****

返回示例如下:

{
        "DBInstanceId": "dds-bp1df136c811****",
        "OrderId": "23705179664****",
        "RequestId": "1336E68C-86A4-5355-A12A-D0A0C27A****"
}