If you wish to know what version of software/firmware is running on your 3PAR array you have a couple of options.
CLI
Connect to the array with your SSH client of choice
Enter the command showversion
3PAR01 cli% showversion Release version 3.1.3 (MU1) Patches: None Component Name Version CLI Server 3.1.3 (MU1) CLI Client 3.1.3 System Manager 3.1.3 (MU1) Kernel 3.1.3 (MU1) TPD Kernel Code 3.1.3 (MU1)
This will give you a summary view which is fairly high level and usually sufficient. Should you require a complete breakdown of the software versions across the array you can add some additional switches to the showversion command.
Let us look at the available options by using the help command
3PAR01 cli% help showversion
showversion – Show server software version information.
SYNTAX showversion [options] DESCRIPTION The showversion command displays information about the storage server software. Use this command to determine if the storage system is using the latest software version. AUTHORITY Any role in the system OPTIONS -a Show all component versions. -b Show build levels. -s Show release version number only (useful for scripting).
The -a and -b options will provide us with a complete listing including all details as below –
3PAR01 cli% showversion -a -b Release version 3.1.3.230 (MU1) Patches: None Component Name Version CLI Server 3.1.3.230 (MU1) CLI Client 3.1.3.230 System Manager 3.1.3.230 (MU1) Kernel 3.1.3.230 (MU1) TPD Kernel Code 3.1.3.230 (MU1) CIM Server 3.1.3.230 (MU1) WSAPI Server 3.1.3.230 (MU1) Console Menu 3.1.3.230 (MU1) Event Manager 3.1.3.230 (MU1) Internal Test Tools 3.1.3.230 (MU1) LD Check Tools 3.1.3.230 (MU1) Network Controller 3.1.3.230 (MU1) Node Disk Scrubber 3.1.3.230 (MU1) PD Scrubber 3.1.3.230 (MU1) Per-Node Server 3.1.3.230 (MU1) Persistent Repository 3.1.3.230 (MU1) Powerfail Tools 3.1.3.230 (MU1) Preserved Data Tools 3.1.3.230 (MU1) Process Monitor 3.1.3.230 (MU1) Rolling Upgrade Tools 3.1.3.230 (MU1) Software Updater 3.1.3.230 (MU1) TOC Server 3.1.3.230 (MU1) VV Check Tools 3.1.3.230 (MU1) SNMP Agent 1.7.0 SSH 5.5p1-6+squeeze1 Firmware Database 20140521 Drive Firmware 20140521 UEFI BIOS 14.05.23 MCU Firmware 4.23 Cage Firmware (DC1) 4.44 Cage Firmware (DC2) 2.64 Cage Firmware (DC3) 08 Cage Firmware (DC4) 2.64 Cage Firmware (DCS1) 3211 Cage Firmware (DCS2) 3211 Cage Firmware (DCN1) 3211 QLogic QLA4052C HBA Firmware 03.00.01.77 QLogic QLE8242 CNA Firmware 04.11.237 Emulex LP11002 HBA Firmware 02.82.x10 Emulex LPe12002 HBA Firmware 02.01.x14 Emulex LPe12004 HBA Firmware 02.01.x14 3PAR FC044X HBA Firmware 200A8 LSI 9201-16e HBA Firmware 17.11.00 LSI 9205-8e HBA Firmware 17.11.00
As you can see a great wealth of information is returned.
GUI
We can also view this information in the 3PAR management console GUI.
First open the console and select the Systems option and click the 3PAR array you wish to check, then select the Software tab.
If you happen to be running a copy of the 3PAR StoreServ Management Console you can also view this information –
Hi Alex,
Do you know how best to automate common tasks on 3par? Would you recommend PHP and RestAPI or perhaps powershell?
Thanks.
Hi JayBG,
This is a great question and gives me a good idea for a post in the future!
I’d suggest you take a look at the createsched command within the CLI, this is great at allowing you to schedule tasks without needing to write a script to initiate an SSH session first from another system. Please note that this command can only be used to schedule the following:
checkhealth
compactcpg
compactld
createsv
creategroupsv
createvvcopy
creategroupvvcopy
moverelocpd
removevv
setvv
startao
syncrcopy
tunealdvv
tunepd
tunesys
tunetpvv
tunevv
updatesnapspace
updatevv
setqo
If this doesn’t cover what you need then my next suggestion would be to go with what you know. If you are familiar with utilising REST API interfaces then start there otherwise it might be better utilising a scripting language and SSH. You may also want to look at the HP OneView product (http://www8.hp.com/uk/en/business-solutions/converged-systems/oneview.html) as this does include some automation for 3PAR tasks.
I’d love to hear what you are trying to achieve and how you eventually do it – always on the lookout to learn new things!
Alex Bytes
Hello Alex,
This is great to schedule tunesys, and etc. I am probably going to play around with this.
I was actually looking at ways to create an automation like regular task such as creating and exporting virtual volumes. I have not coded in more than 10 years, so this may be a little bit of challenge. I am reading as much as I can about REST API, but I am still a little confused. I am basically starting at scripting 101. As far using the Rest APIs, I am referencing the developer guide for 3par. Would it be more beneficial to use java or perl? It seems to be the only languages mentioned on those docs. I am trying to figure out if I can utilize PHP to create calls on the REST APIs.
I really appreciate any guidance you can provide. If I do I achieve this (whenever that is), I will definitely be happy to share.
Thanks.
Hi Jay,
Sounds like you want to leap in at the deep end! Kudos to you and good luck! I have a post planned for the 3PAR PowerShell toolkit (https://h20392.www2.hp.com/portal/swdepot/displayProductInfo.do?productNumber=3PARPSToolkit) and I think this might allow you to do what you need in an easier way than building your REST setup which is definitely a great idea but likely requires more work.
You can leverage things like the ‘new-3parVV’ cmdlet to create VVs and then the ‘new-3parVLUN’ cmdlet to present them. I think this would be a good place to start along with the createsched native command.
As for whether to go with Java or Pearl or another language, again if they are referencing these in their documentation then you have a good indication that this has been used/tested to some extent and hopefully examples that you can re-purpose. If you need to get this up and running sooner rather than later I would still suggest PowerShell and createsched as I reckon those are much quicker to get to grips with.
I’m really hoping to get some time to talk more about this sort of stuff – fingers crossed in the not too distant future :)