批量查詢服務器
更新時間 2025-04-23 15:02:52
最近更新時間: 2025-04-23 15:02:52
分享文章
本節主要介紹如何使用API批量查詢服務器。
此操作用來批量查詢服務器。
請求語法
GET /rest/v1/system/server?filter=filter&range=i-j HTTP/1.1
Date: date
Host: ip:port
Authorization: authorization請求參數
| 參數 | 類型 | 描述 | 是否必須 |
|---|---|---|---|
| filter | String | 查詢的過濾條件。 支持的查詢條件為:
| 否 |
| range | String | 查詢服務器的范圍,格式為i-j,i和j為正整數,0 < j-i < 1000。按照服務器ID進行排序,返回第i到第j的服務器。 如果輸入的查詢范圍超過服務器的總個數,返回的結果為空,如果未指定range,則返回所有符合條件的服務器。 | 否 |
響應結果
| 名稱 | 類型 | 描述 |
|---|---|---|
| servers | Array of server | 服務器HBlock屬性集合,詳見“表1 響應參數server說明”。 |
表1 響應參數server說明
| 名稱 | 類型 | 描述 |
|---|---|---|
| serverName | String | 服務器名稱。 |
| serverId | String | 服務器ID。 |
| status | String | 服務器狀態:
|
| version | String | 服務器上的HBlock版本。 |
| isMasterServer | Boolean | 該服務器是否為Master節點:
|
| isBaseServer | Boolean | 該服務器是否為基礎節點:
|
| publicAddress.ip | String | 業務網絡的IP。 |
| publicAddress.port | Integer | 業務網絡端口號。 |
| clusterAddress.ip | String | 集群網絡的IP。 |
| clusterAddress.port | Integer | 集群網絡端口號。 |
| allDiskPaths.usedCapacity | Long | 當前服務器所有HBlock數據目錄對應分區的已用容量,單位是字節。 |
| allDiskPaths.totalCapacity | Long | 當前服務器所有HBlock數據目錄對應分區的總容量,單位是字節。 |
| defaultPath | String | 默認的數據目錄(僅單機版支持)。 |
| recentStartTime | Long | HBlock服務在該節點上最近一次成功啟動的時間。 服務器未連接時,不返回此項。 |
| ports | Array of ports | HBlock端口的集合,詳見“表2 響應參數ports說明”。 |
| portRange | String | 端口范圍。 |
| iSCSIPort | Integer | iSCSI端口。 |
| storagePorts | Array of storagePorts | 存儲服務端口集合(僅集群版支持),詳見“表3 響應參數storagePort說明”。 |
| nodeName | String | 節點名稱(僅集群版支持)。 |
| parentName | String | 父節點名稱(僅集群版支持)。 |
| description | String | 節點描述(僅集群版支持)。 |
| baseServices | Array of baseService | 基礎服務屬性的集合(僅集群版基礎服務器支持),詳見“表4 響應參數baseService說明”。 |
表2 響應參數ports說明
| 名稱 | 類型 | 描述 |
|---|---|---|
| portName | String | HBlock端口名稱。 |
| port | Integer | HBlock在當前服務器上使用的端口號。 |
表3 響應參數storagePort說明
| 名稱 | 類型 | 描述 |
|---|---|---|
| port1 | Integer | 存儲服務端口1。 |
| port2 | Integer | 存儲服務端口2。 |
| port3 | Integer | 存儲服務端口3。 |
| diskpath | String | 存儲服務的數據目錄。 |
| pathId | Integer | 數據目錄ID。 |
表4 響應參數baseService說明
| 名稱 | 類型 | 描述 |
|---|---|---|
| name | String | 基礎服務名稱:
|
| status | String | 基礎服務的狀態:
|
| metaDir | String | 存儲基礎服務數據的數據目錄。 |
請求示例1
單機版:查詢服務器。
GET /rest/v1/system/server HTTP/1.1
Date: Tue, 14 Jan 2025 08:41:57 GMT
Authorization: HBlock userName:signature
Host: 192.168.0.32:1443響應示例1
HTTP/1.1 200 OK
Date: Tue, 14 Jan 2025 08:41:57 GMT
x-hblock-request-id: 9fac0d6f51a647bda31c8b68280652e1
Connection: keep-alive
Content-Length: 695
Content-Type: application/json;charset=utf-8
Server: HBlock
{
"data": {
"servers": [
{
"serverName": "ecs-9689-0915127",
"serverId": "hblock_1",
"status": "Connected",
"version": "3.9.0",
"publicAddress": {
"ip": "192.168.0.32",
"port": 3260
},
"clusterAddress": {
"ip": "192.168.0.32",
"port": 20004
},
"allDiskPaths": {
"usedCapacity": 35861303296,
"totalCapacity": 100169342976
},
"defaultPath": "/mnt/stor",
"recentStartTime": 1735873608983,
"ports": [
{
"portName": "apiPort",
"port": 1443
},
{
"portName": "webPort",
"port": 2443
},
{
"portName": "managementPort1",
"port": 20004
},
{
"portName": "managementPort2",
"port": 20000
},
{
"portName": "managementPort3",
"port": 20002
},
{
"portName": "managementPort4",
"port": 20003
},
{
"portName": "managementPort6",
"port": 20001
}
],
"portRange": "20000-20500",
"iSCSIPort": 3260
}
]
}
}請求示例2
集群版:查詢第2和第3個服務器。
GET /rest/v1/system/server?range=2-3 HTTP/1.1
Date: Mon, 25 Nov 2024 09:47:00 GMT
Authorization: HBlock userName:signature
Host: 192.168.0.192:1443響應示例2
HTTP/1.1 200 OK
Date: Mon, 25 Nov 2024 09:47:00 GMT
x-hblock-request-id: 79a2d7b33f55452e910217c2d0cd51af
Connection: keep-alive
Content-Length: 2716
Content-Type: application/json;charset=utf-8
Server: HBlock
{
"data": {
"servers": [
{
"serverName": "ecs-9689-0915142",
"serverId": "hblock_2",
"status": "Connected",
"version": "3.8.0",
"isMasterServer": false,
"isBaseServer": true,
"publicAddress": {
"ip": "192.168.0.117",
"port": 3260
},
"clusterAddress": {
"ip": "192.168.0.117",
"port": 20008
},
"allDiskPaths": {
"usedCapacity": 18037145600,
"totalCapacity": 35963482112
},
"recentStartTime": 1732519209900,
"ports": [
{
"portName": "apiPort",
"port": 1443
},
{
"portName": "webPort",
"port": 2443
},
{
"portName": "managementPort1",
"port": 20008
},
{
"portName": "managementPort2",
"port": 20013
},
{
"portName": "managementPort3",
"port": 20004
},
{
"portName": "managementPort4",
"port": 20011
},
{
"portName": "managementPort5",
"port": 20000
},
{
"portName": "managementPort6",
"port": 20010
},
{
"portName": "dataPort1",
"port": 20002
},
{
"portName": "metadataPort4",
"port": 20005
},
{
"portName": "metadataPort5",
"port": 20001
},
{
"portName": "metadataPort6",
"port": 20006
},
{
"portName": "metadataPort7",
"port": 20012
},
{
"portName": "metadataPort8",
"port": 20007
}
],
"portRange": "20000-20500",
"iSCSIPort": 3260,
"storagePorts": [
{
"port1": 20003,
"port2": 20014,
"port3": 20009,
"diskpath": "/mnt/storage02",
"pathId": "1"
}
],
"nodeName": "default:hblock_2",
"parentName": "default",
"baseServices": [
{
"name": "ls",
"status": "Up",
"metaDir": "/mnt/storage02"
},
{
"name": "cs",
"status": "Up",
"metaDir": "/mnt/storage02"
}
]
},
{
"serverName": "ecs-9689-0915140",
"serverId": "hblock_3",
"status": "Connected",
"version": "3.8.0",
"isMasterServer": false,
"isBaseServer": true,
"publicAddress": {
"ip": "192.168.0.102",
"port": 3260
},
"clusterAddress": {
"ip": "192.168.0.102",
"port": 20008
},
"allDiskPaths": {
"usedCapacity": 63451136,
"totalCapacity": 100169342976
},
"recentStartTime": 1732519207564,
"ports": [
{
"portName": "apiPort",
"port": 1443
},
{
"portName": "webPort",
"port": 2443
},
{
"portName": "managementPort1",
"port": 20008
},
{
"portName": "managementPort2",
"port": 20013
},
{
"portName": "managementPort3",
"port": 20004
},
{
"portName": "managementPort4",
"port": 20011
},
{
"portName": "managementPort5",
"port": 20000
},
{
"portName": "managementPort6",
"port": 20010
},
{
"portName": "dataPort1",
"port": 20002
},
{
"portName": "metadataPort1",
"port": 20014
},
{
"portName": "metadataPort2",
"port": 20003
},
{
"portName": "metadataPort3",
"port": 20009
},
{
"portName": "metadataPort4",
"port": 20005
},
{
"portName": "metadataPort5",
"port": 20001
},
{
"portName": "metadataPort6",
"port": 20006
},
{
"portName": "metadataPort7",
"port": 20012
},
{
"portName": "metadataPort8",
"port": 20007
}
],
"portRange": "20000-20500",
"iSCSIPort": 3260,
"storagePorts": [
{
"port1": 20015,
"port2": 20017,
"port3": 20016,
"diskpath": "/mnt/stor01",
"pathId": "1"
}
],
"nodeName": "default:hblock_3",
"parentName": "default",
"baseServices": [
{
"name": "mdm",
"status": "Up",
"metaDir": "/mnt/stor02"
},
{
"name": "ls",
"status": "Up",
"metaDir": "/mnt/stor02"
},
{
"name": "cs",
"status": "Up",
"metaDir": "/mnt/stor02"
}
]
}
]
}
}