Today I completed the install of some new SSD and FC disks in one of the 3PAR arrays I manage. Having added this extra capacity and performance it’s time to tune the array to make sure my data is re-spread across all the disks to ensure my wide stripping is optimal and I get every last IOP out of the system.
As always the task can be achieved either via the command line or through the GUI, so here we go.
GUI
We now have two GUI systems in the form of the StoreServ Management Console or SSMC and the traditional Management Console.
First let us use the traditional MC.
- Click on the Provisioning Tab on the bottom left then select the array you wish to tune
- You can either use the ‘Tune System’ button on the menu bar or right click on the array and select the option from there
- A new window will open
- If you wish to do a ‘dry run’ and only analyse the system click the ‘Analyze only’ box (UK here so I abhor the z)
- Review the available options – I suggest you leave these all at the default unless you know better
- Click ‘OK’
Now let us look at the SSMC
- Click on the ‘3PAR StoreServ’ menu in the top left corner of the webpage
- Click on the ‘Systems’ link
- Select your array
- Click on the blue ‘Actions’ button on the right hand side
- Click ‘Tune’
- A new window will open
- If you wish to do a ‘dry run’ and only analyse the system click on the ‘Analyze’ button (UK here so I abhor the z)
- Click the ‘Tune’ button
CLI
Now let us look at the CLI option which in this case is the tunesys command.
3PAR01 cli% tunesys Are you sure you want to tune this storage system? select y=yes n=no: y Task 14376 started 3PAR01 cli%
As you can see, without any switches applied the tunesys command simply asks if you wish to continue and then goes ahead and starts.
To see what options we have we can use the format help tunesys
3PAR01 cli% help tunesys tunesys - Change the layout of a storage system. SYNTAX tunesys [options] SUBCOMMANDS None DESCRIPTION The tunesys command is used to analyze and detect poor layout and disk utilization across an entire storage system. The command runs a series of low level operations to re-balance resources on the system. AUTHORITY Super, Edit Any role granted the sys_tune right OPTIONS -cpg <CPG name or patterns> Limits the scope of a tunesys operation to the named CPG(s). The specified CPGs must all be in the same domain as the user. The diskpct and chunkpct options cannot be used with this option.
[additional output removed]
We have a wide variety of options and I’m not going to cover all of them but suffice to say the CLI allows you to be very granular with this command.
Dry Run/Analyze
If you do not want to run the tunesys task immediately and just want to understand what it would do then you can use the ‘dry run/analyze’ options. Both will produce a text output similar to that below.
3PAR01 cli% tunesys -dr Are you sure you want to tune this storage system? select y=yes n=no: y * ********************************************************* ** Storage system tuning started ********************************************************* * tunesys -dr Parameter summary: ------------------ Task ID = 999999 Nodepct = 3 Chunkpct = 10 Diskpct = 10 Maxtasks = 2 Dry run flag = 1 Waittask mode = 0 Clean timeout = 120 System chunklet size = 1024 fulldiskpct = 90 compactmb = 512000 splitthreshold = 2097152 splitlength = 2097152 CPGs = ALL * ********************************************************* * PD Analysis ********************************************************* * ------FC------- -----------------Description------------------ 15K 10K 10K+15K NL SSD All Number of Available PDs with free chunklets 0 70 70 40 20 130 Number of Available PDs with no free chunklets 0 0 0 0 0 0 ---------------------------------------------------------------------------- Total Number of Available PDs 0 70 70 40 20 130 ---------------------------------------------------------------------------- Maximum number free chunklets in a PD - 784 - 832 1448 1448 Minimum number free chunklets in a PD - 215 - 819 8 8 * ********************************************************* * PD Node Balance Summary - Device type usage across nodes ********************************************************* * * * ********************************************************* * Inter-node device type average summary ********************************************************* * Device type: FC10 Average Usage per node "58.00"% threshold "61.00"% Device type: NL7 Average Usage per node "67.00"% threshold "70.00"% Device type: SSD100 Average Usage per node "0.00"% threshold "3.00"% Device type: SSD150 Average Usage per node "70.00"% threshold "73.00"%
[additional output remove]
The full command output is rather long but it gives a great deal of information.
To see how things are progressing leverage the showtask command and the GUI. A standard showtask –active will list all active tasks and give you an overall view of the tunesys progress. If you make a note of the task ID when you launch tunesys you can add that to the showtask command with the –d switch to get a detailed output of the task progress.
3PAR01 cli% showtask -active Id Type Name Status Phase Step -------StartTime------- -FinishTime- -Priority- -User- 14376 system_tuning tunesys active 2/3 3/4 2015-05-14 18:13:21 BST - n/a ab 14377 background_command tunenodech active 2/2 61/12562 2015-05-14 18:14:56 BST - n/a ab 14407 background_command tunenodech active 2/2 0/12254 2015-05-14 19:14:56 BST - n/a ab 14409 background_command tuneld active 1/1 0/1 2015-05-14 19:14:59 BST - n/a ab 14411 move_regions tuneld: tp-8-sd-0.17 active 1/1 4/168 2015-05-14 19:15:02 BST - n/a ab 14412 background_command tuneld active 1/1 0/1 2015-05-14 19:15:15 BST - n/a ab 14413 move_regions tuneld: tp-8-sa-0.1 active 1/1 2/125 2015-05-14 19:15:18 BST - n/a ab 3PAR01 cli% showtask -d 14376 Id Type Name Status Phase Step -------StartTime------- -FinishTime- -Priority- -User- 14376 system_tuning tunesys active 2/3 3/4 2015-05-14 18:13:21 BST - n/a ab Detailed status: 2015-05-14 18:13:21 BST Created task. 2015-05-14 18:13:21 BST Updated 2015-05-14 18:13:21.24 BST {383} Executing "tunesys" as 1:383 2015-05-14 18:13:23 BST Updated * 2015-05-14 18:13:23 BST Updated ********************************************************* 2015-05-14 18:13:23 BST Updated ** Storage system tuning started 2015-05-14 18:13:23 BST Updated *********************************************************
[additional output removed]
Depending on the size of your system, load and the degree of in-balance this task may take quite some time to complete. Patience is a virtue!