VMware Integrated OpenStack 包括可用于管理租户虚拟数据中心的 vAPI。

如果您已登录到 OpenStack 管理服务器,还可以使用 Data Center Command-Line Interface (DCLI) 或 viocli 实用程序管理租户虚拟数据中心。

在使用 vAPI 之前,必须先使用 vCenter Server 实例的管理员凭据对 vAPI 端点进行身份验证。

可以使用任何 HTTPS 客户端将请求发送到 vAPI 端点。本文使用 cURL 作为示例。

创建租户虚拟数据中心

curl -k POST -u vcserver-admin -H "Content-Type: application/json" 
   https://public-or-private-vip:9449/rest/vio/tenant/vdc 
   -d '{
      "spec":{
         "compute":"compute-node",
         "display_name":"vdc-name",
         "project_id":"project-uuid",
         "cpu_limit":max-cpu-mhz,
         "cpu_reserve":min-cpu-mhz,
         "mem_limit":max-memory-mb,
         "mem_reserve":min-memory-mb
      }
   }'

cpu_limitcpu_reservemem_limitmem_reserve 为可选参数。

将以 JSON 格式返回新租户虚拟数据中心的 ID。

等效的 DCLI 命令如下所示:

com vmware vio tenant vdc create --compute compute-node --display-name vdc-name --project-id project-uuid [--cpu-limit max-cpu-mhz] [--cpu-reserve min-cpu-mhz] [--mem-limit max-memory-mb] [--mem-reserve min-memory-mb]

更新租户虚拟数据中心

curl -k -X PATCH -u vcserver-admin -H "Content-Type: application/json" 
   https://public-or-private-vip:9449/rest/vio/tenant/vdc/tenant-vdc-id
   -d '{
      "spec":{
         "compute":"compute01"
         "display_name":"vdc-name",
         "cpu_limit":max-cpu-mhz,
         "cpu_reserve":min-cpu-mhz,
         "mem_limit":max-memory-mb,
         "mem_reserve":min-memory-mb
      }
   }'

cpu_limitcpu_reservemem_limitmem_reserve 为可选参数。

等效的 DCLI 命令如下所示:

com vmware vio tenant vdc update --compute compute-node --display-name vdc-name --tvdc-id tenant-vdc-id [--cpu-limit max-cpu-mhz] [--cpu-reserve min-cpu-mhz] [--mem-limit max-memory-mb] [--mem-reserve min-memory-mb]

列出所有租户虚拟数据中心

curl -ku vcserver-admin https://public-or-private-vip:9449/rest/vio/tenant/vdc

将以 JSON 格式返回信息。

等效的 DCLI 命令如下所示:

com vmware vio tenant vdc list

显示有关租户虚拟数据中心的信息

curl -ku vcserver-admin https://public-or-private-vip:9449/rest/vio/tenant/vdc/tenant-vdc-id

将以 JSON 格式返回租户虚拟数据中心的状态、提供商 ID、显示名称和配额。

等效的 DCLI 命令如下所示:

com vmware vio tenant vdc get --tvdc-id tenant-vdc-id

删除租户虚拟数据中心

curl -k POST -u vcserver-admin -H "Content-Type: application/json" 
   https://public-or-private-vip:9449/rest/vio/tenant/vdc/tenant-vdc-id?action=delete-tvdc
   -d '{
      "spec":{
         "compute":"compute-node"
      }
   }'

compute 为可选参数。如果指定 compute,将仅从指定的计算节点删除租户虚拟数据中心。如果未指定 compute,将从所有计算节点删除租户虚拟数据中心。

等效的 DCLI 命令如下所示:

com vmware vio tenant vdc deletetvdc --tvdc-id tenant-vdc-id [--compute compute-node]