ハードウェアのコマンドは、アプライアンスハードウェアシャーシおよびコンポーネントのリストを取得するために使用します。
|
シャーシの取得コマンドは、引数を取らず、システムシャーシオブジェクトのリストを返します。コマンドに成功すると、HTTP ステータス 200 (OK) が返されます。
|
リクエストの例:
GET /api/hardware/v1/chassis HTTP/1.1 Host: zfs-storage.example.com:215 Accept: application/json
レスポンスの例:
HTTP/1.1 200 OK Content-Length: 788 Content-Type: application/json X-Zfssa-Appliance-Api: 1.0 { "hardware": [{ "faulted": false, "href": "/api/hardware/v1/chassis/chassis-000", "manufacturer": "Oracle", "model": "Oracle ZFS Storage ZS3-1", "name": "cairo", "rpm": "--", "serial": "1211FM200C", "type": "system" }, { "faulted": false, "href": "/api/hardware/v1/chassis/chassis-001", "locate": false, "manufacturer": "Oracle", "model": "Oracle Storage DE2-24C", "name": "1235FM4002", "part": "7046842", "path": 2, "revision": "0010", "rpm": 7200, "serial": "1235FM4002", "type": "storage" }, { "faulted": false, "href": "/api/hardware/v1/chassis/chassis-002", "locate": false, "manufacturer": "Oracle", "model": "Oracle Storage DE2-24P", "name": "50050cc10c206b96", "part": "7046836", "path": 2, "revision": "0010", "rpm": 10000, "serial": "50050cc10c206b96", "type": "storage" }] }
このコマンドは、指定されたシャーシ内のすべてのハードウェアコンポーネントを返します。コマンドに成功すると、HTTP ステータス 200 (OK) が返されます。
リクエストの例:
GET /api/nas/v1/chassis/chassis-001 HTTP/1.1 Host: zfs-storage.example.com Accept: application/json
レスポンスの例:
HTTP/1.1 200 OK Content-Type: application/json { "chassis": { "type": "storage" "faulted": false, "href": "/api/hardware/v1/chassis/chassis-001", "locate": false, "manufacturer": "Oracle", "model": "Oracle Storage DE2-24C", "name": "1235FM4002", "part": "7046842", "path": 2, "revision": "0010", "rpm": 7200, "serial": "1235FM4002", "disk": [{ "device": "c0t5000CCA01A76A2B8d0", "faulted": false, "href": "/api/hardware/v1/chassis/chassis-001/disk/disk-000", "interface": "SAS", "label": "HDD 0", "locate": false, "manufacturer": "HITACHI", "model": "H7230AS60SUN3.0T", "pathcount": 4, "present": true, "revision": "A310", "rpm": 7200, "serial": "001210R37LVD YHJ37LVD", "size": 3000592982016, "type": "data", "use": "peer" }, { "href": "/api/hardware/v1/chassis/chassis-001/disk/disk-001", ... }, { "href": "/api/hardware/v1/chassis/chassis-001/disk/disk-002", ... }, ... { "href": "/api/hardware/v1/chassis/chassis-001/disk/disk-023", ... }], "fan": [ { "href": "/api/hardware/v1/chassis/chassis-001/fan/fan-000", ... }, ... { "href": "/api/hardware/v1/chassis/chassis-001/fan/fan-007", }], "psu": [ { "href": "/api/hardware/v1/chassis/chassis-001/psu/psu-000", ... }, { "href": "/api/hardware/v1/chassis/chassis-001/psu/psu-001", }, { "href": "/api/hardware/v1/chassis/chassis-001/psu/psu-002", }, { "href": "/api/hardware/v1/chassis/chassis-001/psu/psu-003", }], "slot": [{ "href": "/api/hardware/v1/chassis/chassis-001/slot/slot-000", }, { "href": "/api/hardware/v1/chassis/chassis-001/slot/slot-001", }], } }
このコマンドは、1 つのハードウェアコンポーネントからのプロパティーを返します。コマンドに成功すると、HTTP ステータス 200 (OK) が返されます。レスポンスオブジェクトには、次の表に含まれるコンポーネントのプロパティーが含まれます。
|
リクエストの例:
GET /api/hardware/v1/chassis/chassis-001/disk/disk-011 HTTP/1.1 Host: zfs-storage.example.com Accept: application/json
レスポンスの例:
HTTP/1.1 200 OK Content-Type: application/json { "disk": { "device": "c0t5000CCA01A764FB0d0", "faulted": false, "href": "/api/hardware/v1/chassis/chassis-001/disk/disk-011", "interface": "SAS", "label": "HDD 11", "locate": false, "manufacturer": "HITACHI", "model": "H7230AS60SUN3.0T", "pathcount": 4, "present": true, "revision": "A310", "rpm": 7200, "serial": "001210R322ED YHJ322ED", "size": 3000592982016, "type": "data", "use": "peer" } }
PUT リクエストは、選択したハードウェアコンポーネントでプロパティーを設定するために使用できます。リクエストに成功すると、HTTP ステータス 201 (Accepted) が JSON 形式のコンポーネントプロパティーとともに返されます。
リクエストの例:
PUT /api/hardware/v1/chassis/chassis-001/disk/disk-011 HTTP/1.1 Host: zfssa.example.com:215 X-Auth-User: root X-Auth-Key: letmein Accept: application/json Content-Type: application/json Content-Length: 16 {"locate": true}
JSON レスポンスの例:
HTTP/1.1 202 Accepted X-Zfssa-Appliance-Api: 1.0 Content-Length: 403 Content-Type: application/json { "disk": { "href": "/api/hardware/v1/chassis/chassis-001/disk/disk-011", ..., "locate": true } }