Paul Morrissey

Automate Hitachi Storage Infrastructure with PowerShell

Blog Post created by Paul Morrissey Employee on Jan 25, 2019

I often receive questions about programmatic options to manage Hitachi Storage Infrastructure as customers move to higher degrees of automation in their environment. We have many options in this area including CM REST APIs, UCP Advisor, VMware vRealize Orchestrator Connector and Hitachi Snapin adapter for Microsoft PowerShell. One that we probably should highlight more is the Hitachi Infrastructure adapter for PowerShell



The Hitachi Snapin for PowerShell software allows administrators to extend the PowerShell/PowerCLI capabilities in VMware, Microsoft and other environments with access to a set of cmdlets for discovering and managing Hitachi storage which can be included in scripts to accomplish a range of daily infrastructure tasks. This covers tasks for Block Storage and NAS Storage such as creating LUNs, CIFS shares, snapshots, clones, datastores, modifying hostgroups etc. It can also manage multi-site operations between arrays such as enabling replication (truecopy, universal replicator or global active device) on specific LUNs using powershell remoting feature which we support.The scripter can filter, sort, and group the storage information by piping the output of one Hitachi infrastructure cmdlets to other cmdlets.


We now have over 100+ cmdlets that cover key operations that administrators may want to automate. (I pasted the list below for google search). Simply, add the Snapin, add-storagedevice and ready to execute cmdlets against storage.


Go to and download the free PowerShell adapter ( I had it placed in the VMware adapter section for convenience) and review the admin guide in the package for complete list of cmdlets. We are on version 1.1 so always great to hear feedback on cmdlets that we should be adding going forward.




PS C:\Program Files\Hitachi\SystemCenter\HiPowerShellInfrastructure> Get-Command -Module
CommandType Name Version Source
----------- ---- ------- ------
Cmdlet Add-CIFSShareAccessAuthentication
Cmdlet Add-FileServer
Cmdlet Add-HostGroupToResourceGroup
Cmdlet Add-HostgroupWWN
Cmdlet Add-iSCSIInitiator
Cmdlet Add-iSCSILU
Cmdlet Add-iSCSITargetToResourceGroup
Cmdlet Add-LUToResourceGroup
Cmdlet Add-PortToResourceGroup
Cmdlet Add-QuorumDisk
Cmdlet Add-StorageDevice
Cmdlet Allow-SystemDriveAccess
Cmdlet Clone-FSDirectory
Cmdlet Create-CciConfiguration
Cmdlet Create-CIFSShare
Cmdlet Create-Clone
Cmdlet Create-EnterpriseSnapshot
Cmdlet Create-EVS
Cmdlet Create-FileClone
Cmdlet Create-Filesystem
Cmdlet Create-FSDirectory
Cmdlet Create-FSiSCSILogicalUnit
Cmdlet Create-FSiSCSITarget
Cmdlet Create-FSSnapshot
Cmdlet Create-FSStoragePool
Cmdlet Create-FSVirtualVolume
Cmdlet Create-FSVirtualVolumeQuota
Cmdlet Create-GADPair
Cmdlet Create-Hostgroup
Cmdlet Create-iSCSITarget
Cmdlet Create-Journal
Cmdlet Create-LU
Cmdlet Create-ModularSnapshot
Cmdlet Create-MultiSiteTrueCopy
Cmdlet Create-MultiSiteUniversalReplicatorPair
Cmdlet Create-NFSExport
Cmdlet Create-RemoteClone
Cmdlet Create-SnapOnSnapPair
Cmdlet Create-Snapshot
Cmdlet Create-StoragePool
Cmdlet CreateVirtualBox-ResourceGroup
Cmdlet Create-VVOL
Cmdlet Delete-CIFSShare
Cmdlet Delete-CIFSShareAccessAuthentication
Cmdlet Delete-Clone
Cmdlet Delete-EVS
Cmdlet Delete-Filesystem
Cmdlet Delete-FSDirectory
Cmdlet Delete-FSiSCSILogicalUnit
Cmdlet Delete-FSiSCSITarget
Cmdlet Delete-FSSnapshot
Cmdlet Delete-FSStoragePool
Cmdlet Delete-FSVirtualVolume
Cmdlet Delete-FSVirtualVolumeQuota
Cmdlet Delete-GADPair
Cmdlet Delete-Hostgroup
Cmdlet Delete-iSCSITarget
Cmdlet Delete-Journal
Cmdlet Delete-LU
Cmdlet Delete-NFSExport
Cmdlet Delete-RemoteClone
Cmdlet Delete-ReplicationPairGroup
Cmdlet Delete-ResourceGroup
Cmdlet Delete-Snapshot
Cmdlet Delete-StoragePool
Cmdlet Deny-SystemDriveAccess
Cmdlet Disable-EVS
Cmdlet Edit-HostgroupHostMode
Cmdlet Enable-CommandDevice
Cmdlet Enable-EVS
Cmdlet Expand-Filesystem
Cmdlet Expand-FSStoragePool
Cmdlet Expand-Journal
Cmdlet Expand-LU
Cmdlet Expand-StoragePool
Cmdlet Format-Filesystem
Cmdlet Get-CIFSShare
Cmdlet Get-CIFSShareAccessAuthentication
Cmdlet Get-Clone
Cmdlet Get-Controller
Cmdlet Get-Drive
Cmdlet Get-EVS
Cmdlet Get-FileServer
Cmdlet Get-FileServerNodes
Cmdlet Get-Filesystem
Cmdlet Get-FreeConsistencyGroup
Cmdlet Get-FreeLU
Cmdlet Get-FSiSCSIAggregateGroups
Cmdlet Get-FSiSCSIDomainName
Cmdlet Get-FSiSCSILogicalUnit
Cmdlet Get-FSiSCSITarget
Cmdlet Get-FSSnapshot
Cmdlet Get-FSStoragePool
Cmdlet Get-FSVirtualVolume
Cmdlet Get-FSVirtualVolumeQuota
Cmdlet Get-GADPair
Cmdlet Get-HitachiDisk
Cmdlet Get-Hostgroup
Cmdlet Get-iSCSITarget
Cmdlet Get-Journal
Cmdlet Get-LinkAggregation
Cmdlet Get-LU
Cmdlet Get-LUPerformance
Cmdlet Get-NFSExport
Cmdlet Get-Port
Cmdlet Get-PortLoginWWNs
Cmdlet Get-PortPerformance
Cmdlet Get-QuorumDisk
Cmdlet Get-RemoteClone
Cmdlet Get-ReplicationPairGroup
Cmdlet Get-ResourceGroup
Cmdlet Get-Snapshot
Cmdlet Get-StorageDevice
Cmdlet Get-StoragePool
Cmdlet Get-SystemDrive
Cmdlet Get-Version
Cmdlet Get-VirtualStorageDevice
Cmdlet Lock-ResourceGroup
Cmdlet Map-FloatingVVol
Cmdlet Map-VirtualLU
Cmdlet Modify-CIFSShare
Cmdlet Modify-FSiSCSILogicalUnit
Cmdlet Modify-FSiSCSITarget
Cmdlet Modify-FSVirtualVolume
Cmdlet Modify-FSVirtualVolumeQuota
Cmdlet Modify-NFSExport
Cmdlet Modify-SysLock
Cmdlet Mount-CIFSShare
Cmdlet Mount-Filesystem
Cmdlet Mount-FSiSCSILogicalUnit
Cmdlet Mount-LU
Cmdlet Present-LU
Cmdlet Present-LUAsNASDrive
Cmdlet Remove-FileServer
Cmdlet Remove-HostGroupFromResourceGroup
Cmdlet Remove-HostgroupWWN
Cmdlet Remove-iSCSIInitiator
Cmdlet Remove-iSCSILU
Cmdlet Remove-iSCSITargetFromResourceGroup
Cmdlet Remove-LUFromResourceGroup
Cmdlet Remove-PortFromResourceGroup
Cmdlet Remove-QuorumDisk
Cmdlet Rename-Filesystem
Cmdlet Reserve-LUForGAD
Cmdlet Restore-Filesystem
Cmdlet Restore-ReplicationPairGroup
Cmdlet Resync-Clone
Cmdlet Resync-GADPair
Cmdlet Resync-RemoteClone
Cmdlet Resync-ReplicationPairGroup
Cmdlet Resync-Snapshot
Cmdlet Set-FSiSCSIDomainName
Cmdlet Set-HDPPoolThreshold
Cmdlet Shrink-Journal
Cmdlet Shrink-StoragePool
Cmdlet Split-Clone
Cmdlet Split-GADPair
Cmdlet Split-RemoteClone
Cmdlet Split-ReplicationPairGroup
Cmdlet Split-Snapshot
Cmdlet UnLock-ResourceGroup
Cmdlet Unmap-FloatingVVol
Cmdlet Unmap-VirtualLU
Cmdlet Unmount-CIFSShare
Cmdlet Unmount-Filesystem
Cmdlet Unmount-FSiSCSILogicalUnit
Cmdlet Unmount-LU
Cmdlet Unpresent-LU
Cmdlet Unpresent-LUAsNASDrive