Network Switch Pattern Fails at Stacked Switches: Get entPhysicalTable


Description

You may see some of the following errors:

All commands failed on host

or
com.snc.sw.exception.ConnectionFailureException: SNMP table query failed on host" .

or

SNMP provider is not active. State: FAIL

It is more than likely that the particular Cisco Model being discovered has an issue here. We have discovered that the issue occurs after the following steps in section 35 are run:

----- Handle FDB for Cisco
----- Handle bridge ports for Cisco
----- Handle STP for Cisco

If ANY of these steps are run on some particular Cisco Models, the SNMP Connection will be severed, and the getEntPhysicalTable step in the Stacked Switches section will fail and the pattern will fail.

We are linking this article to:

PRB1378161

Release or Environment

Patterns 1.0.70

Cause


We have determined so far that the following sysObjectOIDs are having the issue:

1.3.6.1.4.1.9.1.917

1.3.6.1.4.1.9.1.283

1.3.6.1.4.1.9.1.516

1.3.6.1.4.1.9.1.1745

*It is possible that we should exclude anything with a sysObjectID that matches 1.3.6.1.4.1.9.1, but for now we will go on a case by case basis


Resolution

Workaround:

1. Create a step in section 35 of the Network Switch Pattern that occurs right before "Handle FDB for Cisco"

2. Call the Step Flag to Run L2 Commands or Not and make it a Set Parameter Value type

3. Add a precondition see if any of the following conditions are true:

$sysObjectID equals 1.3.6.1.4.1.9.1.917

$sysObjectID equals 1.3.6.1.4.1.9.1.283

$sysObjectID equals 1.3.6.1.4.1.9.1.516

$sysObjectID equals 1.3.6.1.4.1.9.1.1745

4. If true- set parameter $shouldRunL2commands to false

5. Now Go to each of the following 3 steps and set an addition precondition:

----- Handle FDB for Cisco

----- Handle bridge ports for Cisco

----- Handle STP for Cisco

*Precondition is $shouldRunL2commands Not Equals "false"

6. Save and publish the pattern and sync it to the mid.

7. Additionally it was communicated that the following sys_properties need to be set:

glide.discovery.ip_based.active = true
glide.discovery.device.duplicate.ip.optimization = true


***Please keep in mind that the OIDs we have are the only one's so far. If this does not resolve the issue, check the SNMP Classify input payload to see if there is yet another OID to add to the list.