This discussion has been locked. The information referenced herein may be inaccurate due to age, software updates, or external references.
You can no longer post new replies to this discussion. If you have a similar question you can start a new discussion in this forum.

Setup F5 vIPs as Nodes - with node status taken from the F5 vIP

Intro

If you are like me, you have often wanted to have F5 vIPs (actually Virtual Servers) that appear with their F5 and Solarwinds specific status, to be nodes.  Without setting up a seperate node record using using ICMP to track it.  This allows:

  1. greater visibility of your vIP - eg you can put them on more screens and maps where the vIP is not otherwise available
  2. you can assign a SAM application to it.

This is made easier by a new feature(?) for 2020.2 on the F5 Server Details page - Linked Node

Setup

For now, you need to setup a linked node manually for each Virtual Server record.  If using a HA pair of F5s, be sure and set the link up on both nodes.

Manual Method

  1. Browse to each F5 Server screen, click Link Node.
  2. Select External for the node type (and whatever custom settings make sense)
  3. Save node.

 When finished it should look similar to this  (the status icon next to Node will start off purple - before the alerts change its status):

frak_0-1601787658904.png

Automatic Method

TODO - Plan for a powershell API script to run the following query, and add/delete Nodes:

Status Change - By Alerts

Note:  The following alert assumes an LTM F5.  If you are using a GTM, the SQL will need to change a table.

You just need to import the attached three alerts - SQL Based alerts hanging of Node.  Solarwinds does not let you set every available status, so there is a compromise.  Each alert is fundamentally the same - they link the F5 vIP (on the active F5) and the node, then return only where the status ID is not 'correct':

  • F5 Virtual Server - change status of linked Node -UP:  F5 OrionStatus=1(UP) and Node status is not 1
--0 Un, 1 UP, 2 Down, 9 unmanaged, 11 extern, 12 unreach
--change attached node status if it does not match
inner join (
    SELECT l.OrionStatus, HostNodeID
    FROM [dbo].[F5_LTM_Server] l
        inner join [dbo].[F5_System_Device] actv
            on l.NodeID = actv.NodeID
    where actv.failoverstatus = 3
) wh
ON wh.HostNodeID =  Nodes.NodeID

--UP
WHERE wh.OrionStatus = 1  
   AND Nodes.Status <> 1
  • F5 Virtual Server - change status of linked Node -DOWN:  F5 OrionStatus=2(Down) or 9 (forced down) and Node status is not 2 (down)
--0 Un, 1 UP, 2 Down, 9 unmanaged, 11 extern, 12 unreach
--change attached node status if it does not match

inner join (
    SELECT l.OrionStatus, HostNodeID
    FROM [dbo].[F5_LTM_Server] l
        inner join [dbo].[F5_System_Device] actv
            on l.NodeID = actv.NodeID
    where actv.failoverstatus = 3
) wh
ON wh.HostNodeID =  Nodes.NodeID    
--UP
WHERE wh.OrionStatus in ( 2, 9 )
    and Nodes.Status <> 2
  • F5 Virtual Server - change status of linked Node -UNMANAGED:  F5 OrionStatus=0(no service checking enabled) and Node status is not 9 (unmanged)
--0 Un, 1 UP, 2 Down, 9 unmanaged, 11 extern, 12 unreach
--change attached node status if it does not match

inner join (
    SELECT l.OrionStatus, HostNodeID
    FROM [dbo].[F5_LTM_Server] l
        inner join [dbo].[F5_System_Device] actv
            on l.NodeID = actv.NodeID
    where actv.failoverstatus = 3
) wh
ON wh.HostNodeID =  Nodes.NodeID
--Node address does not have service checking enabled
WHERE wh.OrionStatus = 0
    and Nodes.Status <> 9
attachments.zip