I bet that every storage admin has a track of their Flogi DB and Zones in their SAN. But I really don’t keep !. Well when someone asks me. Hi dude you screwed up the zonning and my servers are down . “Wake up call !!!” . I will login to every switches, Start checking zones, compare with my pretty old database. Realize the data mismatch ! Ka-Boom !!!! End of story !
Well if you keep a track of your FLDB count and zones on a daily basis, on a huge and busyenvironment with lot of fabrics, then you are Super Man. But in reality, After running behind Changes, Incidents, Calls and other junk work.. A day well spent. Oh my gosh you are out of time. You will keep this work “Collecting FLDB and Zone Count” for the next day. And rest assured. Tomorrow never dies !!!
So, writing a PowerShell script to do this task on a daily/weekly but not on a monthly basis ,will keep your guard up. Hell yeah ! Nobody will ever come and tell you about your SAN switches alerts. The day you see an abnormal change of count in the report, You can dig into the respective switches, look for changes and alert the team or fix by yourself. Yeah man. Now we are talking.
You can download the script here
Finding from the output of this script
- The Flogi on the Switch SW6 has decreased (Path down)
- Change in Zones
To run the script yo need to have plink on your system.
Update the complete path of plink on \res\Commands\plinkpath.txt
As a storage engineer, most of us have got a chance to work on the EMC VNX aka CX5. The block architecture is similar to EMC Clariion. The EMC Unity also inherit the same design form VNX. This topic cover the CLI aspect of VNX. The Unisphere is a very good tool, pretty straight forward. Any beginner can master till L2 tasks on this device. That is the best part of VNX. Often people have trouble login to Unisphere because of the dependency with JAVA and security configuration mismatch.
NavisecCLI is a tool used for accessing the VNX using CLI. Adding the security files to NavisecCLI is recommended to avoid login commands at the beginning of other commands for e.g.
$user = “admin”
$pw = “password”
naviseccli -h 0.0.0.0 -scope 0 -user $user -password $pw port -list -hba
If the security file is added to NavisecCLI, use of naviseccli -h 0.0.0.0 -scope 0 -user $user -password $pw is not necessary.
I generally use a Windows PowerShell ISE to write scripts and test outputs. Because of its flexibility. Native PS commands won’t work with CMD, but vice versa will work.
How to create Script to get VNX health Check
Windows Machine (Any release after 7 including server OS is fine)
PowerShell 1.0 or above
Connectivity to VNX storage
The VNX doesn’t give a neat output when its comes to formatting. Hence, I use PS commands to convert the output to a structured format for parsing to HTML for generating report. Some of my statements can be misleading because I am a beginner in scripting.
Script and Supporting Files
The script can be downloaded from here
- Unzip the file on your system
- Open PS Set-Executionpolicy unrestricted
- Run VNX_HealthCheck_exec.ps1
- Select option 1 to update IP and device name.
- Option 2 to update the VNX username and password. Script assumes all VNX has same credentials. and -scope 0 for LDAP replace -scope 0 with -scope 1 in VNXHealthCheck/VNX_HealthCheck.ps1
- Option 3 will invoke VNXHealthCheck/VNX_HealthCheck.ps1 and generate the report. sometimes this one breaks as some commands varies with flare code. Find your flare code version and use admin guide to edit the commands in VNXHealthCheck/VNX_HealthCheck.ps1.
- Option 3 work around: VNXHealthCheck/VNX_HealthCheck.ps1 open this file from Windows Powershell ISE and execute
8. 4 and 5 Help and Exit!
Hope you will have a good time playing around the script.