LSI MegaRAID controller check has Deprecated commands

Hallo zusammen,

der LSI MegaRaid (storcli64) check im checkmk agent benutzt keine gültige syntax.

Description = Deprecated command. Please use the new syntax.

hat sich schon jemand der migration angenommen? https://docs.broadcom.com/doc/12352476

old: $MegaCli_bin -EncInfo -aALL -NoLog
new: $MegaCli_bin /call/eall/sall show all

leider ist der output auch nicht mehr der selbe…

1 Like

Da muss wohl dann eine Art Versionsweiche in den Agenten eingebaut werden.

I also noticed this after installing a new server with hardware raid.

When using the latest Broadcom ‘driver’ including storcli64 (7.1912), there is no detection of enclosures, disks or virtual drives, our 2.0.0.p16 check_mk_agent.linux still uses the old syntax.

Is this issue noticed by the team, and being worked on? Monitoring the raid arrays is top-prio I would presume.

1 Like

I created an Jira ticket to have this investigated/fixed.
The Dell equivalent ‘perccli’ is also not supported, but I think that might be acceptable.

1 Like

Hi @moetiker ,
I know it’s been a while, but I am currently addressing this; starting with the replacement of the ‘megaraid_pdisks’ section. Can you supply an example output of the above command?

1 Like

/opt/MegaRAID/storcli/storcli64 /call/eall/sall show all

1 Like

Thanks! That is a lot of output considering in the end we only show the overall state, the name, and the predictive failure count in the service summary…
Reading the reference, it seems that show status instead of show all might suffice. Since I can’t (currently) access a fitting system, any help is appreciated. (I’ll keep preparing as much as I can until the customer gets back to me.)
Currently I’m planning to add this to the agent:

section_storcli() {
    if inpath storcli; then
        _storcli() { storcli "$@"; }
    elif inpath storcli64; then
        _storcli() { storcli64 "$@"; }
    else
        return 1
    fi

    echo '<<<storcli_physical_disks>>>'
    _storcli /call/eall/sall show all

    echo '<<<storcli_virtual_disks>>>'
    _storcli /call/vall show all

    echo '<<<storcli_battery_backup>>>'
    _storcli /call/bbu show all

    # exit successfully, because storcli was in the path.
    return 0
}

For all of these I want to see if show status is enough though.

staus only works with this options

/opt/MegaRAID/storcli/storcli64 help show | grep status
storcli /cx/ex show status [extended]
storcli /cx/bbu show status 
storcli /cx/cv show status 
# /opt/MegaRAID/storcli/storcli64 /call/eall show status
CLI Version = 007.0709.0000.0000 Aug 14, 2018
Operating system = Linux 5.4.0-87-generic
Controller = 0
Status = Failure
Description = None

Detailed Status :
===============

------------------------------------------
Ctrl EID Status ErrCd ErrMsg              
------------------------------------------
   0 252 Failed   255 Enclosure not found 
------------------------------------------
# /opt/MegaRAID/storcli/storcli64 /call/bbu show status
CLI Version = 007.0709.0000.0000 Aug 14, 2018
Operating system = Linux 5.4.0-87-generic
Controller = 0
Status = Failure
Description = None

Detailed Status :
===============

----------------------------------------------
Ctrl Status Property ErrMsg             ErrCd 
----------------------------------------------
   0 Failed -        Battery is absent!    34 
----------------------------------------------
# /opt/MegaRAID/storcli/storcli64 /call/cv show status
CLI Version = 007.0709.0000.0000 Aug 14, 2018
Operating system = Linux 5.4.0-87-generic
Controller = 0
Status = Failure
Description = None

Detailed Status :
===============

-------------------------------------------------
Ctrl Status Property ErrMsg                ErrCd 
-------------------------------------------------
   0 Failed -        Cachevault is absent!    34 
-------------------------------------------------

Hi guys! I am making some progress. Physical and virtual disks are almost done, but I’m still looking for a an output of storcli /call/cv show all, with actual cache vaults present :wink: .
I’m currently building this in the master branch - depending on the feedback we will consider bringing it to the 2.1.
I’ll keep you posted.

# /opt/MegaRAID/storcli/storcli64 /call/cv show all
CLI Version = 007.0709.0000.0000 Aug 14, 2018
Operating system = Linux 5.4.0-87-generic
Controller = 0
Status = Failure
Description = None

Detailed Status :
===============

-------------------------------------------------
Ctrl Status Property ErrMsg                ErrCd 
-------------------------------------------------
   0 Failed -        Cachevault is absent!    34 
-------------------------------------------------

How I saw in the GitHub project: Commit, the checks are available for the future version 2.1 and won’t be backported to 2.0. I’m a absolut beginner with checkMK and not able to create a MKP which include this patches. Maybe someone of the community have the time to create a extension pack for 2.0?