Oracle® ZFS Storage Appliance RESTful API 指南,发行版 2013.1.5.0

退出打印视图

更新时间: 2016 年 2 月
 
 

SAN 启动器

以下是用于管理 SAN 启动器的命令。

表 44  启动器命令
请求
路径 /san/v1.0
描述
GET
/<protocol>/initiators
针对给定协议(FC、iSCSI、SRP)对象列出所有 SAN 启动器
GET
/<protocol>/initiators /<initiator>
针对给定协议(FC、iSCSI、SRP)属性获取指定的 SAN 启动器
POST
/<protocol>/initiators
针对给定协议(FC、iSCSI、SRP)创建新的 SAN 启动器
PUT
/<protocol>/initiators /<initiator>
针对给定协议(FC、iSCSI、SRP)对象修改指定的 SAN 启动器
DELETE
/<protocol>/initiators /<initiator>
销毁指定的启动器对象

这些命令使用以下 URI 参数。

表 45  URI 参数
名称
描述
protocol
启动器的 NAS 协议(FC、iSCSI、SRP)
initiator
启动器的 iqn、wwn 或 eui

很多启动器命令使用下面列出的属性作为返回值。创建和修改命令也使用这些属性作为输入值。

表 46  启动器属性
名称
协议
描述
alias
all
此启动器的别名
initiator
fc
此启动器的端口全局名称 (World Wide Name, WWN)
iqn
iscsi
此启动器的 iSCSI 限定名称
chapuser
iscsi
质询握手验证协议 (Challenge Handshake Auth Protocol, CHAP) 用户名
chapsecret
iscsi
质询握手验证协议 (Challenge Handshake Auth Protoco, CHAP) 密钥
initiator
srp
扩展唯一标识符 (Extended Unique Identifier, EUI)

列出启动器

列出在指定协议类型的设备上配置的所有启动器。响应正文包含名为 "initiators" 的启动器属性数组(使用 JSON 格式)。

用来列出 iSCSI 启动器的请求示例:

GET /api/san/v1/iscsi/initiators HTTP/1.1
Host: zfs-storage.example.com
Accept: application/json

响应示例:

HTTP/1.1 200 OK
Content-Type: application/json

{
    "initiators": [{
        "alias": "init-02",
        "href": "/api/san/v1/iscsi/initiators/iqn.1986-03.com.sun:02:02",
        "initiator": "iqn.1986-03.com.sun:02:02",
        "chapsecret": "",
        "chapuser": ""
    },{
        "alias": "init-01",
        "initiator": "iqn.1986-03.com.sun:02:01",
        "href": "/api/san/v1/iscsi/initiators/iqn.1986-03.com.sun:02:01",
        "chapsecret": "",
        "chapuser": ""
    }]
}

获取启动器详细信息

列出单个 iSCSI 启动器的详细信息。响应正文包含作为名为 "initiator" 的对象的 iSCSI 启动器属性(使用 JSON 格式)。

请求示例:

GET /api/san/v1/iscsi/initiators/iqn.1986-03.com.sun:02:01 HTTP/1.1
Host: zfs-storage.example.com
Accept: application/json

响应示例:

HTTP/1.1 200 OK
Content-Type: application/json

{
    "initiator": {
        "alias": "init-01",
        "href": "/api/san/v1/iscsi/initiators/iqn.1986-03.com.sun:02:01"
        "initiator": "iqn.1986-03.com.sun:02:01",
        "chapsecret": "",
        "chapuser": ""
    }
}

创建启动器

创建新的 iSCSI 启动器。您必须提供 iSCSI 限定名 (iSCSI Qualified Name, IQN)。请求正文包含 iSCSI 启动器属性(使用 JSON 格式)。响应包含 HTTP 头中新 iSCSI 启动器的位置 URI,以及响应成功时返回的状态码 201 (Created)。响应正文包含作为名为 "initiator" 的对象的 iSCSI 启动器属性(使用 JSON 格式)。

请求示例:

POST /api/san/v1.0/iscsi/initiators HTTP/1.1
Host: zfs-storage.example.com
Content-Type: application/json
Accept: application/json

{
    "initiator": "iqn.1986-03.com.sun:02:02",
    "alias":"init-02"
}

响应示例:

HTTP/1.1 201 Created
Content-Type: application/json
Content-Length: 181
X-Zfssa-San-Api: 1.0
Location: /api/san/v1/iscsi/initiators/iqn.1986-03.com.sun:02:02

{
    "initiator": {
        "alias": "init-02",
        "href": "/api/san/v1/iscsi/initiators/iqn.1986-03.com.sun:02:02",
        "initiator": "iqn.1986-03.com.sun:02:02",
        "chapsecret": "",
        "chapuser": ""
    }
}

修改启动器

此命令可修改现有启动器。请求正文包含应修改的启动器属性(使用 JSON 格式)。URI 中提供此启动器的 IQN。成功后,将返回 HTTP 状态 202 (Accepted)。响应正文包含作为名为 "initiator" 的对象的新 iSCSI 启动器属性(使用 JSON 格式)。

请求示例:

PUT /api/san/v1/iscsi/initiators/iqn.1986-03.com.sun:01  /HTTP/1.1
Host: zfs-storage.example.com
Content-Type: application/json
Accept: application/json

{
    "alias":"init-01-secure",
    "chapuser":"chuck",
    "chapsecret":"igottheintersect"
}

响应示例:

HTTP/1.1 202 Accepted
Content-Length: 167
Content-Type: application/json
X-Zfs-Sa-Nas-Api: 1.0

{
    "initiator": {
        "alias": "init-01-secure",
        "href": "/api/san/v1/iscsi/initiators/iqn.1986-03.com.sun:01",
        "iqn": "iqn.1986-03.com.sun:1",
        "chapsecret": "igottheintersect",
        "chapuser": "chuck"
    }
}

删除启动器

从设备中删除启动器。

请求示例:

DELETE /api/san/v1/iscsi/initiators/iqn.1986-03.com.sun:01 HTTP/1.1
Host: zfs-storage.example.com:215

成功删除后,将返回 HTTP 代码 204 (No Content):

HTTP/1.1 204 No-Content