华为云CLI-VPC.md 8.2 KB

华为云CLI VPC

写在前面

本实验未指明的信息均是在华为云CLI的默认配置中调用。

API概览

虚拟私有云所提供的接口分为VPC接口与OpenStack原生接口。

通过配合使用VPC接口和OpenStack原生接口,您可以完整的使用虚拟私有云的所有功能。同一功能既有原生OpenStack接口,还有VPC接口时,建议您优先使用VPC接口。

VPC接口说明

类型 说明
VPC VPC的创建、查询、更新、删除等接口。
子网 子网的创建、查询、更新、删除等接口。
配额 配额查询接口。
私有IP 私有IP的申请、查询、删除等接口。
安全组 安全组创建、查询、删除等接口。安全组规则创建、查询、删除等接口。
端口 端口创建、查询、更新、删除等接口。
对等连接 对等连接查询、创建、更新、删除等接口。接受、拒绝对等连接请求接口。
VPC路由 VPC路由查询、创建、删除等接口。
路由表 路由表查询、创建、删除等接口。
标签管理 VPC资源标签的创建、查询、删除等接口。子网资源标签的创建、查询、删除等接口。该类型接口目前在“华北-北京一”“华北-北京四”、“华东-上海一”、“华东-上海二”、“西南-贵阳一”“华南-广州”、“中国-香港”区域开放。
查询网络IP使用情况 查询一个指定网络中的IP地址使用情况,包括网络中的IP总数以及已用IP总数。

OpenStack原生接口说明

类型 说明
API版本信息 当前API所有可用版本的查询、分页查询。
端口 端口的查询、创建、更新、删除等接口。
网络 网络的查询、创建、更新、删除等接口。
子网 子网的查询、创建、更新、删除等接口。
路由器 路由器的查询、创建、更新、删除等接口。
网络ACL 网络ACL的创建、更新、删除等接口。网络ACL规则的创建、更新、删除、查询等接口。网络ACL策略的创建、更新、删除、查询等接口。
安全组 安全组创建、查询、删除、更新等接口。安全组规则创建、查询、删除等接口。

VPC

查询VPC

hcloud VPC ListVpcs命令可以用来查询VPC列表。

现在华为云有V2和V3两种API版本,默认调用V3进行查询,可以通过指定API版本来选择。

hcloud VPC ListVpcs
命令中ListVpcs有多个版本,默认使用该API最新版本v3.若需指定其他版本,请将API名修改为"ListVpcs/版本号"
{
  "request_id": "aabb48b0901d934435c4859408afd2e0",
  "vpcs": [
    {
      "id": "b517649f-9465-4985-acbc-4472e1b36608",
      "name": "vpc-default",
      "description": "vpc-default",
      "cidr": "192.168.0.0/16",
      "extend_cidrs": [],
      "status": "ACTIVE",
      "project_id": "06c9a7702d00254f2f84c00e8a1a5bf5",
      "enterprise_project_id": "0",
      "tags": [],
      "created_at": "2022-03-11T01:21:00Z",
      "updated_at": "2022-03-11T01:21:01Z",
      "cloud_resources": [
        {
          "resource_type": "routetable",
          "resource_count": 1
        },
        {
          "resource_type": "virsubnet",
          "resource_count": 1
        }
      ]
    }
  ],
  "page_info": {
    "previous_marker": "b517649f-9465-4985-acbc-4472e1b36608",
    "current_count": 1
  }
}
hcloud VPC ListVpcs/v2 
{
  "vpcs": [
    {
      "id": "b517649f-9465-4985-acbc-4472e1b36608",
      "name": "vpc-default",
      "description": "vpc-default",
      "cidr": "192.168.0.0/16",
      "status": "OK",
      "routes": [],
      "enterprise_project_id": "0"
    }
  ]
}

参数解析

参数 说明
id VPC的ID
name VPC的名字
description VPC的描述信息
cidr VPC的网段信息
status VPC的状态
routes VPC的路由表

创建VPC

通过查询可以得知一个VPC需要的最基本的参数有:name,cidr。可以配合以下命令来创建VPC:

hcloud VPC CreateVpc --help

HCloud CLI(Huawei Cloud CLI) Version 3.1.10 Copyright(C) 2020-2022 www.huaweicloud.com

Service:
  VPC

Description:
  创建虚拟私有云。

Method:
  POST

Params:
  --cli-region
    required	string	当前可调用的区域.若命令中未输入,将使用当前配置项中的cli-region
  --project_id
    required	string	path	项目ID。若命令中未输入,将根据认证信息获取指定区域的父级项目ID,或使用当前配置项中的cli-project-id
  --vpc.cidr
    optional	string	body	功能说明:虚拟私有云下可用子网的范围。
    取值范围:
    - 10.0.0.0/8 ~ 10.255.255.240/28
    - 172.16.0.0/12 ~ 172.31.255.240/28
    - 192.168.0.0/16 ~ 192.168.255.240/28
    约束:必须是ipv4 cidr格式,例如:192.168.0.0/16
  --vpc.description
    optional	string	body	功能说明:虚拟私有云的描述。
    取值范围:0-255个字符,不能包含“<”和“>”。
  --vpc.enterprise_project_id
    optional	string	body	功能说明:企业项目ID。创建虚拟私有云时,给虚拟私有云绑定企业项目ID。
    取值范围:最大长度36字节,带“-”连字符的UUID格式,或者是字符串“0”。“0”表示默认企业项目。
    默认值:"0"
  --vpc.name
    optional	string	body	功能说明:虚拟私有云名称。
    取值范围:0-64个字符,支持数字、字母、中文、_(下划线)、-(中划线)、.(点)
    约束:如果名称不为空,则同一个租户下的名称不能重复

示例:

根据上面的信息来创建一个名为vpc-test,CIDR为192.168.0.0/24的VPC。

hcloud VPC CreateVpc --vpc.name=vpc-test --vpc.cidr=192.168.0.0/24
{
  "vpc": {
    "id": "12fb3a3a-5e55-4fb4-a589-862d09ef59ce",
    "name": "vpc-test",
    "description": "",
    "cidr": "192.168.0.0/24",
    "status": "CREATING",
    "routes": [],
    "enterprise_project_id": "0"
  }
}

2022.3.15-华为云CLI-创建VPC-vps-test

删除VPC

使用cloud VPC DeleteVpc命令删除VPC。

hcloud VPC DeleteVpc --vpc_id=12fb3a3a-5e55-4fb4-a589-862d09ef59ce

子网

安全组

对等连接

VPC路由

路由表