cancel
Showing results for 
Search instead for 
Did you mean: 
Create Post
Level 7

Nexus 7k/5k/2k hardware monitor support

Hey all,

I am about to open a ticket but would also like to hear what the community has to say about it. I found a few similar discussions here but they are a few years old and would like to revisit this topic. The hardware monitor is not picking up several components on our Nexus 7K/5K/2Ks. Hardware Health only shows temperature readings but not the power supplies and fans status, which are present on all of our other Cisco switches. I know we can pull the data using UnDP which would require a bit of MIB research but I imagine this would be a supported feature on the native hardware monitor. Any comments/suggestions are greatly appreciated. Thanks.

Our specs -- NPM 10.5, Nexus 7010 NX-OS v6.1(4), Nexus 5020 NX-OS v5.0(3)N2(1)

Labels (1)
49 Replies
Level 12

My labels look like this...

7kpower.bmp

How can I map the labels to descriptions eg. power supply 1, power supply 2 etc? Also when I go to map a number ie 2 = ok, I can't see an option to add a second mapping? no buttons or anything to add another? Any help appreciated TIA!

0 Kudos
Level 11

I am trying to get this setup as well.  I have added the OIDs as UnDPs but am having a hard time getting my tabular display to look like yours.  Any suggestions?

0 Kudos
Level 17

Give a screenshot of your display, if able please.

0 Kudos
Level 11

Here is how we have it now.  I uncheck all of the downlink ports, otherwise the list was huge.

Cisco_Nexus_1.JPG

Cisco_Nexus_2.JPG

0 Kudos
Level 17

Also, when using table pollers only the # of values captured shows in the advanced details.

And REGARDLESS of grouping, your pollers will show in Alphabetical order.

         * I use a _ in some cases to thwart the alphabetizing and bring one or a few to the top; otherwise just carefully rename your poller so it is still ID'ed easy and then sits in the order you want.

0 Kudos
Level 17

Yes you have to break down the list there... and what I have are 3 setups for the Tabular Pollers.

One for Fex, One for Power, One for Fans.

So once you have three of these in there you can click edit and choose by check boxes what pollers to display and what lines. i.e. you want the pertinent lines with values you need.

So Fex Setup use pollers -  physical info, power status, operational status.  Then check lines ending in 22,23,or 24.

So the base 22 - is your main 5K and then 102000022 - is your first 2248 (fex) or whtever entity, so do a edit find and type in 22 to get the 22 value and 102000022, and 103000022 and so on for each fex.

So then use the Physical and the Power STATUS for Power supplies;

and Physical and FAN STATUS for fans   (** pollers **)

Value or PS = 470 ,471 and possibly 472 in some cases... check yoour device for # of power supplies, 2 or 3... and then so the same search on the 2nd table poller display when you edit. Search for 470, and the others will show in sequence

    * so you check 470 , 471, 102000470 & 102000471, and so on.

Value's for FAN = 534 through 540  - and 539 and 540 normally show up as your power supply fans... so there is your cover of the PS Fans aside from their basic power/operational state.

Un check all the line with no values... and to do this, i un check the master, so ALL is unchecked then search out the lines (22,23,24,470,534, etc.) and check what I know I will need.

If you must login to the box and do a show power all, or sh env, equivalent to get your full results and # of PS'es and fans to compare to what you show in the pollers.

But each entity value/status is polled from a different poller. you have to un check the lines with no status value, and create seperate tables for each different set of the table.

You could put all this into the one table, but my symmetry does not like empty columns.

*** Note  - for Fan, PS, Module/Fex info these pollers are great to add the Serial # to them also - the data exported helps create a report for inventory, or build your DB or compare to whatever you use already  ***

                                     I find this part very useful, and you may even be able to build an alert for when one of the serial's change. (new idea while typing)

Hope this helps, let me know if you hit any other roadblocks or stifled ideas .

Level 17

What OID are you using that shows off the Module Name when polled? I would rather select by that...

I get the ROW ID that shows.  So I break them down - of course the Row ID Ends with these #'s (the preceding 101, 102 at the beginning of the ID is the Fex #.. fyi)

Row ID 22, 23,24 - Modules and their Sub/Daughter Cards  - or just 1030000022 for the Fex 103

Row ID 470/471/472 = power supplies    -   1030000470 / 1030000471 for Fex 103 Power Supplies

Row ID 534,through 539 (at least) are fans -  Fex / 2248 will have 534 through 536, 2 PS fans, 1 chassis fan.

Level 12

Hi Cahunt, How do you know Row ID 470/471/472 = power supplies? This seems to reflect what I am expecting to see when trying to monitor the power supply on a Nexus7K on our network

7kpower.bmp

470 & 471 are both up (value = 2) How did you learn that 470/1 are power units? After running a MIB walk I could make an educated guess that because of these 2 lines

CISCO-ENTITY-FRU-CONTROL-MIB    1.3.6.1.4.1.9.9.117.1.1.1.1.2.470    cefcPowerUnits.470    OID_TYPE_STRING    "Amps @ 50V"

CISCO-ENTITY-FRU-CONTROL-MIB    1.3.6.1.4.1.9.9.117.1.1.1.1.2.471    cefcPowerUnits.471    OID_TYPE_STRING    "Amps @ 50V"

and these are the only 2 lines featuring "cefcPowerUnits" that 470/1 refers to power supplies but I am not 100% sure, are you? Cheers cahunt‌!

0 Kudos
Level 17

Sorry if I never answered this - but yes lots of research - Ton's of MIB Walks, and mulling over and matching up values - learning the industry and cisco details regarding the OID Address/Mapping has helped quite a bit ... But from the start it was pure mass 100K - 700K Lines of a spreadsheet from the MIB Walk.

It took some trial and error - some double checking and lots of time...

Level 17

I have a full setup - Physical Description, Serial #, Nexus Power Status, Operational Status, and also Fan Status.  ->  Nexus Device Tables . UnDP

I split these up with 3 table poller displays.

One for modules, 22-36

Power Supplies, 470-476 or so - but always sequential

Fans, 534 - 540 (i think it may go up to 542, but always sequential)

Follow this link to DL all 5 Tabular Pollers (They Also work and gather the same stats for MDS / SAN Switches Also) - MDS9500 series is what I have these pollers on also.

Nexus Device Tables . UnDP

NXOS-tables.png

So - the operational, and power measures gather just that - they do not pull the correct Serial # for the Fex's Hardware

This Table above is a 5K with some 2248's attached.  So the base - 22-36 5K modules. then it goes to the 998XXX  (XXX = FEX )  so 998112 , 998113 - for FEX Serial #'s (if you are doing inventory outside of NCM)

But for operational status the Row ID to choose for FEx is the 10200000022 , 103000022, 112000022 (the long ID's with mass 0's and starting with the FEX ID)   - ends with 22

Same for PS and Fan Status - start with FEX ID - end with 471,471,472...FOR Power Supply 

534 through 542 for FANs

I hope this helps.

npm 11.5 production now monitors all our nexus hardware health without issue 

I was happy to remove these custom props and charts.

Level 12

Does this mean we won't need to use UnDP for Power status polling? Will Solarwinds be able to poll power supply with out a UnDP?@bluefunnelmental

For all of my nexus devices it does indeed.

Level 17

Yes, if you are on NPM 11.5 i believe this thread is irrelevant to you.

0 Kudos
Level 12

I'm on 10.5 and will be upgrading soon just have to go through server migration first! Need to get this working correctly for a power supply test tomorrow though. I've managed to get enumeration to text working fine but still in the dark about how to map numbers (22,23,470,471etc) to readable values

oks.bmp

I've used the OID ent physical description: 1.3.6.1.2.1.47.1.1.1.1.7 and this is describing the physical entities...(from MIB walk)

ENTITY-MIB    1.3.6.1.2.1.47.1.1.1.1.7.470    entPhysicalName.470    OID_TYPE_STRING    PowerSupply-1

ENTITY-MIB    1.3.6.1.2.1.47.1.1.1.1.7.471    entPhysicalName.471    OID_TYPE_STRING    PowerSupply-2

ENTITY-MIB    1.3.6.1.2.1.47.1.1.1.1.7.534    entPhysicalName.534    OID_TYPE_STRING    "Fan Module-1"

I just need to know how to map test470 to PowerSupply-1? Do I need to combine 2 UnDPs?

Thanks very much for all the help so far! One other quick question when you (if you've) set up alerts based on these values do you base alerts on numeric value returned or what it is mapped to eg instead of alerting when value returned by UnDP is not equal to "2" alert when returned value is not equal to "OK" cahuntbluefunelemental

0 Kudos
Level 17

noobes

The Top part of the table should list all your table pollers. Check The Description, along with Status at least.

It looks like your table has only one poller checked.

Turn your other pollers into the Table pollers - so ALL are table pollers

you can DL and use these.. Nexus Device Tables . UnDP

But using these ;

ENTITY-MIB    1.3.6.1.2.1.47.1.1.1.1.7.470    entPhysicalName.470    OID_TYPE_STRING    PowerSupply-1

ENTITY-MIB    1.3.6.1.2.1.47.1.1.1.1.7.471    entPhysicalName.471    OID_TYPE_STRING    PowerSupply-2

ENTITY-MIB    1.3.6.1.2.1.47.1.1.1.1.7.534    entPhysicalName.534    OID_TYPE_STRING    "Fan Module-1"

Will give you readout of values in the 'Advanced Monitoring Details' Module - it is where your table pollers will also show - 8 Values, ect.

Once I have my pollers in place and they return values - I click EDIT on the Tabular Poller Table itself...

   Uncheck the ALL - so ALL Rows are unchecked.  - Enable your FIND and type in the values.

    I manually search for those values (to get to each row) - then check the box so it will display in the table.

Level 12

I have it all displaying correctly now in my web console, thanks so much for your advice!! As regard alerts I want to alert if the supplies are anything other than OK. Have you set these up before? Did you alert on 5the numeric value returned by custom poller or the mapped to value (word)? Thanks alot!

0 Kudos
Level 17

I have a few simple alerts;  well three - change your status pollers in each one of these you create.

Property Type : Customer Node Table Poller

All conditions

-> Poller Name = PwrStat / FanStat / Operstat  (just 1 here, create 3 diff alerts)

-> Value <> 2   (since I use the numeric Value) -

     ANY  (to catch catch all for my device - as i have a custom property 'Model' that gets filled in with Nexus)

         -> Machine Type - contains - Nexus

         -> Model - contains - Nexus

          OR use another identifying factor in the way you name or arrange your Nodes... if not take out the ANY argument and use only the MAchine Type in the ALL Section.

You use the adjusted Value, so your argument may need to be <> 'OK' - or try using Numeric Value <> 2 -     - But its either Value, Rate or Numeric Value  ---- set your recipients of the alert to just YOU, until this is figured out!

0 Kudos
Level 17

Now I can not wait to upgrade.

0 Kudos
Level 17

This may come in handy... i Use tables to gather these... then you may need to edit or check the RowID's you want (http://thwack.solarwinds.com/ideas/3430)

5K & 2K  (5xxx and the FEX'es) info comes in with these tables.

Physical Info : 1.3.6.1.2.1.47.1.1.1.1.2

Serial # (if applicable) : 1.3.6.1.2.1.47.1.1.1.1.11

Power Status : 1.3.6.1.4.1.9.9.117.1.1.2.1.2   (Does the entity have power for Power Supplies and other items)

Operational Status : 1.3.6.1.4.1.9.9.117.1.2.1.1.2    Module has power (from above), but is it Operational ?

Fan Status : 1.3.6.1.4.1.9.9.117.1.4.1.1.1  This will supply you the status of your Fan's and PS Fan's

For all of the above, Different Row ID's are used for different entities, Fans, PS'es, Module's, and not each Row will give you an Actual Power Status... and beyond that only Modules will give you the operational status... so you either make several Custom Table Polller Charts with the same pollers and different row ID... or put it all into one and remember there will be a few gaps... (once you get rid of the empty rows [as in no status] it is a lot cleaner and easy to read).

To get 7K Module Data use these (edit and pick out the Row ID's of each thousand. 1K, 2K, 3K, etc.)

Physical Info : 1.3.6.1.2.1.47.1.1.1.1.2

Status : 1.3.6.1.4.1.9.9.91.1.1.1.1.4   --- 2nd review.. this may not be the status that you really need here. I will continue to look into this.

Level 9

cahunt wrote:

This may come in handy... i Use tables to gather these... then you may need to edit or check the RowID's you want (http://thwack.solarwinds.com/ideas/3430)

5K & 2K  (5xxx and the FEX'es) info comes in with these tables.

Physical Info : 1.3.6.1.2.1.47.1.1.1.1.2

Serial # (if applicable) : 1.3.6.1.2.1.47.1.1.1.1.11

Power Status : 1.3.6.1.4.1.9.9.117.1.1.2.1.2   (Does the entity have power for Power Supplies and other items)

Operational Status : 1.3.6.1.4.1.9.9.117.1.2.1.1.2    Module has power (from above), but is it Operational ?

Fan Status : 1.3.6.1.4.1.9.9.117.1.4.1.1.1  This will supply you the status of your Fan's and PS Fan's

For all of the above, Different Row ID's are used for different entities, Fans, PS'es, Module's, and not each Row will give you an Actual Power Status... and beyond that only Modules will give you the operational status... so you either make several Custom Table Polller Charts with the same pollers and different row ID... or put it all into one and remember there will be a few gaps... (once you get rid of the empty rows [as in no status] it is a lot cleaner and easy to read).

To get 7K Module Data use these (edit and pick out the Row ID's of each thousand. 1K, 2K, 3K, etc.)

Physical Info : 1.3.6.1.2.1.47.1.1.1.1.2

Status : 1.3.6.1.4.1.9.9.91.1.1.1.1.4   --- 2nd review.. this may not be the status that you really need here. I will continue to look into this.

It seems the 5k poller also works for the 7k nexus, I've applied the same undp to nexus 7k's in our environment, and it appears to be reporting correctly on the poller status, thanks for the info.