CLIQ
The SAN/iQ Command-Line Interface
User Guide
Overview
The SAN/iQ command-line interface (CLI) is built upon the SAN/iQ API released with
version 8.x. Develop your own automation, scripting and management using the CLI.
For instructions about using the CLI, see the Syntax section, immediately following
this introduction.
The section on Global Parameters describes functionality that applies to the entire
CLI and includes commands to customize global operations.
System Requirements
Windows Server 2003 SP1
Windows Server 2003 R2
Windows Server 2008 R2
Windows XP SP2
Windows Vista
10 MB available space
Installing the CLI
Install the CLI from the HP StorageWorks P4000 Management Software for Microsoft
Windows DVD. The installation wizard automatically installs the command-line software
to the following default location in Windows:
C:\Program Files\HP\P4000\HP P4000 CLI
and sets the environment variable.
Sample Scripts
You can obtain sample scripts from the HP website:
www.hp.com/go/P4000downloads.
On-System CLI
The CLI is installed on storage systems and can be accessed by SSH.
Log in to the on-system CLI using the system IP address and the designated port
16022.
If logging in from a command line, you must type the following command:
ssh –p 16022 -l <user> <NSM-IP>
AX696-96026 November 2010
Commands
Syntax ................................................................................................................................... 7
Parameter ordering ........................................................................................................................7
Case sensitivity ..............................................................................................................................7
True/False .....................................................................................................................................7
Command abbreviation ..................................................................................................................7
OS error code integration ...............................................................................................................7
Composite commands ....................................................................................................................8
Size specification............................................................................................................................8
Password prompt ...........................................................................................................................8
Key file ..........................................................................................................................................9
DNS names ....................................................................................................................................9
Storage System CLI .........................................................................................................................9
Integrated command shell ..............................................................................................................9
Global parameters ............................................................................................................... 10
prompt=<true | false> .................................................................................................................. 10
output=<XML | Normal> .............................................................................................................. 10
separator=<c> .............................................................................................................................. 10
inputFile=<file> ............................................................................................................................ 10
Commands .......................................................................................................................... 11
addVirtualManager ...................................................................................................................... 12
assignVolume .............................................................................................................................. 13
assignVolumeChap ....................................................................................................................... 15
assignVolumeToServer ................................................................................................................. 17
cacheCredentials .......................................................................................................................... 18
cancelRemoteSnapshot ................................................................................................................ 19
clearAlertsPolicy .......................................................................................................................... 20
clearCredentials ........................................................................................................................... 21
clearDnsInfo ................................................................................................................................ 22
clearEmailServerInfo .................................................................................................................... 23
clearSnmpNotifyPolicy ................................................................................................................. 24
clearSnmpServiceInfo .................................................................................................................. 25
clearVssVolumeFlags .................................................................................................................... 26
cloneSnapshot ............................................................................................................................. 27
configureRaid .............................................................................................................................. 28
connectVolume ............................................................................................................................ 29
convertSnapshotTempSpace ........................................................................................................ 30
createAdminGroup ...................................................................................................................... 31
createAdminUser ......................................................................................................................... 33
createCluster ............................................................................................................................... 34
createEmailNotifyPolicy ............................................................................................................... 35
createGroup ................................................................................................................................ 37
createKey .................................................................................................................................... 38
createRemoteAssociation ............................................................................................................ 39
createRemoteSnapshot ................................................................................................................ 41
createServer ................................................................................................................................ 43
createSite .................................................................................................................................... 45
createSnapshot ............................................................................................................................ 46
createSnapshotSchedule .............................................................................................................. 47
createSnmpCommunityString ....................................................................................................... 49
createSnmpTrapTarget ................................................................................................................. 50
createSyslogNotifyPolicy .............................................................................................................. 51
createVolume .............................................................................................................................. 52
deleteAdminGroup ...................................................................................................................... 54
deleteAdminUser ......................................................................................................................... 55
deleteCluster ............................................................................................................................... 56
deleteEmailNotifyPolicy ............................................................................................................... 57
deleteGroup ................................................................................................................................ 58
deleteRemoteAssociation ............................................................................................................ 59
deleteServer ................................................................................................................................ 60
deleteSite .................................................................................................................................... 61
deleteSnapshot ............................................................................................................................ 62
deleteSnapshotSchedule .............................................................................................................. 63
deleteSnapshotTempSpace .......................................................................................................... 64
deleteSnmpCommunityString ....................................................................................................... 65
deleteSnmpTrapTarget................................................................................................................. 66
deleteSyslogNotifyPolicy .............................................................................................................. 67
deleteVirtualManager .................................................................................................................. 68
deleteVolume .............................................................................................................................. 69
disconnectLocalVolume ............................................................................................................... 70
discoverTcp ................................................................................................................................. 71
discoverUdp ................................................................................................................................ 72
getAlertLog .................................................................................................................................. 73
getClusterInfo .............................................................................................................................. 74
getDnsInfo ................................................................................................................................... 75
getEventLog ................................................................................................................................. 76
getGroupInfo ............................................................................................................................... 78
getLocalVolumes .......................................................................................................................... 79
getNotificationPolicy .................................................................................................................... 80
getNsmInfo .................................................................................................................................. 81
getNsmLogs ................................................................................................................................. 82
getPerformanceStats ................................................................................................................... 83
getRemoteSnapshotInfo .............................................................................................................. 84
getScsiInfo ................................................................................................................................... 85
getServerCapabilities ................................................................................................................... 86
getServerInfo ............................................................................................................................... 87
getServerVolumeInfo ................................................................................................................... 88
getSiteInfo ................................................................................................................................... 89
getSnapshotInfo .......................................................................................................................... 90
getSnapshotScheduleInfo ............................................................................................................. 91
getSnmpInfo ................................................................................................................................ 92
getSupportInfo ............................................................................................................................ 93
getSystemInfo .............................................................................................................................. 94
getVolumeInfo ............................................................................................................................. 95
help ............................................................................................................................................. 96
makePrimary ............................................................................................................................... 97
makeRemote ............................................................................................................................... 98
modifyAdminGroup ..................................................................................................................... 99
modifyAdminUser ...................................................................................................................... 101
modifyCluster ............................................................................................................................ 102
modifyEmailNotifyPolicy ............................................................................................................ 104
modifyGroup ............................................................................................................................. 106
modifyRemoteAssociation ......................................................................................................... 108
modifyRemoteSnapshotSchedule ............................................................................................... 110
modifyServer ............................................................................................................................. 111
modifySite ................................................................................................................................. 113
modifySnapshot ......................................................................................................................... 114
modifySnapshotSchedule ........................................................................................................... 115
modifySnmpCommunityString.................................................................................................... 116
modifySnmpTrapTarget ............................................................................................................. 117
modifySyslogNotifyPolicy ........................................................................................................... 118
modifyVolume ........................................................................................................................... 119
provisionVolume........................................................................................................................ 121
rebalanceVip ............................................................................................................................. 123
recoverQuorum ......................................................................................................................... 124
removeSnapshot ........................................................................................................................ 125
removeVolume .......................................................................................................................... 126
resetSession .............................................................................................................................. 127
rollbackSnapshot ....................................................................................................................... 128
runDiagnostic ............................................................................................................................ 129
setAlertsPolicy ........................................................................................................................... 130
setDnsInfo ................................................................................................................................. 131
setEmailServerInfo ..................................................................................................................... 132
setGossipList .............................................................................................................................. 133
setLicenseKey ............................................................................................................................ 134
setSnmpNotifyPolicy .................................................................................................................. 135
setSnmpServiceInfo ................................................................................................................... 136
shutdownGroup ......................................................................................................................... 137
shutdownNsm ........................................................................................................................... 138
startManager ............................................................................................................................. 139
startSnmpService ....................................................................................................................... 140
startVirtualManager .................................................................................................................. 141
stopManager ............................................................................................................................. 142
stopSnmpService ....................................................................................................................... 143
stopVirtualManager ................................................................................................................... 144
testCredentials .......................................................................................................................... 145
unassignVolume ........................................................................................................................ 146
unassignVolumeToServer ........................................................................................................... 147
vssSnapshot ............................................................................................................................... 148
waitForEvent ............................................................................................................................. 150
waitForUpdate ........................................................................................................................... 151
Return Codes ..................................................................................................................... 152
Syntax
CLIQ is the command-line interface (CLI) for the HP P4000 Storage Solution. The CLI
specifies parameters in the form parameter=<parameter> (specification), rather than
dictating a particular order (positional) notation.
Parameter ordering
Ordering of parameters is not specified. Any order will do. For example:
cliq deleteVolume volumeName=theVolume userName=user passWord=secret
login=10.1.2.3
is equivalent to
cliq deleteVolume login=10.1.2.3 passWord=secret userName=user
volumeName=theVolume
The method parameter may be optionally specified as "method=<command>":
cliq userName=user passWord=secret login=10.1.2.3 volumeName=theVolume
method=deleteVolume
Case sensitivity
All commands and parameter names are case-insensitive. "createVolume" is the same
as "CreateVolume" is the same as "CREATEVOLUME". In some cases, parameter
values, while not sensitive, are case significant as the system will preserve the case
specified. For example, the description parameter value in the createVolume
command will preserve the case specified by the caller, and impose this on the newly
created volume.
True/False
Any parameter that indicates true/false, may be specified as "1|0" or "true|false".
Command abbreviation
There is no command or parameter abbreviation in the CLI when scripted. All
commands and parameter names must be fully specified. This is to prevent ambiguity
in legacy scripts if new commands or parameters are added.
OS error code integration
The CLI will map error codes to reasonable OS status codes (status in Linux,
ERRORLEVEL in DOS). Since these are limited to 0..255, some of the OS errors may
have less granularity than the API error codes.
Composite commands
Some commands take multiple elements for the parameter value. In this case, the
parameter is interpreted as an delimiter-separated ordered list. For example:
volumeName=volume1;volume2
login=10.0.1.2;10.1.2.3;10.2.3.4
If a parameter contains fewer elements in the list than needed for the composite
command, the last one in the list will be repeated. There must be at least one element
in the list, if it's required.
Size specification
When volume sizes or thresholds are specified, the format is <size><units>, where units
are:
MB - megabytes (2^20)
GB - gigabytes (2^30)
TB - terabytes (2^40)
There is no default for size units - the units must be specified.
These are defined as International System of Units (SI) for file storage (popular use).
Some values may be specified as either a size or percentage, for example,
reserveQuota. The units will determine how this is interpreted. For example:
10MB - 1,048,576 bytes
10GB - 10,737,418,240 bytes
10% - 1/10 of the current volume size
Password prompt
When credentials are required in the CLI, you may not want to display the password by
typing the "password=" parameter. If the username parameter is specified without the
password parameter,
you will be prompted interactively for the password. This password will not be
displayed.
cliq getGroupInfo login=10.0.1.2 username=admin
password: *******
Key file
Instead of specifying username/password parameters, you may choose to specify an
encrypted key file which contains the credentials.
This file can be kept in a secure location, or otherwise access-controlled. To create
this file, use the createKey command.
cliq createKey login=10.0.1.2 username=admin password=secret keyfile=key.dat
cliq getGroupInfo login=10.0.1.2 keyfile=key.dat
DNS names
You can also specify managers as a host name, provided they can be resolved by DNS:
cliq getGroupInfo login=Exchange-1 username=admin password=secret
Storage System CLI
When commands are executed on the storage systems (via SSH), no authentication
parameters are required:
getGroupInfo
Integrated command shell
The CLIQ command line has an integrated shell that's executed by default when
connecting directly to a storage system, or running cliq.exe without any parameters:
>cliq
SAN/iQ Command Line Interface, v9.0 (type exit to quit)
(C) Copyright 2007-2009 Hewlett-Packard Development Company, L.P.
CLIQ>
The integrated shell supports rich command line editing features specific to the HP
P4000 API. The following editing keys are supported:
Key Meaning
LEFT Moves the cursor one space to the left.
RIGHT Moves the cursor one space to the right.
BACKSPACE Deletes the character under the cursor and moves it to the left.
DELETE Deletes the character under the cursor.
UP Recalls the previous command entered.
DOWN Recalls the first command entered.
HOME Moves the cursor to the beginning of the line.
END Moves the cursor to the end of the line.
ESCAPE Clears the current command line.
INSERT Toggles between insert mode (the default) and overwrite mode.
TAB Completes the command.
Global parameters
prompt=<true | false>
Some potentially destructive commands prompt before proceeding. This default
behavior can be turned off by specifying "prompt=false".
output=<XML | Normal>
In the default case, the CLI returns information to standard output, formatted in a way
that's easy to read rather than easy to parse. The XML setting returns all output
information as an XML document, allowing easier parsing of the result. There is no
guarantee that newer versions of the API will preserve the same formatting in the
default case. It is strongly discouraged to use this form of the CLI programmatically. If
the output needs to be parsed, the XML variant is preferred.
separator=<c>
Some CLI parameters comprise parameters for multiple operations. For example, the
"snapshotVolumes" command allows the user to specify simultaneous snapshotting of
multiple volumes. In this scenario, some parameters specify an ordered list that apply
to each snapshot in succession. For example:
description="This applies to snapshot1;This applies to snapshot2"
The default separator character is a semicolon (';'). This can be overridden with the
separator parameter in the event that the default separator is in the body of a
parameter.
description="This applies to snapshot1;This applies to snapshot2"
inputFile=<file>
This takes all command input from a file containing XML input.
Commands
The following section lists the commands supported
addVirtualManager
This command adds a virtual manager to a group.
Availability: Windows, SAN/iQ
Required Parameters:
login
The IP address or DNS-resolvable names of one or more storage systems
userName
The authentication user name for the group
passWord
The password for the group
keyFile
The encrypted key file (this is specified instead of the username and password parameters)
Optional Parameters:
none
Example Command:
cliq addVirtualManager login=10.0.1.2 userName=admin passWord=secret
assignVolume
This command assigns a volume to a server. This assignment sets the access to a
volume, based on host iqn(s).
Availability: Windows, SAN/iQ
Required Parameters:
login
The IP address or DNS-resolvable names of one or more storage systems
userName
The authentication user name for the group
passWord
The password for the group
keyFile
The encrypted key file (this is specified instead of the username and password parameters)
volumeName
The name of the volume
Optional Parameters:
namePrefix
A prefix string for newly created objects. A unique number value will be concatenated to this
prefix to guarantee name uniqueness.
accessRights
The access rights to the volume
r - read-only
w - write-only
rw - read-write (default)
initiator
A semicolon delimited string of host IQN's. If this is not specified, the IQN of the local server is
used (this parameter is required if run on a storage system).
vipLoadBalance
Use VIP load balancing for this host. This can be one of:
0
1 - default
exclusiveAccess
Remove any previous server access rights to this volume. This can be one of:
0
1 - default
Example Command:
cliq assignVolume volumeName=TheVolume
initiator=iqn.1991-05.com.microsoft:w-gregorio.corp.lefthandnetworks.com
login=10.0.1.2 userName=admin passWord=secret
assignVolumeChap
This command assigns a volume to a server. This assignment sets the access to a
volume, using CHAP authentication.
Availability: Windows, SAN/iQ
Required Parameters:
login
The IP address or DNS-resolvable names of one or more storage systems
userName
The authentication user name for the group
passWord
The password for the group
keyFile
The encrypted key file (this is specified instead of the username and password parameters)
volumeName
The name of the volume
targetSecret
The CHAP target secret for the volume.
Optional Parameters:
namePrefix
A prefix string for newly created objects. A unique number value will be concatenated to this
prefix to guarantee name uniqueness.
accessRights
The access rights to the volume
r - read-only
w - write-only
rw - read-write (default)
chapName
The CHAP name for the volume. If this is not specified, the IQN of the local server is used (this
parameter is required if run on a storage system).
initiatorSecret
The CHAP initiator secret for the volume.
vipLoadBalance
Use VIP load balancing for this host. This can be one of:
0
1 - default
exclusiveAccess
Remove any previous server access rights to this volume. This can be one of:
0
1 - default
Example Command:
cliq assignVolumeChap volumeName=TheVolume targetSecret=HolyHandGrenade
login=10.0.1.2 userName=admin passWord=secret
assignVolumeToServer
This command assigns a volume to a server.
Availability: Windows, SAN/iQ
Required Parameters:
login
The IP address or DNS-resolvable names of one or more storage systems
userName
The authentication user name for the group
passWord
The password for the group
keyFile
The encrypted key file (this is specified instead of the username and password parameters)
volumeName
The name of the volume
serverName
The name of the server
Optional Parameters:
accessRights
The access rights to the volume
r - read-only
w - write-only
rw - read-write (default)
Example Command:
cliq assignVolumeToServer volumeName=TheVolume serverName=TheServer
login=10.0.1.2 userName=admin passWord=secret
cacheCredentials
This command caches the management group credentials and IP addresses in the
registry.
Availability: Windows
Required Parameters:
userName
The authentication user name for the group
passWord
The password for the group
keyFile
The encrypted key file (this is specified instead of the username and password parameters)
groupName
The name of the group
Optional Parameters:
none
Example Command:
cliq cacheCredentials groupName=TheGroup userName=admin passWord=secret
cancelRemoteSnapshot
This command cancels a remote snapshot.
Availability: Windows, SAN/iQ
Required Parameters:
login
The IP address or DNS-resolvable names of one or more storage systems. This is the login
information for the remote group containing the specified snapshot.
userName
The authentication user name for the group
passWord
The password for the group
keyFile
The encrypted key file (this is specified instead of the username and password parameters)
snapshotName
The name of the remote snapshot
Optional Parameters:
none
Example Command:
cliq cancelRemoteSnapshot snapshotName=TheSnapshot login=10.0.1.2
userName=admin passWord=secret
clearAlertsPolicy
This command clears the Alerts and Events Policy information
Availability: Windows, SAN/iQ
Required Parameters:
login
The IP address or DNS-resolvable names of one or more storage systems. This is the login
information for the remote group containing the specified snapshot.
userName
The authentication user name for the group
passWord
The password for the group
keyFile
The encrypted key file (this is specified instead of the username and password parameters)
Optional Parameters:
none
Example Command:
cliq clearAlertsPolicy login=10.0.1.3 userName=admin passWord=secret
clearCredentials
This command removes the management group credentials from the cache.
Availability: Windows
Required Parameters:
groupName
The name of the group
Optional Parameters:
none
Example Command:
cliq clearCredentials groupName=TheGroup
clearDnsInfo
This command clears the DNS settings.
Availability: Windows, SAN/iQ
Required Parameters:
login
The IP address or DNS-resolvable names of one or more storage systems
userName
The authentication user name for the group
passWord
The password for the group
keyFile
The encrypted key file (this is specified instead of the username and password parameters)
Optional Parameters:
none
Example Command:
cliq clearDnsInfo login=10.0.1.3 userName=admin passWord=secret
clearEmailServerInfo
This command clears the email server settings.
Availability: Windows, SAN/iQ
Required Parameters:
login
The IP address or DNS-resolvable names of one or more storage systems
userName
The authentication user name for the group
passWord
The password for the group
keyFile
The encrypted key file (this is specified instead of the username and password parameters)
Optional Parameters:
none
Example Command:
cliq clearEmailServerInfo login=10.0.1.3 userName=admin passWord=secret
clearSnmpNotifyPolicy
This command clears the SNMP Notification Policy settings.
Availability: Windows, SAN/iQ
Required Parameters:
login
The IP address or DNS-resolvable names of one or more storage systems
userName
The authentication user name for the group
passWord
The password for the group
keyFile
The encrypted key file (this is specified instead of the username and password parameters)
Optional Parameters:
none
Example Command:
cliq clearSnmpNotifyPolicy login=10.0.1.3 userName=admin passWord=secret
clearSnmpServiceInfo
This command clears the SNMP Server Info.
Availability: Windows, SAN/iQ
Required Parameters:
login
The IP address or DNS-resolvable names of one or more storage systems
userName
The authentication user name for the group
passWord
The password for the group
keyFile
The encrypted key file (this is specified instead of the username and password parameters)
Optional Parameters:
none
Example Command:
cliq clearSnmpServiceInfo login=10.0.1.3 userName=admin passWord=secret
clearVssVolumeFlags
This command resets snapshot flags in the vss volume.
Availability: Windows
Required Parameters:
volumeName
The name of the volume
Optional Parameters:
none
Example Command:
cliq clearVssVolumeFlags volumeName=x:
cloneSnapshot
This command creates one or more SmartClone volumes from a SAN/iQ snapshot.
These SmartClone volumes have all the functionality of normal volumes.
Availability: Windows, SAN/iQ
Required Parameters:
login
The IP address or DNS-resolvable names of one or more storage systems
userName
The authentication user name for the group
passWord
The password for the group
keyFile
The encrypted key file (this is specified instead of the username and password parameters)
snapshotName
The name of a snapshot for the SmartClone volumes.
volumeName
The name of the SmartClone volume, or volumes to create from the snapshot
Optional Parameters:
none
Example Command:
cliq cloneSnapshot snapshotName=Snapshot1 volumeName=MyClone1;MyClone2
login=10.0.1.2 userName=admin passWord=secret
configureRaid
This command reconfigures the RAID setting on a storage system.
Availability: Windows, SAN/iQ
Required Parameters:
login
The IP address or DNS-resolvable name of a storage system
userName
The authentication user name for the storage system
passWord
The password for the storage system
keyFile
The encrypted key file (this is specified instead of the username and password parameters)
configuration
The RAID type to set. The possible RAID levels are reported in the getNsmInfo call.
Optional Parameters:
none
Example Command:
cliq configureRaid configuration="RAID10" login=10.0.1.2 userName=admin
passWord=secret
connectVolume
This command connects an already present array volume to an application server host.
Availability: Windows
Required Parameters:
login
The IP address or DNS-resolvable names of one or more storage systems
userName
The authentication user name for the group
passWord
The password for the group
keyFile
The encrypted key file (this is specified instead of the username and password parameters)
volumeName
The name of the volume
Optional Parameters:
none
Example Command:
cliq connectVolume volumeName=MyVolume login=10.1.2.3 userName=admin
passWord=secret
convertSnapshotTempSpace
This command converts snapshot temporary space to a volume.
Availability: Windows, SAN/iQ
Required Parameters:
login
The IP address or DNS-resolvable names of one or more storage systems
userName
The authentication user name for the group
passWord
The password for the group
keyFile
The encrypted key file (this is specified instead of the username and password parameters)
volumeName
The name of the volume created from the conversion
snapshotName
The name of the snapshot
Example Command:
cliq convertSnapshotTempSpace snapshotName=MySnapshot volumeName=NewVolume
login=10.1.2.3 userName=admin passWord=secret