HPE Storage Users Group https://3parug.com/ |
|
Powershell Script to parse showpdvv data https://3parug.com/viewtopic.php?f=17&t=477 |
Page 1 of 1 |
Author: | jxrojas [ Thu Nov 14, 2013 1:19 pm ] |
Post subject: | Powershell Script to parse showpdvv data |
Gentlemen, I've been using this script quite a bit lately to balance some of our InServ's running 2.3.1 and 3.1.1. We purchased a few disk cages and due to the bug with tunesys in these InFormOS versions, I had to do it manually. The script basically scans all PDID's in the input file and produces a report listing VV's and its User Chunklet usage. I use this script with 600+ PDID's to identify which VV's would reduce the most load and proceed to tune them to an interim CPG: $pdIDs = Import-Csv C:\script\3par_tune\pdids.txt $outfile = 'C:\script\3par_tune\vvperpd.txt' $3par = 'IP' $report = @() foreach ($pdID in $pdIDs){ $id = $pdID.Id.ToString() $vvs = C:\script\plink $3par -l username -pw password showpdvv -sum $pdID.Id | Select-String $id foreach ($vv in $vvs){ $usrChunks = $vv.ToString().Split(" ",[StringSplitOptions]"RemoveEmptyEntries")[8] if ([int]$usrChunks -gt 25){ $row = "" | Select PDId,Type,VVName,UsrChunks $row.PDId = $id $row.Type = $vv.ToString().Split(" ",[StringSplitOptions]"RemoveEmptyEntries")[2] $row.VVName = $vv.ToString().Split(" ",[StringSplitOptions]"RemoveEmptyEntries")[5] $row.UsrChunks = [int]$usrChunks $report += $row } } } $report | Out-File $outfile The script produces a report in this fashion: PDId Type VVName UsrChunks 1584 FC VV1 43 1584 FC VV2 30 1584 FC VV3 36 1584 FC VV4 27 You can filter VV's with a number of User Chunklets using the -gt expression inside the if statement. |
Author: | Richard Siemers [ Fri Nov 15, 2013 1:03 pm ] |
Post subject: | Re: Powershell Script to parse showpdvv data |
So to use this script, do you look for VVs in the output that are not equally balanced across all PDs? How much difference do you like to see before you target a VV or tuning? Tell us more about the tunesys bug? I have yet to run a tunesys. Here is the showvvpd command output i've used, I would consider this VV to be perfectly balanced, as the SS7200 only has 16 PDs, today. Will be interesting to see how it looks after we add a few more. Code: SS7200-1 cli% showvvpd HOST1_LUN_0
Id Cage_Pos SA SD usr total 0 1:0:0 3 1 1040 1044 1 1:1:0 2 1 1036 1039 2 1:2:0 2 1 1040 1043 3 1:4:0 3 1 1036 1040 4 1:5:0 2 1 1040 1043 5 1:6:0 2 1 1036 1039 6 1:8:0 2 1 1040 1043 7 1:9:0 2 1 1036 1039 8 1:10:0 2 1 1040 1043 9 1:12:0 2 1 1036 1039 10 1:13:0 2 1 1040 1043 11 1:14:0 2 1 1036 1039 12 1:16:0 3 1 1040 1044 13 1:17:0 3 1 1036 1040 14 1:20:0 2 1 1036 1039 15 1:21:0 2 1 1040 1043 ----------------------------- 16 total 36 16 16608 16660 |
Author: | jxrojas [ Sun Nov 17, 2013 8:35 pm ] | ||
Post subject: | Re: Powershell Script to parse showpdvv data | ||
Hi Richard, You can find the Customer Advisory regarding the tunesys bug here: http://h20566.www2.hp.com/portal/site/hpsc/template.PAGE/public/kb/docDisplay/?sp4ts.oid=5157544&spf_p.tpst=kbDocDisplay&spf_p.prp_kbDocDisplay=wsrp-navigationalState%3DdocId%253Demr_na-c03660626-1%257CdocLocale%253D%257CcalledBy%253D&javax.portlet.begCacheTok=com.vignette.cachetoken&javax.portlet.endCacheTok=com.vignette.cachetoken As to how I use the script, please tale a look at the attached image. I build a pivot table with the script output and then look at tuning the VV's that have the most user chunklets first. The image is truncated because our InServ in question has +1500 disks and +3500 Virtual Volumes. You can imagine the amount of work needed to balance this system. We recently added 384 disks and now I'm looking to optimize the tuning process. Best, Jon
|
Author: | Architect [ Wed Nov 20, 2013 5:29 pm ] |
Post subject: | Re: Powershell Script to parse showpdvv data |
if you have added more drives equally behind each node pair, why not simply run a for loop doing a tuneld over each of the SD (NOT the SA!!!) LD's (maybe per cpg, to keep some ordering in it) the tuneld command will copy all the data of the existing ld to other ld's, until full and then create new ld's. the new ld's will be striped across all drives behind the node that was the owner of the original LD (old and new), and after all ld's are tuned, all data should be re-striped over all drives. Don't run it together with tunevv's, compactcpg's or AO jobs though, that could give nasty errors. |
Author: | Architect [ Wed Nov 20, 2013 5:40 pm ] |
Post subject: | Re: Powershell Script to parse showpdvv data |
by the way, just had a look at the advisory and it is only valid for 3.1.1 GA release. Mu1 already fixed that issue. So seems to be an oldy that for 99.99% procent of the 3PAR users is already solved. |
Author: | hari300677 [ Thu Nov 06, 2014 11:00 am ] |
Post subject: | Re: Powershell Script to parse showpdvv data |
Hi, I was trying to find if there is any powershell plugin for 3par. When i checked with HP they said they dont have one. But in this thread there are some powershell scripts. How do you use powershell to connect to the array? Thanks Hari |
Author: | RitonLaBevue [ Sun Nov 30, 2014 1:29 am ] |
Post subject: | Re: Powershell Script to parse showpdvv data |
I recently scripted quite the same in TCL: list of VVs not spreaded in the same number of chunklets over PDs. Over PDs they got chunklets in and over PDs they should get chunklets in regarding CPGs and their patterns. This sort out a list of VVs, standard deviation of chunklets used on each device type, min and max chunklets used. The name is "Tune Virtual Volume". That second part is still in dev... |
Page 1 of 1 | All times are UTC - 5 hours |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |