EMC – Naviseccli, disks and Virtual Pools

EMC seem to be calling Storage Pools Virtual Pools now. Or maybe they always called them that. I’m not sure. Whatever you want to call them, you need to be aware that some of the commands you traditionally ran on RAID Groups and LUNs doesn’t necessarily yield the same results on Pools. For example, if I want some information on a disk and any LUNs bound on it, I can run the following command, with the disk referenced using B_E_D (Bus_Enclosure_Device) format.

naviseccli -h sp-ip-address getdisk 0_2_5

Bus 0 Enclosure 2  Disk 5
Vendor Id:             SEAGATE
Product Id:            ST345085 CLAR450
Product Revision:        HC08
Lun:                     Unbound
Type:                    N/A
State:                   Enabled
Hot Spare:               NO
Prct Rebuilt:            Unbound
Prct Bound:              Unbound
Serial Number:           3QQ1WJW9
Sectors:                 N/A
Capacity:                412268
Private:                 Unbound
Bind Signature:          0x514, 2, 5
Hard Read Errors:        0
Hard Write Errors:       0
Soft Read Errors:        0
Soft Write Errors:       0
Read Retries:     N/A
Write Retries:    N/A
Remapped Sectors:        N/A
Number of Reads:         132578985
Number of Writes:        55935766
Number of Luns:          0
Raid Group ID:           N/A
Clariion Part Number:    DG118032601
Request Service Time:    N/A
Read Requests:           132578985
Write Requests:          55935766
Kbytes Read:             956277952
Kbytes Written:          805876939
Stripe Boundary Crossing: None
Drive Type:              Fibre Channel
Clariion TLA Part Number:005048849
User Capacity:           0
Idle Ticks:              166532928
Busy Ticks:              7964279
Current Speed: 4Gbps
Maximum Speed: 4Gbps

Note that it says the LUN is unbound. It’s not unbound though, it’s part of a Storage Pool. So to get information about the LUNs in a Pool, you’ll need to run a command which specifically addresses Storage Pools.

naviseccli -h sp-ip-address storagepool –list [-id poolID|-name poolName] [-availableCap] [-consumedCap] [-currentOp] [-description] [-disks] [-diskType] [-luns] [-opState] [-opStatus] [-prcntOp] [-rawCap] [-rtype] [-prcntFullThreshold] [-state] [-status] [-subscribedCap] [-userCap] [-prcntFull]

You can’t use -id and -name together. To see the overhead of using pool storage, -consumedCap will give you the total. Unfortunately -diskType is not as useful as I’d hoped, because if you’re running different types it comes back with “Mixed”.

If you want to modify a pool’s configuration, you can use -modify to, er, modify the pool.

naviseccli -h sp-ip-address storagepool -modify -id poolID| -name poolName[-newName newName] [-description description] [-fastcache on|off] [-prcntFullThreshold threshold] [-autotiering scheduled|manual] [-o]

The cool thing about this is that you can turn FAST Cache on and off, and use it to modify FAST auto-tiering as well. This could be very useful where you want to script for certain workloads to use FAST Cache during the day, but then you want to have it off during backup windows.

Finally, my favourite switch is -feature -info, which lists a pool’s configuration information.

naviseccli -h sp-ip-address storagepool -feature -info [-isVirtualProvisioningSupported] [-maxPools] [-maxDiskDrivesPerPool] [-maxDiskDrivesAllPools] [-maxDiskDrivesPerOp] [-maxPoolLUNs] [-minPoolLUNSize] [-maxPoolLUNSize] [-numPools] [-numPoolLUNs] [-numThinLUNs] [numDiskDrivesAllPools] [-availableDisks]

The main feature of this command is that you don’t need to remember the maximum numbers of disks you can put in a pool. In an environment where you may have a number of different models of CLARiiON and / or VNX, this will save some time digging through various pdf files from EMC.