Skip to main content

We've Moved!

Product Documentation has moved to docs.hitachivantara.com
Hitachi Vantara Knowledge

Optimizing I/O performance

You can optimize I/O performance between the host and the storage system by using the functions of Virtual Partition Manager and Server Priority Manager, or by changing the assignment of MP blade servers.

Overview of optimizing I/O performance

This section describes optimization of I/O performance between a host and a storage system.

To optimize I/O performance by using the REST API, use one the following methods:

  • Use the Virtual Partition Manager function for dividing the cache to prevent a specific host from monopolizing use of too much cache capacity.
  • Use the Server Priority Manager function to prioritize the I/O operations of hosts for which fast processing is required by restricting the I/O performance of lower-priority hosts.
  • Assign specific MP blades to resources to distribute the workload of I/O operations.
Managing CLPRs

Use the Virtual Partition Manager function to divide the cache and allocate the resources that use the cache. By doing so, you can prevent a situation in which a specific host monopolizes use of too many cache memory areas and I/O performance deteriorates.

You can use the REST API to create or delete a CLPR, or assign resources.

For details about the CLPR function and notes on using CLPRs, see the manual for Virtual Partition Manager.

Using Server Priority Manager

To prevent performance degradation of high-priority hosts, you can use the Server Priority Manager function to restrict the number of times a lower-priority host can access a storage system and the amount of data a lower-priority host can transfer.

You can configure Server Priority Manager by specifying a port and the WWN of the HBA or by specifying a volume (LDEV) and the WWN or iSCSI name of the HBA. You cannot use both specification methods on the same storage system. If you are using the REST API, configure settings by specifying a volume and the WWN or iSCSI name of the HBA.

Use a product such as the Tuning Manager API to check the performance information of hosts for which Server Priority Manager information was set by specifying the volume and WWN or iSCSI name of the HBA in the REST API.

Note

For storage systems for which the Server Priority Manager function is already being used from a product such as Storage Navigator, you cannot use the Server Priority Manager function from the REST API. To configure Server Priority Manager from the REST API, first delete all Server Priority Manager settings from products such as Storage Navigator.

Assigning MP blades

If you assign specific MP blades to each resource related to the input or output of data (resources such as LDEVs, external parity groups, and journals), those resources have exclusive use of the corresponding MP blades. In addition, if there are many write operations from hosts to a specific MP blade, you can distribute the I/O workload by assigning another MP blade to the resource that is placing a heavy load on the first MP blade.

You can use the REST API to change the MP blade assigned to an LDEV, an external parity group, or a journal. For details, see the descriptions of the API requests for changing the assignment of an MP blade in the following sections:

  • For LDEVs: The section explaining the volume allocation
  • For external parity groups: The section explaining the optimization of I/O performance
  • For journals: The section explaining how to configure a remote copy environment

Getting information about CLPRs

Obtain a list of CLPRs. You can obtain information such as the cache capacity, cache usage rate, and resident cache capacity.

Execution permission

Storage Administrator (View Only)

Request line

GET base-URL/v1/objects/clprs
Request message
  • Object ID

    None.

  • Query parameters

    None.

  • Body

    None.

Response message
  • Body

    {
      "data": [
        {
          "clprId": 0,
          "clprName": "CLPR0",
          "cacheMemoryCapacity": 171776,
          "cacheMemoryUsedCapacity": 41055,
          "writePendingDataCapacity": 56,
          "sideFilesCapacity": 0,
          "cacheUsageRate": 24,
          "writePendingDataRate": 1,
          "sideFilesUsageRate": 0
        },
        {
          "clprId": 1,
          "clprName": "CLPR1",
          "cacheMemoryCapacity": 4096,
          "cacheMemoryUsedCapacity": 0,
          "writePendingDataCapacity": 0,
          "sideFilesCapacity": 0,
          "cacheUsageRate": 0,
          "writePendingDataRate": 0,
          "sideFilesUsageRate": 0
        },
        {
          "clprId": 2,
          "clprName": "CLPRDEV",
          "cacheMemoryCapacity": 12288,
          "cacheMemoryUsedCapacity": 0,
          "writePendingDataCapacity": 0,
          "sideFilesCapacity": 0,
          "cacheUsageRate": 0,
          "writePendingDataRate": 0,
          "sideFilesUsageRate": 0
        }
      ]
    }

    Attribute

    Type

    Description

    clprId

    int

    CLPR ID

    clprName

    string

    CLPR name

    cacheMemoryCapacity

    long

    Cache size (MB)

    cacheMemoryUsedCapacity

    long

    Used cache size (MB)

    writePendingDataCapacity

    long

    Amount of data waiting to be written (MB)

    sideFilesCapacity

    long

    Size of side files (MB)

    cacheUsageRate

    int

    Cache usage rate (%)

    writePendingDataRate

    int

    Rate of data waiting to be written (%)

    sideFilesUsageRate

    int

    Side file usage rate (%)

Status codes

For details on the status codes of the request for this operation, see the description of HTTP status codes.

Coding example
curl -v -H "Accept:application/json" -H "Content-Type:application/json" -H "Authorization:Session d7b673af189048468c5af9bcf3bbbb6f" -X GET https://192.0.2.100/ConfigurationManager/v1/objects/clprs

Getting information about a specific CLPR

Obtain information about a specific CLPR by specifying the CLPR ID. You can obtain information such as the cache capacity, cache usage rate, and resident cache capacity.

Execution permission

Storage Administrator (View Only)

Request line

GET base-URL/v1/objects/clprs/object-ID
Request message
  • Object ID

    Specify the value of clprId that was obtained by the processing to get information about CLPRs.

    Attribute

    Type

    Description

    clprId

    int

    (Required) CLPR ID

  • Query parameters

    None.

  • Body

    None.

Response message
  • Body

    {
      "clprId": 2,
      "clprName": "CLPRGRP",
      "cacheMemoryCapacity": 12288,
      "cacheMemoryUsedCapacity": 0,
      "writePendingDataCapacity": 0,
      "sideFilesCapacity": 0,
      "cacheUsageRate": 0,
      "writePendingDataRate": 0,
      "sideFilesUsageRate": 0
    }

    Attribute

    Type

    Description

    clprId

    int

    CLPR ID

    clprName

    string

    CLPR name

    cacheMemoryCapacity

    long

    Cache size (MB)

    cacheMemoryUsedCapacity

    long

    Used cache size (MB)

    writePendingDataCapacity

    long

    Amount of data waiting to be written (MB)

    sideFilesCapacity

    long

    Size of side files (MB)

    cacheUsageRate

    int

    Cache usage rate (%)

    writePendingDataRate

    int

    Rate of data waiting to be written (%)

    sideFilesUsageRate

    int

    Side file usage rate (%)

Status codes

For details on the status codes of the request for this operation, see the description of HTTP status codes.

Coding example
curl -v -H "Accept:application/json" -H "Content-Type:application/json" -H "Authorization:Session d7b673af189048468c5af9bcf3bbbb6f" -X GET https://192.0.2.100/ConfigurationManager/v1/objects/clprs/2

Creating a CLPR

Create a CLPR.

Note

If you locked any resources of the target storage system by using the REST API, you will not be able to use this API function. In such cases, unlock the resources before running the API function.

Execution permission

Storage Administrator (System Resource Management)

Request line
POST base-URL/v1/objects/clprs
Request message
  • Object ID

    None.

  • Query parameters

    None.

  • Body

    {
      "clprName" : "CLPRDEV",
      "cacheMemoryCapacity" : 12288
    }

    Attribute

    Type

    Description

    clprName

    string

    (Required) CLPR name

    Specify a name consisting of 1 to 16 characters.

    Specify a name that is unique among the CLPRs on the target storage system.

    cacheMemoryCapacity

    long

    (Required) Total cache size of the CLPR (MB)

    Specify a multiple of 2048.

    For details on the size that can be specified for the cache, see the Virtual Partition Manager manual.

Response message
  • Body

    A job object is returned. For details on attributes other than affectedResources, see the description of job objects.

    Attribute

    Description

    affectedResources

    URL of the created CLPR

Status codes

For details on the status codes of the request for this operation, see the description on HTTP status codes.

Coding example
curl -v -H "Accept:application/json" -H "Content-Type:application/json" -H "Authorization:Session d7b673af189048468c5af9bcf3bbbb6f" -X POST --data-binary @./InputParameters.json https://192.0.2.100/ConfigurationManager/v1/objects/clprs

Changing the settings of a CLPR

Change the name, cache size, and other settings of a CLPR.

Note

If you locked any resources of the target storage system by using the REST API, you will not be able to use this API function. In such cases, unlock the resources before running the API function.

Execution permission

Storage Administrator (System Resource Management)

Request line
PATCH base-URL/v1/objects/clprs/object-ID
Request message
  • Object ID

    Specify the value of clprId that was obtained by the processing to get information about CLPRs.

    Attribute

    Type

    Description

    clprId

    int

    (Required) CLPR ID

  • Query parameters

    None.

  • Body

    The following is a coding example for changing the name of a CLPR:

    {
      "clprName" : "CLPRGRP"
    }

    The following is a coding example for changing the total cache size of a CLPR:

    {
      "cacheMemoryCapacity" : 24576
    }

    The following is a coding example for changing the name and total cache size of a CLPR:

    {
      "clprName" : "CLPRGRP",
      "cacheMemoryCapacity" : 24576
    }

    Attribute

    Type

    Description

    clprName

    string

    (Optional) CLPR name

    Specify a name consisting of 1 to 16 characters.

    Specify a name that is unique among the CLPRs on the target storage system.

    cacheMemoryCapacity

    long

    (Optional) Total cache size of the CLPR (MB)

    Specify a multiple of 2048.

    For details on the size that can be specified for the cache, see the Virtual Partition Manager manual.

Response message
  • Body

    A job object is returned. For details on attributes other than affectedResources, see the description of job objects.

    Attribute

    Description

    affectedResources

    URL of the CLPR whose settings were changed

Action template

None.

Status codes

For details on the status codes of the request for this operation, see the description on HTTP status codes.

Coding example
curl -v -H "Accept:application/json" -H "Content-Type:application/json" -H "Authorization:Session d7b673af189048468c5af9bcf3bbbb6f" -X PATCH --data-binary @./InputParameters.json https://192.0.2.100/ConfigurationManager/v1/objects/clprs/2

Deleting a CLPR

Delete a CLPR. Before deleting a CLPR, move any resources that are currently allocated to the CLPR to be deleted to other CLPRs.

Note

If you locked any resources of the target storage system by using the REST API, you will not be able to use this API function. In such cases, unlock the resources before running the API function.

Execution permission

Storage Administrator (System Resource Management)

Request line

DELETE base-URL/v1/objects/clprs/object-ID
Request message
  • Object ID

    Specify the value of clprId that was obtained by the processing to get information about CLPRs.

    Attribute

    Type

    Description

    clprId

    int

    (Required) CLPR ID

  • Query parameters

    None.

  • Body

    None.

Response message
  • Body

    A job object is returned. For details on attributes other than affectedResources, see the description of job objects.

    Attribute

    Description

    affectedResources

    URL of the deleted CLPR

Status codes

For details on the status codes of the request for this operation, see the description on HTTP status codes.

Coding example
curl -v -H "Accept:application/json" -H "Content-Type:application/json" -H "Authorization:Session d7b673af189048468c5af9bcf3bbbb6f" -X DELETE --data-binary @./InputParameters.json https://192.0.2.100/ConfigurationManager/v1/objects/clprs/3

Assigning LDEVs to a CLPR

The following request assigns LDEVs to a CLPR. You can use this API function to assign LDEVs to a created CLPR or to move an already assigned LDEV to a different CLPR.

Execution permission

Storage Administrator (System Resource Management)

Request line
POST base-URL/v1/objects/ldevs/object-ID/actions/assign-clpr/invoke
Request message
  • Object ID

    Specify the value of ldevId that was obtained by the processing to get information about volumes.

    Attribute

    Type

    Description

    ldevId

    int

    (Required) Specify the LDEV number as a decimal (base 10) number.

  • Query parameters

    None.

  • Body

    {
      "parameters": {
        "clprId": 2
      }
    }

    Attribute

    Type

    Description

    clprId

    int

    (Required) CLPR ID of the CLPR to which the LDEV is to be assigned

    Specify a decimal (base 10) number in the range from 0 to 31.

Response message
  • Body

    A job object is returned. For details on attributes other than affectedResources, see the description of job objects.

    Attribute

    Description

    affectedResources

    URL of the LDEV that was assigned to the CLPR

Action template
GET base-URL/v1/objects/ldevs/object-ID/actions/assign-clpr
Status codes

The following table describes the meanings of the status codes of the request for this operation. For details on other status codes, see the description of the HTTP status codes.

Status code

Message

Description

412

Precondition Failed

The specified action cannot be run, because the specified LDEV meets one of the following conditions:

  • The specified LDEV is a basic volume.
  • The specified LDEV is a journal volume.
  • The specified LDEV is a Thin Image pool volume.
Coding example

To get an action template:

curl -v -H "Accept:application/json" -H "Content-Type:application/json" -H "Authorization:Session d7b673af189048468c5af9bcf3bbbb6f" -X GET https://192.0.2.100/ConfigurationManager/v1/objects/ldevs/100/actions/assign-clpr

To run the request after getting an action template:

curl -v -H "Accept:application/json" -H "Content-Type:application/json" -H "Authorization:Session d7b673af189048468c5af9bcf3bbbb6f" -X POST --data-binary @./InputParameters.json https://192.0.2.100/ConfigurationManager/v1/objects/ldevs/100/actions/assign-clpr/invoke

Assigning parity groups to a CLPR

The following request assigns parity groups to a CLPR. You can use this API function to assign parity groups to a created CLPR or to move an already assigned parity group to a different CLPR.

Execution permission

Storage Administrator (System Resource Management)

Request line
POST base-URL/v1/objects/parity-groups/object-ID/actions/assign-clpr/invoke
Request message
  • Object ID

    Specify the value of parityGroupId that was obtained by the processing to get information about parity groups.

    Attribute

    Type

    Description

    parityGroupId

    string

    (Required) Parity group number

    Specify concatenated parity groups in the same way.

    For 1-3-1, 1-3-2, and 1-3-3 concatenated parity groups, specify as follows:

    "parityGroupId":"1-3"
  • Query parameters

    None.

  • Body

    {
      "parameters": {
        "clprId": 2
      }
    }

    Attribute

    Type

    Description

    clprId

    int

    (Required) CLPR ID of the CLPR to which the parity group is to be assigned

    Specify a decimal (base 10) number in the range from 0 to 31.

Response message
  • Body

    A job object is returned. For details on attributes other than affectedResources, see the description of job objects.

    Attribute

    Description

    affectedResources

    URL of the parity group that was assigned to the CLPR

Action template
GET base-URL/v1/objects/parity-groups/object-ID/actions/assign-clpr
Status codes

For details on the status codes of the request for this operation, see the description of HTTP status codes.

Coding example

To get an action template:

curl -v -H "Accept:application/json" -H "Content-Type:application/json" -H "Authorization:Session d7b673af189048468c5af9bcf3bbbb6f" -X GET https://192.0.2.100/ConfigurationManager/v1/objects/parity-groups/1-1/actions/assign-clpr

To run the request after getting an action template:

curl -v -H "Accept:application/json" -H "Content-Type:application/json" -H "Authorization:Session d7b673af189048468c5af9bcf3bbbb6f" -X POST --data-binary @./InputParameters.json https://192.0.2.100/ConfigurationManager/v1/objects/parity-groups/1-1/actions/assign-clpr/invoke

Getting information about external parity groups

The following request gets a list of information about external parity groups. You can get the information such as the number of LDEVs allocated to external parity groups and the usage rate of external parity groups.

Execution permission

Storage Administrator (View Only)

Request line

GET base-URL/v1/objects/external-parity-groups
Request message
  • Object ID

    None.

  • Query parameters

    None.

  • Body

    None.

Response message
  • Body

    {
      "data": [
        {
          "externalParityGroupId": "1-1",
          "numOfLdevs": 1,
          "usedCapacityRate": 100,
          "availableVolumeCapacity": 0,
          "emulationType": "OPEN-V",
          "clprId": 0,
          "externalProductId": "DF600F"
        },
        {
          "externalParityGroupId": "1-2",
          "numOfLdevs": 1,
          "usedCapacityRate": 100,
          "availableVolumeCapacity": 0,
          "emulationType": "OPEN-V",
          "clprId": 0,
          "externalProductId": "DF600F"
        }
      ]
    }

    Attribute

    Type

    Description

    externalParityGroupId

    string

    External parity group number

    numOfLdevs

    int

    Number of LDEVs allocated to the external parity group

    usedCapacityRate

    int

    Usage rate of the external parity group

    availableVolumeCapacity

    long

    Available capacity (free space)

    If the capacity is below 1 GB, the value is ignored and 0 is assumed.

    emulationType

    string

    Emulation type of the external parity group

    clprId

    int

    Number of CLPR to which the external parity group belongs

    externalProductId

    string

    Storage system that is connected using the external storage connection functionality of Universal Volume Manager

Status codes

For details on the status codes of the request for this operation, see the description on HTTP status codes.

Coding example
curl -v -H "Accept:application/json" -H "Content-Type:application/json" -H "Authorization:Session d7b673af189048468c5af9bcf3bbbb6f" -X GET https://192.0.2.100/ConfigurationManager/v1/objects/external-parity-groups

Getting information about a specific external parity group

The following request gets information about a specific external parity group by specifying the external parity group number.

Execution permission

Storage Administrator (View Only)

Request line

GET base-URL/v1/objects/external-parity-groups/object-ID
Request message
  • Object ID

    Specify the value of externalParityGroupId that was obtained by the processing to get information about the external parity group.

    Attribute

    Type

    Description

    externalParityGroupId

    string

    (Required) External parity group number

  • Query parameters

    None.

  • Body

    None.

Response message
  • Body

    {
      "externalParityGroupId": "1-1",
      "numOfLdevs": 1,
      "usedCapacityRate": 100,
      "availableVolumeCapacity": 0,
      "emulationType": "OPEN-V",
      "clprId": 0,
      "externalProductId": "DF600F",
      "spaces": [
        {
          "partitionNumber": 0,
          "ldevId": 204,
          "status": "NML",
          "lbaLocation": "0x000000000000",
          "lbaSize": "0x000002800500"
        }
      ]
    }

    Attribute

    Type

    Description

    externalParityGroupId

    string

    External parity group number

    numOfLdevs

    int

    Number of LDEVs allocated to the external parity group

    usedCapacityRate

    int

    Usage rate of the external parity group

    availableVolumeCapacity

    long

    Available capacity (free space)

    If the capacity is below 1 GB, the value is ignored and 0 is assumed.

    emulationType

    string

    Emulation type of the external parity group

    clprId

    int

    Number of CLPR to which the external parity group belongs

    externalProductId

    string

    Storage system that is connected using the external storage connection functionality of Universal Volume Manager

    spaces

    objects[]

    For the free space and the LDEV defined in the specified external parity group, the following attributes are output:

    • partitionNumber (long)

      Number of a partition created as a result of partitioning of an external parity group

    • ldevId (int)

      LDEV number

    • status (string)

      LDEV status

      • NML: The LDEV is implemented, or the free space is determined.
      • REG: The LDEV is being created.
      • DEL: The LDEV is being deleted.
    • lbaLocation (string)

      Starting location of the LBA of the partition in the external parity group (in a multiple of 512 bytes)

    • lbaSize (string)

      Size of the partition in the external parity group (in a multiple of 512 bytes)

Status codes

For details on the status codes of the request for this operation, see the description on HTTP status codes.

Coding example
curl -v -H "Accept:application/json" -H "Content-Type:application/json" -H "Authorization:Session d7b673af189048468c5af9bcf3bbbb6f" -X GET https://192.0.2.100/ConfigurationManager/v1/objects/external-parity-groups/1-1

Assigning external parity groups to a CLPR

The following request assigns external parity groups to a CLPR. You can use this API function to assign external parity groups to a created CLPR or to move an already assigned external parity group to a different CLPR.

Execution permission

Storage Administrator (System Resource Management)

Request line
POST base-URL/v1/objects/external-parity-groups/object-ID/actions/assign-clpr/invoke
Request message
  • Object ID

    Specify the value of externalParityGroupId that was obtained by the processing to get information about external parity groups.

    Attribute

    Type

    Description

    externalParityGroupId

    string

    (Required) External parity group number

  • Query parameters

    None.

  • Body

    {
      "parameters": {
        "clprId": 2
      }
    }

    Attribute

    Type

    Description

    clprId

    int

    (Required) CLPR ID of the CLPR to which the external parity group is to be assigned

    Specify a decimal (base 10) number in the range from 0 to 31.

Response message
  • Body

    A job object is returned. For details on attributes other than affectedResources, see the description of job objects.

    Attribute

    Description

    affectedResources

    URL of the external parity group that was assigned to the CLPR

Action template

GET base-URL/v1/objects/external-parity-groups/object-ID/actions/assign-clpr
Status codes

For details on the status codes of the request for this operation, see the description of HTTP status codes.

Coding example

To get an action template:

curl -v -H "Accept:application/json" -H "Content-Type:application/json" -H "Authorization:Session d7b673af189048468c5af9bcf3bbbb6f" -X GET https://192.0.2.100/ConfigurationManager/v1/objects/external-parity-groups/1-1/actions/assign-clpr

To run the request after getting an action template:

curl -v -H "Accept:application/json" -H "Content-Type:application/json" -H "Authorization:Session d7b673af189048468c5af9bcf3bbbb6f" -X POST --data-binary @./InputParameters.json https://192.0.2.100/ConfigurationManager/v1/objects/external-parity-groups/1-1/actions/assign-clpr/invoke

Changing the MP blade assigned to an external parity group

The following request changes the MP blade assigned to an external parity group.

Execution permission

Storage Administrator (System Resource Management)

Request line

POST base-URL/v1/objects/external-parity-groups/object-ID/actions/assign-mp-blade/invoke
Request message
  • Object ID

    Specify the externalParityGroupId value obtained by getting information about the external parity group.

    Attribute

    Type

    Description

    externalParityGroupId

    string

    (Required) External parity group number

  • Query parameters

    None.

  • Body

    {
        "parameters": {
            "mpBladeId": 1
        }
    }

    Attribute

    Type

    Description

    mpBladeId

    int

    (Required) The blade number of the MP blade to be assigned to the external parity group

Response message
  • Body

    A job object is returned. For details about attributes other than affectedResources, see the description of job objects.

    Attribute

    Description

    affectedResources

    URL of the external parity group for which the MP blade was changed

    To check changed setting values, execute the API request for getting information about the external path groups.

Action template

None.

Status codes

For details about the status codes of the request for this operation, see the description of the HTTP status codes.

Coding example
curl -v -H "Accept:application/json" -H "Content-Type:application/json" -H "Authorization:Session d7b673af189048468c5af9bcf3bbbb6f" -X POST --data-binary @./InputParameters.json https://192.0.2.100/ConfigurationManager/v1/objects/external-parity-groups/3-1/actions/assign-mp-blade/invoke

Getting a list of Server Priority Manager information

The following request gets a list of Server Priority Manager information for which operations can be performed by using the REST API. You can check the Server Priority Manager information of hosts for which the LDEV numbers of volumes and the WWNs or iSCSI names of the HBAs have been set.

Execution permission

Storage Administrator (View Only)

Request line
GET base-URL/v1/objects/io-control-ldev-wwns-iscsis
Request message
  • Object ID

    None.

  • Query parameters

    Parameter

    Type

    Filter Condition

    ldevId

    int

    (Optional) Specify the LDEV number as a decimal (base 10) number.

    hostWwn

    string

    (Optional) WWN of the HBA

    Specify a hexadecimal number consisting of 16 characters.

    iscsiName

    string

    (Optional) iSCSI name of the HBA (iSCSI initiator)

    Specify the name in iqn format or eui format.

    • iqn format

      Specify a value consisting of 5 to 223 characters. You can use the following characters:

      Alphanumeric characters, hyphens (-), periods (.), and colons (:)

      Specification example: iqn.rest.example.of.iqn.form

    • eui format

      Specify eui. followed by a hexadecimal number. The specified value must consist of a total of 20 characters.

      Specification example: eui.0900ABDC32598D26

  • Body

    None.

Response message
  • Body

    {
      "data" : [ {
        "ioControlLdevWwnIscsiId" : "0,210003e08b0256f9",
        "ldevId" : 0,
        "hostWwn" : "210003e08b0256f9",
        "priority" : "NonPrioritize",
        "upperLimitForIops" : 9999
      }, {
        "ioControlLdevWwnIscsiId" : "1,210003e08b0256f9",
        "ldevId" : 1,
        "hostWwn" : "210003e08b0256f9",
        "priority" : "NonPrioritize",
        "upperLimitForIops" : 9999
      }, {
        "ioControlLdevWwnIscsiId" : "2,iqn.myrestapiiscsi20150907",
        "ldevId" : 2,
        "iscsiName" : "iqn.myrestapiiscsi20150907",
        "priority" : "NonPrioritize",
        "upperLimitForTransferRate" : 30
      }, {
        "ioControlLdevWwnIscsiId" : "3,iqn.myrestapiiscsi20150907",
        "ldevId" : 3,
        "iscsiName" : "iqn.myrestapiiscsi20150907",
        "priority" : "NonPrioritize",
        "upperLimitForTransferRate" : 30
      } ]
    }

    Attribute

    Type

    Description

    ioControlLdevWwnIscsiId

    string

    Object ID of the SPM information

    ldevId

    int

    LDEV number

    hostWwn

    string

    WWN of the HBA

    iscsiName

    string

    iSCSI name of the HBA (iSCSI initiator)

    priority

    string

    Prioritized or not prioritized

    The value of the SPM setting is output.

    • Prioritize: Prioritized
    • NonPrioritize: Not prioritized

    upperLimitForIops

    int

    Upper limit on IOPS

    upperLimitForTransferRate

    int

    Upper limit on the transfer rate (MBps)

Status codes

For details on the status codes of the request for this operation, see the description of HTTP status codes.

Coding example
curl -v -H "Accept:application/json" -H "Content-Type:application/json" -H "Authorization:Session d7b673af189048468c5af9bcf3bbbb6f" -X GET https://192.0.2.100/ConfigurationManager/v1/objects/io-control-ldev-wwns-iscsis/

Getting Server Priority Manager information by specifying a volume and the WWN or iSCSI name of an HBA

The following request allows you to get Server Priority Manager information by specifying the LDEV number of a volume and the WWN or iSCSI name of an HBA.

Execution permission

Storage Administrator (View Only)

Request line
GET base-URL/v1/objects/io-control-ldev-wwns-iscsis/object-ID
Request message
  • Object ID

    Specify the value of ioControlLdevWwnIscsiId that was obtained by the processing to get the Server Priority Manager list. You can also specify the following attributes, delimited by commas:

    For the WWN:

    ldevId,hostWwn

    For the iSCSI name:

    ldevId,iscsiName

    Attribute

    Type

    Description

    ldevId

    int

    (Required) Specify the LDEV number as a decimal (base 10) number.

    hostWwn

    string

    (Optional) WWN of the HBA

    Specify a hexadecimal number consisting of 16 characters.

    You must specify either the hostWwn attribute or the iscsiName attribute.

    iscsiName

    string

    (Optional) iSCSI name of the iSCSI initiator

    Specify the name in iqn format or eui format.

    • iqn format

      Specify a value consisting of 5 to 223 characters. You can use the following characters:

      Alphanumeric characters, hyphens (-), periods (.), and colons (:)

      Specification example: iqn.rest.example.of.iqn.form

    • eui format

      Specify eui. followed by a hexadecimal number. The specified value must consist of a total of 20 characters.

      Specification example: eui.0900ABDC32598D26

    You must specify either the hostWwn attribute or the iscsiName attribute.

  • Query parameters

    None.

  • Body

    None.

Response message
  • Body

    {
      "ioControlLdevWwnIscsiId" : "0,210003e08b0256f9",
      "ldevId" : 0,
      "hostWwn" : "210003e08b0256f9",
      "priority" : "NonPrioritize",
      "upperLimitForTransferRate" : 30
    }

    Attribute

    Type

    Description

    ioControlLdevWwnIscsiId

    string

    Object ID of the SPM information

    ldevId

    int

    LDEV number

    hostWwn

    string

    WWN of the HBA

    iscsiName

    string

    iSCSI name of the HBA (iSCSI initiator)

    priority

    string

    Prioritized or not prioritized

    The value of the SPM setting is output.

    • Prioritize: Prioritized
    • NonPrioritize: Not prioritized

    upperLimitForIops

    int

    Upper limit on IOPS

    upperLimitForTransferRate

    int

    Upper limit on the transfer rate (MBps)

Status codes

For details on the status codes of the request for this operation, see the description of HTTP status codes.

Coding example
curl -v -H "Accept:application/json" -H "Content-Type:application/json" -H "Authorization:Session d7b673af189048468c5af9bcf3bbbb6f" -X GET https://192.0.2.100/ConfigurationManager/v1/objects/io-control-ldev-wwns-iscsis/0,210003e08b0256f9

Setting Server Priority Manager information by specifying a volume and the WWN or iSCSI name of the HBA

The following request sets, in Server Priority Manager, the upper limit on the transfer rate or IOPS of a low-priority host by specifying the LDEV number of the volume and the WWN or iSCSI name of the HBA.

Note

If the number of volumes for which Server Priority Manager has been configured exceeds 4,096, the hosts of volumes configured after the 4,096th volume will have lower I/O response be lower than the hosts of the first 4,096 volumes to be configured.

Make sure the number of volumes for which Server Priority Manager has been configured does not exceed 4,096.

Execution permission

Storage Administrator (System Resource Management)

Request line
POST base-URL/v1/objects/io-control-ldev-wwns-iscsis
Request message
  • Object ID

    None.

  • Query parameters

    None.

  • Body

    The following coding example sets the upper limit on IOPS:

    {
     "ldevId" : 0,
     "hostWwn" : "210003e08b0256f9",
     "upperLimitForIops" : 9999
    }
    The following coding example sets the upper limit on the transfer rate:
    {
     "ldevId" : 0,
     "iscsiName" : "iqn.myrestapiiscsi20150907",
     "upperLimitForTransferRate" : 30
    }

    Attribute

    Type

    Description

    ldevId

    int

    (Required) Specify the LDEV number as a decimal (base 10) number.

    hostWwn

    string

    (Optional) WWN of the HBA

    Specify a hexadecimal number consisting of 16 characters.

    You must specify either the hostWwn attribute or the iscsiName attribute.

    iscsiName

    string

    (Optional) iSCSI name of the HBA (iSCSI initiator)

    Specify the name in iqn format or eui format.

    • iqn format

      Specify a value consisting of 5 to 223 characters. You can use the following characters:

      Alphanumeric characters, hyphens (-), periods (.), and colons (:)

      Specification example: iqn.rest.example.of.iqn.form

    • eui format

      Specify eui. followed by a hexadecimal number. The specified value must consist of a total of 20 characters.

      Specification example: eui.0900ABDC32598D26

    You must specify either the hostWwn attribute or the iscsiName attribute.

    upperLimitForIops

    int

    (Optional) Upper limit on the IOPS (IOPS)

    Specify a value in the range from 1 to 65535.

    You must specify either the upperLimitForIops attribute or the upperLimitForTransferRate attribute.

    upperLimitForTransferRate

    int

    (Optional) Upper limit on the transfer rate (MBps)

    Specify a value in the range from 1 to 31.

    You must specify either the upperLimitForIops attribute or the upperLimitForTransferRate attribute.

Response message
  • Body

    A job object is returned. For details on attributes other than affectedResources, see the description of job objects.

    Attribute

    Description

    affectedResources

    URL of the specified SPM information

Status codes

For details on the status codes of the request for this operation, see the description of HTTP status codes.

Coding example
curl -v -H "Accept:application/json" -H "Content-Type:application/json" -H "Authorization:Session d7b673af189048468c5af9bcf3bbbb6f" -X POST --data-binary @./InputParameters.json https://192.0.2.100/ConfigurationManager/v1/objects/io-control-ldev-wwns-iscsis/

Changing the Server Priority Manager information

The following request changes the upper limit on the transfer rate or IOPS for hosts for which the LDEV number of a volume and the WWN or iSCSI name of the HBA are already specified in Server Priority Manager.

Execution permission

Storage Administrator (System Resource Management)

Request line
PATCH base-URL/v1/objects/io-control-ldev-wwns-iscsis/object-ID
Request message
  • Object ID

    Specify the value of ioControlLdevWwnIscsiId that was obtained by the processing to get the Server Priority Manager list. You can also specify the following attributes, delimited by commas:

    For the WWN:

    ldevId,hostWwn

    For the iSCSI name:

    ldevId,iscsiName

    Attribute

    Type

    Description

    ldevId

    int

    (Required) Specify the LDEV number as a decimal (base 10) number.

    hostWwn

    string

    (Optional) WWN of the HBA

    Specify a hexadecimal number consisting of 16 characters.

    You must specify either the hostWwn attribute or the iscsiName attribute.

    iscsiName

    string

    (Optional) iSCSI name of the iSCSI initiator

    Specify the name in iqn format or eui format.

    • iqn format

      Specify a value consisting of 5 to 223 characters. You can use the following characters:

      Alphanumeric characters, hyphens (-), periods (.), and colons (:)

      Specification example: iqn.rest.example.of.iqn.form

    • eui format

      Specify eui. followed by a hexadecimal number. The specified value must consist of a total of 20 characters.

      Specification example: eui.0900ABDC32598D26

    You must specify either the hostWwn attribute or the iscsiName attribute.

  • Query parameters

    None.

  • Body

    The following coding example changes the upper limit on IOPS:

    {
      "upperLimitForIops" : 9999
    }
    The following coding example changes the upper limit on the transfer rate:
    {
      "upperLimitForTransferRate": 30
    }

    Attribute

    Type

    Description

    upperLimitForIops

    int

    (Optional) Upper limit (IOPS)

    Specify a value in the range from 1 to 65535.

    You must specify either the upperLimitForIops attribute or the upperLimitForTransferRate attribute.

    upperLimitForTransferRate

    int

    (Optional) Upper limit (transfer rate in MBps)

    Specify a value in the range from 1 to 31.

    You must specify either the upperLimitForIops attribute or the upperLimitForTransferRate attribute.

Response message
  • Body

    A job object is returned. For details on attributes other than affectedResources, see the description of job objects.

    Attribute

    Description

    affectedResources

    URL of the changed SPM information

Action template

None.

Status codes

For details on the status codes of the request for this operation, see the description of HTTP status codes.

Coding example
curl -v -H "Accept:application/json" -H "Content-Type:application/json" -H "Authorization:Session d7b673af189048468c5af9bcf3bbbb6f" -X PATCH --data-binary @./InputParameters.json https://192.0.2.100/ConfigurationManager/v1/objects/io-control-ldev-wwns-iscsis/0,210003e08b0256f9

Deleting Server Priority Manager information

The following request allows you to remove the currently set upper limit on the transfer rate or IOPS of a host by specifying the LDEV number of a volume and the WWN or iSCSI name of the HBA, to remove the host from the management targets of Server Priority Manager.

Execution permission

Storage Administrator (System Resource Management)

Request line
DELETE base-URL/v1/objects/io-control-ldev-wwns-iscsis/object-ID
Request message
  • Object ID

    Specify the value of ioControlLdevWwnIscsiId that was obtained by the processing to get the Server Priority Manager list. You can also specify the following attributes, delimited by commas:

    For the WWN:

    ldevId,hostWwn

    For the iSCSI name:

    ldevId,iscsiName

    Attribute

    Type

    Description

    ldevId

    int

    (Required) Specify the LDEV number as a decimal (base 10) number.

    hostWwn

    string

    (Optional) WWN of the HBA

    Specify a hexadecimal number consisting of 16 characters.

    You must specify either the hostWwn attribute or the iscsiName attribute.

    iscsiName

    string

    (Optional) iSCSI name of the HBA (iSCSI initiator)

    Specify the name in iqn format or eui format.

    • iqn format

      Specify a value consisting of 5 to 223 characters. You can use the following characters:

      Alphanumeric characters, hyphens (-), periods (.), and colons (:)

      Specification example: iqn.rest.example.of.iqn.form

    • eui format

      Specify eui. followed by a hexadecimal number. The specified value must consist of a total of 20 characters.

      Specification example: eui.0900ABDC32598D26

    You must specify either the hostWwn attribute or the iscsiName attribute.

  • Query parameters

    None.

  • Body

    None.

Response message
  • Body

    A job object is returned. For details on attributes other than affectedResources, see the description of job objects.

    Attribute

    Description

    affectedResources

    URL of the deleted SPM information

Status codes

For details on the status codes of the request for this operation, see the description of HTTP status codes.

Coding example
curl -v -H "Accept:application/json" -H "Content-Type:application/json" -H "Authorization:Session d7b673af189048468c5af9bcf3bbbb6f" -X DELETE https://192.0.2.100/ConfigurationManager/v1/objects/io-control-ldev-wwns-iscsis/0,210003e08b0256f9