Initiator Groups

The iSCSI initiator commands are used to manage iSCSI initiators and iSCSI initiator groups on an Oracle ZFS Storage Appliance system. The available commands are listed in the table below.

These commands use the following URI parameters:

protocol

NAS protocol for the initiator: fc, iscsi, or srp

name

Name of the initiator group

Each initiator group has a name property and an initiators property that contains a list of initiators in the initiator group.

Table 11-3 Initiator Group Commands

Request Append to Path /san/v{1|2} Description

GET

/protocol/initiator-groups

List all SAN initiator groups for the given protocol: fc, iscsi, srp objects

GET

/protocol/initiator-groups/name

Get the specified SAN initiator group for the given protocol: fc, iscsi, srp properties

POST

/protocol/initiator-groups

Create a new SAN initiator group for the given protocol: fc, iscsi, srp

PUT

/protocol/initiator-groups/name

Modify the specified SAN initiator group for the given protocol: fc, iscsi, srp object

DELETE

/protocol/initiator-groups/name

Destroy the specified name object

List Initiator Groups

Lists all available iSCSI initiator groups. On success HTTP status 200 (OK) is returned and the body contains a JSON object with a property named "groups" that contains an array of initiator group objects.

Example Request:

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

Example Result:

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

{
    "groups": [{
        "href": "/san/v1/iscsi/initiator-groups/p1-initiators-0",
        "initiators": ["iqn.zfs-storage.example.com.sun:0"],
        "name": "p1-initiators-0"
    }, {
        "href": "/san/v1/iscsi/initiator-groups/p1-initiators-1",
        "initiators": ["iqn.zfs-storage.example.com.sun:1"],
        "name": "p1-initiators-1"
    }]
}

Get Initiator Group Details

Gets detailed information from a single iSCSI initiator group. The group can be accessed by following the href property returned in the list initiator group command.

Example Request:

GET /api/san/v1/iscsi/initiator-groups/test-group HTTP/1.1
Host: zfs-storage.example.com:215
Accept: application/json

Example Result:

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

{
    "group": {
        "href": "/api/san/v1/iscsi/initiator-groups/test-group"
        "initiators": ["iqn.zfs-storage.example.com.sun:02:01"],
        "name": "test-group"
    }
}

Create an Initiator Group

Creates an iSCSI initiator group with no members. The request body contains a JSON object with a single name parameter containing the group name.

Table 11-4 Initiator Group Create Properties

Property Type Description

name

string

The name of the initiator group

initiators

array

An array of existing initiator IQN properties

Example Request:

POST /api/san/v1/iscsi/initiator-groups HTTP/1.1
Host: zfs-storage.example.com:215
Content-Type: application/json
Content-Length: 64
Accept: application/json

{
   "name":"group-01",
   "initiators": ["iqn.zfs-storage.example.com.sun:02"]
}

Example Result:

HTTP/1.1 201 Created
Content-Type: application/json
Location: /api/san/v1/iscsi/initiator-groups/test-group

{
    "group": {
        "href": "/api/san/v1/iscsi/initiator-groups/test-group",
        "initiators": ["iqn.zfs-storage.example.com.sun:02"],
        "name": "group-01"
    }
}

Delete an Initiator Group

Removes an initiator group from Oracle ZFS Storage Appliance.

Example Request:

DELETE /api/san/v1.0/iscsi/initiator-groups/group-01 HTTP/1.1
Host: zfs-storage.example.com:215

Successful delete returns HTTP status 204 (No Content):

HTTP/1.1 204 No-Content