
# 查询物理设备资源容量 - QueryCapacitiesOfPhysicalResources
查询计算资源池、存储资源池可用的资源容量。
- 计算资源池（构建资源池用到的物理计算集群）即包含：可分配总量（vCPU\\MEM）、已分配量（vCPU\\MEM）、剩余可用量（vCPU\\MEM）等资源容量数据。
- 存储资源池（构建资源池用到的物理存储集群）即包含：可分配总量（不同型号ssd/sas等存储服务器集群的资源容量，单位：TB）、已分配量、剩余可用量等资源容量数据。
#### 功能
查询物理设备资源容量。
| **SLA项**   | **定义**  |
|:---|:---|
| 请求成功率      | ≥99%    |
| 可用性        | Tier 2  |
| 数据一致性      | 强一致     |
| 吞吐量        | 60 次/分钟 |
| TP50请求时延   | 200 ms  |
| TP99.9请求时延 | 300 ms  |
   
#### 注意事项
无
#### 调用方法
GET
#### URI
/rest/dataapi/homs/open-api/v1/host-physical/capacity
**路径参数**
无
**查询参数**
无
#### 请求
- **请求header参数**
  
  | **参数**          | **是否必选**                                                                   | **类型** | **值域** | **说明**              |
  |:---|:---|:---|:---|:---|
  | X-APIG-Appcode  | 是                                                                          | string | 无      | 由SRE分配的AppCode。     |
  | x-auth-token    | 是                                                                          | string | 无      | 调用方APIG的IAM认证token。 |
  | x-hcso-domainid | 是（HCSO场景） 否（其他场景） | string | 无      | 接入的租户ID。            |
  | x-hcso-appcode  | 是                                                                          | string | 无      | 由SRE分配的AppCode      |
     
  

- **查询参数**
  
  | **参数**       | **是否必选** | **类型** | **值域**     | **说明**                          |
  |:---|:---|:---|:---|:---|
  | device_type  | 否        | string | *ECS/EVS*  | 设备类型：ECS-计算（物理计算），EVS-存储（物理存储）。 |
  | zone_type    | 否        | string | manage/pod | manage管理区，pod租户区。               |
  | begin_time   | 是        | int    | 无          | 查询开始时间（毫秒时间戳）。                  |
  | end_time     | 是        | int    | 无          | 查询结束时间（毫秒时间戳）。                  |
  | page_size    | 是        | int    | 0\~1000    | 页大小。                            |
  | offset_value | 是        | int    | 无          | 查询起始值。                          |
     
  

- **请求body参数**
  无
  
- **请求示例**
  ```
  GET /rest/dataapi/homs/open-api/v1/host-physical/capacity HTTP/1.1 
  Host: example.com
  Content-Type: application/json 
  Accept: application/json
  X-APIG-Appcode: xxx 
  x-auth-token: xxx 
  x-hcso-domainid：xxx 
  x-hcso-appcode：xxx
  ```
  
 
#### 响应
- **响应参数**
  
  | **参数**        | **是否必选** | **类型**  | **值域** | **说明**                                    |
  |:---|:---|:---|:---|:---|
  | code          | 是        | String  | 无      | 返回码。                                      |
  | msg           | 是        | String  | 无      | 返回消息。                                     |
  | total         | 是        | Integer | 无      | 数据条数。                                     |
  | device_type   | 否        | String  | 无      | 物理设备类型，ECS-计算（物理计算服务器），EVS-存储（物理存储服务器）。   |
  | timestamp     | 是        | Long    | 无      | 时间戳。                                      |
  | region        | 是        | String  | 无      | 资源所属region中文名。                            |
  | zone_type     | 否        | String  | 无      | 资源所属区域类型：MANAGE管理区，POD或KVM_POD租户区。        |
  | allocated     | 是        | String  | 无      | 已分配量：vCPU单位为Core核，内存为TB，存储为TB。            |
  | available     | 是        | String  | 无      | 剩余量：vCPU单位为Core核，内存为TB，存储为TB。             |
  | resource_type | 否        | String  | 无      | 物理服务器的规格型号，如C6XLarge物理计算服务器，SSD盘的物理存储服务器。 |
  | metric_type   | 否        | String  | 无      | 容量指标类型：对应device_type物理资源的类型（计算或存储）所不同。    |
     
  

- **响应示例**
  ```
  HTTP/1.1 200 OK 
  Date:Tue,18 Jul 2023 09:58:01 GMT
  Server: example.com
  Content-Type: application/json;charset=UTF8 
  存储 
  { 
      "total": 2, 
      "list": [ 
               { 
                "available": "94.5693359375", 
                "metric_type": "SAS", 
                "device_type": "EVS", 
                "zone_type": "MANAGE", 
                "region": "cn-central-229", 
                "allocated": "112.2265625", 
                "resource_type": "SAS", 
                "timestamp": "1649692800000" 
                }, 
               { 
                "available": "102.4052734375", 
                "metric_type": "SAS", 
                "device_type": "EVS", 
                "zone_type": "MANAGE", 
                "region": "cn-east-264", 
                "allocated": "173.3232421875", 
                "resource_type": "SAS", 
                "timestamp": "1649692800000" 
                } 
                ] 
  } 
  计算 
  { 
      "service_type": "ECS", 
      "total": "44.072265625", 
      "available": "26.486328125", 
      "metric_type": "memory", 
      "zone_type": "KVM_POD", 
      "used": "0", 
      "free": "44.072265625", 
      "used_ratio": "0", 
      "region": "cn-east-264", 
      "resource_count": "0", 
      "allocated": "15.2578125", 
      "resource_type": "C6xLarge", 
      "timestamp": "1649865600000" 
  }, 
  { 
      "service_type": "ECS", 
      "total": "10792", 
      "available": "5408", 
      "metric_type": "vCpu", 
      "zone_type": "KVM_POD", 
      "used": "0", 
      "free": "10792", 
      "used_ratio": "0", 
      "region": "cn-east-264", 
      "resource_count": "0", 
      "allocated": "4964", 
      "resource_type": "M6xLarge", 
      "timestamp": "1649865600000" 
  }
  ```
  
 
#### 状态码
| **状态码** | **说明**                        |
|:---|:---|
| 200     | 操作成功。                         |
| 400     | 参数错误。                         |
| 401     | token鉴权失败。                    |
| 403     | 鉴权失败。                         |
| 404     | rest接口未找到。                    |
| 500     | 默认ServiceException异常码，应用内部错误。 |
   
#### 操作危险级别
Minor
