Storage Operations with Configuration Manager REST API

Document created by Kota Saito on Oct 26, 2016Last modified by Yuki Tanaka on Jul 4, 2017
Version 10Show Document
  • View in full screen mode

Overview

These contents are for storage operations with Configuration Manager (CM) REST API. The REST API is for managing Hitachi storage arrays.

From HAD V8.5.0-00, user can easily consume CM REST API from HAD service by using "JavaScript Plug-in for Configuration Manager REST API". These contents are implemented with it.

Cateogry
TitleDescription
SetupRegister Storage ArrayRegister storage array to Configuration Manager REST. This is needed to manage storage by REST API.
Unregister Storage ArrayUnregister storage array from Configuration Manager REST
OperationsProvisionCreate Volumes

Create new volumes and get list of volumes

ChangeComming soon..
UnprovisionUnallocate Volumes

Unallocate specified volumes by followgins.

  • Delete LUN path
  • Delete volumes (optional)
  • Delete host groups if there is no lun (optional)
Delete LUN PathDelete luns from specified host groups
Delete VolumesDelete specified volumes
Delete Host GroupsDelete host groups from specified ports
UtilitiyFind LUN PathFind LUN path information for specified ldevs
Get Host Group Detail InformationGet detail information for specified host groups. This includes information about how many luns are in host group, and hostport wwns under the host groups.
Comming soon...

 

 

Download

Version
File Description
1Download

The download file includes following contents (service templates) for storage operations with Configuration Manager (CM) REST API.

 

TitleVersionTemplate IDVendor IDDescription HAD Version Related Softwre Version
Register Storage Array00.03.03registerStorageArraycom.hitachiInitial Implementation8.5.0-00Configuration Manager REST (8.5.0-00)
Unregister Storage  Array00.03.05unregisterStorageArray
Unallocate Volumes00.03.05unallocateVolumes
Delete Host Group00.01.01deleteHostGroup
Delete LUN Path00.01.01deleteLunPath
Find LUN Path00.01.00findLunPath
Get Host Group Detail Information00.01.01getHostGroupDetailInformation
2Download
TitleVersionTemplate IDVendor IDDescription HAD Version Related Softwre Version
Create Volumes01.00.03ADADCreate volumes and get list of volumes8.5.2-00Configuration Manager REST (8.5.2-00)

 

How to use

  1. Download file and unzip, then import service templates
  2. Configure Web Service Connections to access CM REST Server. That is, add new entry of connection settings for CM REST Server. The service templates utilizes the information of connection settings (e.g. credential, endpoint) to call CM REST API. (CM REST neeeds to be instlaled in your environment)
    webServiceConnection.png addWebServiceConnection.png
  3. Create services from the service templates. For Configuration Manager REST Settings, specify name of connection settings which you sepcified at the previous step.
    createService.png
  4. Submit Service Request (Note: Detail of each properties of services, see service detail help and description for \each property)detailHelp.png

 

Detail Information

Basically all Configuration Management REST API call is implemented with the built-in plugin "JavaScript Plug-in for Configuration Manager REST API". By this, you can call REST API easily via JavaScript code as in screenshot below. The spec of API (URL, parameters) is same as ones of REST API. In addition, you can easily customize to change the logic to meet your requirement.

The editor has also code assistant feature, and you can find which api can be called and what type of parameters you need to specify.

api.png

 

One you get/create primitive component (e.g. delete lun path, delete volume). You can combine them to achieve more complex use cases by using Service Builder. Following is flow of "Unallocate Volumes" service, and this uses multiple service templates inside it. Finding lun path for specified volumes, deleting them, deleting volumes (optional), getting number of luns in host group, deleting host group if there are no luns (optional).

Of course, you can implement all logic in single script in the plugin.

 

flow.png

1 person found this helpful

Outcomes