iSCSI 目标命令用于管理 iSCSI 目标和 iSCSI 目标组。下表中列出了可用命令。
这些目标命令使用以下 URI 参数:
SAN 协议:fc、iscsi 或 srp
目标 ID:IQN、WWN 或 EUI
|
获取目标命令将返回目标属性。创建目标命令和修改目标命令使用下表中列出的属性作为输入。
|
以下属性用于获取 iSCSI 目标组信息。
|
列出设备上可用的指定协议的所有 SAN 目标。
请求示例:
GET /api/san/v1/iscsi/targets HTTP/1.1 Host: zfs-storage.example.com:215 Authorization: Basic abcd123MWE= Accept: application/json
响应示例:
HTTP/1.1 200 OK Content-Type: application/json Content-Length: 1337 { "size": 7, "targets": [{ "alias": "tst.volumes.py.12866.target", "href": "/api/san/v1/iscsi/targets/iqn.zfs-storage.example.com.sun:02: 72b6fa9a-96c4-e511-db19-aadb9bac2052", "iqn": "iqn.zfs-storage.example.com.sun:02:72b6fa9a-96c4- e511-db19-aadb9bac2052", ... }, { "alias": "tst.volumes.py.96238.target", "href": "/api/san/v1/iscsi/targets/iqn.zfs-storage.example.com.sun:02: 31d26d2e-6aa0-6054-fe58-8b1fb508b008", "iqn": "iqn.zfs-storage.example.com.sun:31d26d2e-6aa0-6054-fe58-8b1fb508b008", ... } ...] }
从单个目标中获取属性。可使用 "iqn" 属性或使用 "alias=alias" 选择目标。
请求示例:
GET /api/san/v1/iscsi/targets/alias=test-target HTTP/1.1 Host: zfs-storage.example.com:215 Authorization: Basic abcd123MWE= Accept: application/json
响应示例:
HTTP/1.1 200 OK Content-Type: application/json Content-Length: 251 { "target": { "alias": "test-target", "auth": "none", "href": "/api/san/v1/iscsi/targets/alias=test-target", "interfaces": ["ixgbe0"], "iqn": "iqn.zfs-storage.example.com.sun:02:31d26d2e-6aa0-6054-fe58-8b1fb508b008", "targetchapsecret": "", "targetchapuser": "" } }
创建新的目标。请求正文包含一个带有 name 属性的 JSON 对象,此属性是新的 iSCSI 目标组的名称。
请求示例:
POST /api/san/v1/iscsi/targets HTTP/1.1 Host: zfs-storage.example.com:215 Authorization: Basic abcd123MWE= Content-Type: application/json Content-Length: 23 Accept: application/json {"alias": "test-target"}
响应示例:
HTTP/1.1 201 Created Content-Type: application/json Content-Length: 233 X-Zfssa-San-Api: 1.0 Location: /api/san/v1/iscsi/targets/iqn.zfs-storage.example.com.sun:02:31d26d2e-6aa0-6054-fe58-8b1fb508b008 { "target": { "href": "/api/san/v1/iscsi/targets/iqn.zfs-storage.example.com.sun:02:31d26d2e-6aa0-6054-fe58-8b1fb508b008", "alias": "test-target", "iqn": "iqn.zfs-storage.example.com.sun:02:31d26d2e-6aa0-6054-fe58-8b1fb508b008", "auth": "none", "targetchapuser": "", "targetchapsecret": "", "interfaces": ["ixgbe0"] } }
修改现有 iSCSI 目标。请求正文包含带有已修改的 iSCSI 目标属性的 JSON 对象。成功后,将返回 HTTP 状态 202 (Accepted)。响应正文包含在 JSON 对象中编码的目标的结果 iSCSI 目标属性。
请求示例:
PUT /api/san/v1/iscsi/targets/alias=test-target HTTP/1.1 Host: zfs-storage.example.com:215 Authorization: Basic abcd123MWE= Host: zfs-storage.example.com Content-Type: application/json Content-Length: 54 Accept: application/json {"targetchapsecret":"secret", "auth":"chap", "targetchapuser":"admin5"}
响应示例:
HTTP/1.1 202 Accepted Content-Type: application/json Content-Length: 189 X-Zfssa-San-Api: 1.0 { "target": { "href": "/api/san/v1/iscsi/targets/alias=test-target", "auth": "chap", "targetchapsecret": "secret", "alias": "test-target", "iqn": "iqn.zfs-storage.example.com.sun:02:31d26d2e-6aa0-6054-fe58-8b1fb508b008", "targetchapuser": "admin5", "interfaces": ["ixgbe0"] } }
从系统中删除 SAN 目标。
请求示例:
DELETE /api/san/v1/iscsi/targets/iqn.zfs-storage.example.com.sun:02:e7e688b1 HTTP/1.1 Host: zfs-storage.example.com:215 Authorization: Basic abcd123MWE=
成功删除后,将返回 HTTP 代码 204 (No Content):
HTTP/1.1 204 No-Content