5 Replies Latest reply on Nov 13, 2018 6:23 PM by luggage

    Viptela device monitoring with NPM 12.1

    dipumj

      Hi All,

       

      I am looking for a solution for monitoring Viptela devices with NPM 12.1 , I read somewhere saying it can be done the same way as Meraki " with API key" but I still wanted to test by myself.

       

      Please let me know your thought on this.

       

      with regards,

      George

        • Re: Viptela device monitoring with NPM 12.1
          pguenther

          I have the same question. I don't have any Meraki device so not familiar with the API method you mentioned. We just rolled out a small Viptela deployment with hopes to take it enterprise wide.

          • Re: Viptela device monitoring with NPM 12.1
            zagwill

            George,

             

            Your not alone, I in need of monitoring Viptela equipment as well.  SW or another THWACK member if you have dug deep into this area, please share your findings.

             

            Thanks,

             

            WillQ

            • Re: Viptela device monitoring with NPM 12.1
              luggage

              Hi George,

               

              Currently we monitor the vEdge routers just via SNMP and I use undp to monitor OIDs for bfd session state, etc (adding the tloc local color enumeration as the label on each row).

               

              Would be nice to be able to interact with vManage via its REStful API directly or have events from vManage push to NPM but we are not there yet.

               

              OIDs I use are:

              1.3.6.1.4.1.41916.6.1.1.1.8 bfdSessionsListLocalColor

              1.3.6.1.4.1.41916.6.1.1.1.10 bfdSessionsListState

               

              I then have this trigger alerts based on the tloc local color having an Up BFD session in the ListState table (we have a dual hub/spoke policy) and triggering an alert if it doesn't. Some of my alert logic isn't all the way there yet though if the result is a table that does not have a row for the color i'm looking for in it (due to physical interface down, etc).

               

              Peter.

                • Re: Viptela device monitoring with NPM 12.1
                  deroum

                  Could you please show how you were able to do this? I am capturing all this information but I am unsure how to get it to alert when the TLOC color changes since both the snmp polls are returning table values.

                    • Re: Viptela device monitoring with NPM 12.1
                      luggage

                      We're doing this by:

                       

                      UNDPs assigned to vEdge nodes:

                      1.3.6.1.4.1.41916.6.1.1.1.8 bfdSessionsListLocalColor (Get Table: Enumerate 2=mpls, 4= biz-internet)

                      1.3.6.1.4.1.41916.6.1.1.1.10 bfdSessionsListState (Get Table: Enumerate 1= Down, 3=Up)

                       

                      Then using a custom SWQL query thanks to a great amount of help from shuth to show the status of the BFD session table. We apply this to all nodes in our environment linked via  custom property "StoreMainSite" so we can see the bfd status on the details page of all nodes (switches, etc) at that site... you can do this some other way, or just on your vEdge nodes so you don't need to make this relationship.

                       

                      This works for us as we run a dual hub/spoke control policy topology for our environment. On a full mesh you would probably need to come up with a different way to do this.

                       

                      SELECT
                          n.Caption AS NodeName,
                          n.DetailsUrl AS [_linkfor_NodeName],
                          t1.Status AS Status,
                          '/Orion/images/StatusIcons/Small-' + s.Status + '.gif' AS [_IconFor_Status],
                          t2.Status AS Type,
                      t3.Label AS HubSite
                      
                      
                      FROM Orion.NPM.CustomPollerStatus s 
                      JOIN Orion.NPM.CustomPollerAssignment a ON s.CustomPollerAssignmentID = a.CustomPollerAssignmentID
                      JOIN Orion.Nodes n ON n.NodeID = a.NodeID
                      
                      
                      -- Link State (Up, Down)
                      JOIN
                          ( SELECT s.Status, s.CustomPollerAssignmentID, s.DateTime, s.Rate, s.Total, s.RawStatus, s.RowID
                          FROM Orion.NPM.CustomPollerStatus s
                          JOIN Orion.NPM.CustomPollerAssignment a on s.CustomPollerAssignmentID = a.CustomPollerAssignmentID
                      
                      
                          WHERE a.CustomPollerName = 'bfdSessionsListState'
                          AND a.NodeID IN (
                          SELECT
                              n.NodeID
                             FROM Orion.Nodes n
                             JOIN Orion.NodesCustomProperties cp ON n.NodeID = cp.NodeID
                      
                      
                             WHERE cp.StoreMainSite IN 
                              (
                                SELECT 
                                 cp.StoreMainSite AS SourceMainSite
                      
                      
                                FROM Orion.NodesCustomProperties cp
                                WHERE cp.NodeID = '${NodeID}'
                              )    
                      )
                          ) AS t1  ON s.RowID = t1.RowID
                      
                      
                      -- Link Colour (lte, mpls, biz-internet, etc)
                      JOIN
                          ( SELECT s.Status, s.CustomPollerAssignmentID, s.DateTime, s.Rate, s.Total, s.RawStatus, s.RowID
                          FROM Orion.NPM.CustomPollerStatus s
                          JOIN Orion.NPM.CustomPollerAssignment a on s.CustomPollerAssignmentID = a.CustomPollerAssignmentID
                      
                      
                          WHERE a.CustomPollerName = 'bfdSessionsListLocalColor'
                          AND a.NodeID IN (
                          SELECT
                              n.NodeID
                             FROM Orion.Nodes n
                             JOIN Orion.NodesCustomProperties cp ON n.NodeID = cp.NodeID
                      
                      
                             WHERE cp.StoreMainSite IN 
                              (
                                SELECT 
                                 cp.StoreMainSite AS SourceMainSite
                      
                      
                                FROM Orion.NodesCustomProperties cp
                                WHERE cp.NodeID = '${NodeID}'
                              )    
                      )
                          ) AS t2  ON s.RowID = t2.RowID
                      
                      
                      -- Link Label (8888, 9999)
                      JOIN
                          ( SELECT l.label, l.RowID
                          FROM Orion.NPM.CustomPollerLabels l 
                      JOIN Orion.NPM.CustomPollerAssignment a ON a.CustomPollerAssignmentID = l.CustomPollerAssignmentID
                      
                          WHERE a.CustomPollerName = 'bfdSessionsListLocalColor'
                          AND a.NodeID IN (
                          SELECT
                              n.NodeID
                             FROM Orion.Nodes n
                             JOIN Orion.NodesCustomProperties cp ON n.NodeID = cp.NodeID
                      
                      
                             WHERE cp.StoreMainSite IN 
                              (
                                SELECT 
                                 cp.StoreMainSite AS SourceMainSite
                      
                      
                                FROM Orion.NodesCustomProperties cp
                                WHERE cp.NodeID = '${NodeID}'
                              )    
                      )
                          ) AS t3  ON s.RowID = t3.RowID
                      
                      
                      
                      WHERE a.CustomPollerName = 'bfdSessionsListState'
                      AND a.NodeID IN (
                          SELECT
                              n.NodeID
                             FROM Orion.Nodes n
                             JOIN Orion.NodesCustomProperties cp ON n.NodeID = cp.NodeID
                      
                      
                             WHERE cp.StoreMainSite IN 
                              (
                                SELECT 
                                 cp.StoreMainSite AS SourceMainSite
                      
                      
                                FROM Orion.NodesCustomProperties cp
                                WHERE cp.NodeID = '${NodeID}'
                              )    
                      )
                      
                      
                      ORDER BY Type

                       

                      The result looks like this in Node Details for any node at this Site ID - which is a normal state (mpls and biz internet TLOC local color UP to each hub site 8888 and 9999)

                       

                      To go further shuth has created an alert that fires if a local tloc color is not up when that node has a custom property set that reflects that colored link has been provisioned for this site.