Is there a reason for not updating the raid card utilities?

393 views
Skip to first unread message

Oskar

unread,
Nov 10, 2020, 5:36:28 AM11/10/20
to esos-users

Hi!

I'm just starting an installation of this project on our servers at work but I just saw that the raid card utilities, that are listed in the "raid_tools.py" file, are very old. At least the HP Smart Array Controllers (Gen8+) utility that I'm interested in is very old (over 5 years since the listed version got released). I have however not checked the others. But any way, is there any reason to not update this software in this project? Or is it just something that hasn't been on the priority list? ;)

I've started to do the installation of this package (ssacli-4.21-7.0.x86_64.rpm) manually. But I just started to wonder if there might be something else that breaks further down the ally if I do this? Like that it wont work with the TUI?

I'm installing the version 3.0.1 btw.

Best Regards
Oskar

Oskar

unread,
Nov 10, 2020, 9:03:20 AM11/10/20
to esos-users
I just found out that none of the HP raid cli tools are implemented in ESOS. (according to Marc in this thread: https://groups.google.com/g/esos-users/c/PItcw1OLlQg/m/9wrKj5SoAgAJ)

I've been looking through the source of the file "hw_raid_cli.py" and it doesn't seem to be too complicated to implement the HP cli tools. So I think I might implement it.

However I got a few questions, about how to implement it.
- There exist multiple solutions from HP for the same thing. (HPACUCLI, HPSSACLI & SSACLI) HPSSACLI & SSACLI are the same software but they seem to have changed name of it. I can't find that they have removed the support from any card in the later releases in SSACLI but a few cards have gotten support in the later releases. So I'd say  the we can forget about HPSSACLI completely and only focus on SSACLI. However from what I can see according to HP:s website HPACUCLI is the oldest of these tools. And should be replaced by SSACLI. However not all cards supported by HPACUCLI are supported by SSACLI. (See the lists below to see which cards are supported by which software solution) So do you guys think that it is necessary to implement both solutions or should we only implement the new SSACLI version?

Cards ONLY Supported by HPACUCLI:
    - MSA1000 Controller
    - MSA1500 CS Controller
    - MSA20 Controller
    - MSA500 Controller
    - MSA500 G2 Controller
    - Smart Array 5302 Controller
    - Smart Array 5304 Controller
    - Smart Array 5312 Controller
    - Smart Array 532 Controller
    - Smart Array 5i Controller
    - Smart Array 6400 Controller
    - Smart Array 6400 EM Controller
    - Smart Array 641 Controller
    - Smart Array 642 Controller
    - Smart Array 6i Controller
    - Smart Array E200 Controller
    - Smart Array E200i Controller
    - Smart Array E500 Controller
    - Smart Array P400 Controller
    - Smart Array P400i Controller
    - Smart Array P600 Controller
    - Smart Array P700m Controller
    - Smart Array P800 Controller

Cards ONLY Supported by SSACLI:
  - Dynamic Smart Array B140i
  - Smart Array P230i Controller
  - Smart Array P240nr Controller
  - Smart Array P244br Controller
  - Smart Array P246br Controller
  - Smart Array P410 Controller
  - Smart Array P430 Controller
  - Smart Array P431 Controller
  - Smart Array P440 Controller
  - Smart Array P440ar Controller
  - Smart Array P441 Controller
  - Smart Array P530 Controller
  - Smart Array P531 Controller
  - Smart Array P542D Controller
  - Smart Array P711m Controller
  - Smart Array P731m Controller
  - Smart Array P741m Controller
  - Smart Array P830 Controller
  - Smart Array P830i Controller
  - Smart Array P840 Controller
  - Smart Array P840ar Controller
  - Smart Array P841 Controller
  - Smart HBA H240 Controller
  - Smart HBA H240ar Controller
  - Smart HBA H240nr Controller
  - Smart HBA H241 Controller
  - Smart HBA H244br Controller

Cards supported by both HPACUCLI & SSACLI
   - Dynamic Smart Array B110i SATA RAID
   - Dynamic Smart Array B120i
   - Dynamic Smart Array B320i
   - Smart Array P212 Controller
   - Smart Array P220i Controller
   - Smart Array P222 Controller
   - Smart Array P410i Controller
   - Smart Array P411 Controller
   - Smart Array P420 Controller
   - Smart Array P420i Controller
   - Smart Array P421 Controller
   - Smart Array P712m Controller
   - Smart Array P721m Controller
   - Smart Array P812 Controller
   - Smart Array P822 Controller

I've got raid cards that are supported by both utilities (Smart Array P822 Controller) so I assume that it would be enough to be able to test both implementations. But I don't know what the norm is for outdated hardware in this project?

I also think we should update the "raid_cli_tools.json" file on the website so that it links to a later release of the HP utilities. But I don't think that I got access to upload pull requests to those files, right? I'm attaching an updated version of it here. So if Marc sees this message he can easily change it him self!
raid_cli_tools.json

Marc Smith

unread,
Nov 10, 2020, 10:51:44 PM11/10/20
to esos-...@googlegroups.com
Hi,

On Tue, Nov 10, 2020 at 9:03 AM Oskar <os...@stahls.se> wrote:
>
> I just found out that none of the HP raid cli tools are implemented in ESOS. (according to Marc in this thread: https://groups.google.com/g/esos-users/c/PItcw1OLlQg/m/9wrKj5SoAgAJ)
>
> I've been looking through the source of the file "hw_raid_cli.py" and it doesn't seem to be too complicated to implement the HP cli tools. So I think I might implement it.

Excellent, contributions are appreciated!


>
> However I got a few questions, about how to implement it.
> - There exist multiple solutions from HP for the same thing. (HPACUCLI, HPSSACLI & SSACLI) HPSSACLI & SSACLI are the same software but they seem to have changed name of it. I can't find that they have removed the support from any card in the later releases in SSACLI but a few cards have gotten support in the later releases. So I'd say the we can forget about HPSSACLI completely and only focus on SSACLI. However from what I can see according to HP:s website HPACUCLI is the oldest of these tools. And should be replaced by SSACLI. However not all cards supported by HPACUCLI are supported by SSACLI. (See the lists below to see which cards are supported by which software solution) So do you guys think that it is necessary to implement both solutions or should we only implement the new SSACLI version?

Yeah, I think it'd be fine to start with whatever appears to be the
newest/latest tool. It might not support some older adapters, and
perhaps we'll find we need to support HP utility XYZ to do that -- if
so, that's fine. Any progress forward is better than nothing!
I think many users would appreciate having the ability to support
older (or at least not bleeding edge HP RAID cards)... so if you have
the time, supporting the older cards with other tool as well would be
a nice-to-have.


>
> I also think we should update the "raid_cli_tools.json" file on the website so that it links to a later release of the HP utilities. But I don't think that I got access to upload pull requests to those files, right? I'm attaching an updated version of it here. So if Marc sees this message he can easily change it him self!

I can upload the files and adjust the JSON file that points to them --
just let me know where to find the files and I can adjust this when
you're ready to merge your changes.

Thanks!

--Marc


>
>
> tisdag 10 november 2020 kl. 11:36:28 UTC+1 skrev Oskar:
>>
>>
>> Hi!
>>
>> I'm just starting an installation of this project on our servers at work but I just saw that the raid card utilities, that are listed in the "raid_tools.py" file, are very old. At least the HP Smart Array Controllers (Gen8+) utility that I'm interested in is very old (over 5 years since the listed version got released). I have however not checked the others. But any way, is there any reason to not update this software in this project? Or is it just something that hasn't been on the priority list? ;)
>>
>> I've started to do the installation of this package (ssacli-4.21-7.0.x86_64.rpm) manually. But I just started to wonder if there might be something else that breaks further down the ally if I do this? Like that it wont work with the TUI?
>>
>> I'm installing the version 3.0.1 btw.
>>
>> Best Regards
>> Oskar
>
> --
> You received this message because you are subscribed to the Google Groups "esos-users" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to esos-users+...@googlegroups.com.
> To view this discussion on the web visit https://groups.google.com/d/msgid/esos-users/70ed0070-69eb-4b64-86fc-033bd86e1a48n%40googlegroups.com.

Oskar

unread,
Nov 11, 2020, 5:12:31 AM11/11/20
to esos-users
Hi Marc!

I think that the commands for the utilities are about the same so it shouldn't be too hard to add support for the older cards either. I'll see what I can do!

But do you think that you could send me some pictures or something of the expected output in the TUI and maybe if you have time also an expected return value of each function inside the script when you're using some of the already supported cards? It would make my life a lot easier since I don't have a supported card at the moment and I would save me a lot of time since I wont have to read through all the code using this code to get what it is supposed to do! ;)

For example: I think I need to change how the id of each card is represented in the script. Because HP refers to the cards with slot ID:s and not just a number starting from 1 or 0 increasing with one for each card that is added. (as the script looks like it does with the other cards). Meaning that if I have a card connected to PCIe slot 1 and 5 their respective "ID" will be 1 and 5 so I cant loop through that. But the thing is that, maybe I'm interpreting this the wrong way? And this is why I would like to have some expected output. :)

Best Regards
Oskar

Marc Smith

unread,
Nov 11, 2020, 10:38:29 AM11/11/20
to esos-...@googlegroups.com
On Wed, Nov 11, 2020 at 5:12 AM Oskar <os...@stahls.se> wrote:
>
> Hi Marc!
>
> I think that the commands for the utilities are about the same so it shouldn't be too hard to add support for the older cards either. I'll see what I can do!
>
> But do you think that you could send me some pictures or something of the expected output in the TUI and maybe if you have time also an expected return value of each function inside the script when you're using some of the already supported cards? It would make my life a lot easier since I don't have a supported card at the moment and I would save me a lot of time since I wont have to read through all the code using this code to get what it is supposed to do! ;)

At this moment I don't have any of these RAID cards on-hand to do this
with... perhaps another community member could help with that?


>
> For example: I think I need to change how the id of each card is represented in the script. Because HP refers to the cards with slot ID:s and not just a number starting from 1 or 0 increasing with one for each card that is added. (as the script looks like it does with the other cards). Meaning that if I have a card connected to PCIe slot 1 and 5 their respective "ID" will be 1 and 5 so I cant loop through that. But the thing is that, maybe I'm interpreting this the wrong way? And this is why I would like to have some expected output. :)

Yeah, that's right -- we're trying to produce unified output
regardless of what RAID vendor/type it is, so we can always refer to
them in a consistent way.

--Marc
> To view this discussion on the web visit https://groups.google.com/d/msgid/esos-users/c5d2deb3-3ec4-4553-93df-56a3f1475236n%40googlegroups.com.

W. Heiss

unread,
Feb 1, 2021, 3:01:54 AM2/1/21
to esos-users
HTH: Output from a Linux box with ssacli and hpssacli with P440ar. Mostly identical, some small semantics. Diffs are in bold


for Smart Storage Administrator CLI 3.10.3.0 // HPE Smart Storage Administrator CLI 2.40.13.0

#ssacli  ctrl all show
Smart Array P440ar in Slot 0 (Embedded)   (sn: xxxxxxxxxx)
# hpssacli ctrl all show

Smart Array P440ar in Slot 0 (Embedded)   (sn: xxxxxxxxxx)


----------------
# hpssacli ctrl slot=0 ld all show

Smart Array P440ar in Slot 0 (Embedded)

   array A

      logicaldrive 1 (931.5 GB, RAID 1+0adm, OK)

# ssacli ctrl slot=0 ld all show

Smart Array P440ar in Slot 0 (Embedded)

   Array A

      logicaldrive 1 (931.5 GB, RAID 1+0adm, OK)

--------------
# ssacli ctrl slot=0 pd all show

Smart Array P440ar in Slot 0 (Embedded)

   Array A

      physicaldrive 1I:3:1 (port 1I:box 3:bay 1, SATA SSD, 500 GB, OK)
      physicaldrive 1I:3:2 (port 1I:box 3:bay 2, SATA SSD, 500 GB, OK)

# hpssacli ctrl slot=0 pd all show

Smart Array P440ar in Slot 0 (Embedded)

   array A

      physicaldrive 1I:3:1 (port 1I:box 3:bay 1, Solid State SATA, 500 GB, OK)
      physicaldrive 1I:3:2 (port 1I:box 3:bay 2, Solid State SATA, 500 GB, OK)
      physicaldrive 1I:3:3 (port 1I:box 3:bay 3, Solid State SATA, 500 GB, OK)
---------------------------------------------------
# ssacli ctrl slot=0 pd 2I:3:6 show detail

Smart Array P440ar in Slot 0 (Embedded)

   Array A

      physicaldrive 2I:3:6
         Port: 2I
         Box: 3
         Bay: 6
         Status: OK
         Drive Type: Data Drive
         Interface Type: Solid State SATA
         Size: 500 GB
         Drive exposed to OS: False
         Logical/Physical Block Size: 512/512
         Firmware Revision: EMT01B6Q
         Serial Number: xxxxxxxxxxx
         WWID: 30014xxxxxxxxxxx
         Model: ATA     Samsung SSD 850
         SATA NCQ Capable: True
         SATA NCQ Enabled: True
         Current Temperature (C): 28
         Maximum Temperature (C): 70
         SSD Smart Trip Wearout: Not Supported
         PHY Count: 1
         PHY Transfer Rate: 6.0Gbps
         Drive Authentication Status: OK
         Carrier Application Version: 11
         Carrier Bootloader Version: 6
         Sanitize Erase Supported: False
         Shingled Magnetic Recording Support: None


# hpssacli ctrl slot=0 pd 2I:3:6 show detail

Smart Array P440ar in Slot 0 (Embedded)

   array A

      physicaldrive 2I:3:6
         Port: 2I
         Box: 3
         Bay: 6
         Status: OK
         Drive Type: Data Drive
         Interface Type: Solid State SATA
         Size: 500 GB
         Drive exposed to OS: False
         Native Block Size: 512
         Firmware Revision: EMT01B6Q
         Serial Number: xxxxxxxxxxxx
         Model: ATA     Samsung SSD 850
         SATA NCQ Capable: True
         SATA NCQ Enabled: True
         Current Temperature (C): 28
         Maximum Temperature (C): 70
         SSD Smart Trip Wearout: Not Supported
         PHY Count: 1
         PHY Transfer Rate: 6.0Gbps
         Drive Authentication Status: OK
         Carrier Application Version: 11
         Carrier Bootloader Version: 6
         Sanitize Erase Supported: False



Reply all
Reply to author
Forward
0 new messages