Monday, March 05, 2018

Configure Monitors in Netscaler

Monitors are used to poll and monitor services on the Netscaler to ensure that they are in service when required by clients.

Configuration

To create a new monitor
add lb monitor <monitor name> tcp <options>
So to create a new monitor to monitor TCP port 8012 named "alfa_8012"
add lb monitor alfa_8012 tcp -destport 8012
Default options include polling interval, timeouts, retries, etc as per the example below - these can all be adjusted accordingly.
> show monitor alfa_8012
1)   Name.......:      alfa_8012  Type......:       TCP State....:   ENABLED
Standard parameters:
 Interval.........:            5 sec   Retries...........:                3
 Response timeout.:            2 sec   Down time.........:           30 sec 
 Reverse..........:               NO   Transparent.......:               NO
 Secure...........:               NO   LRTM..............:         DISABLED
 Action...........:   Not applicable   Deviation.........:            0 sec 
 Destination IP...:    Bound service
 Destination port.:             8012
 Iptunnel.........:               NO
 TOS..............:               NO   TOS ID............:                0
 SNMP Alert Retries:               0     Success Retries..:                1
 Failure Retries..:                0
Done
After creating a new monitor, you must bind it to an existing service.
bind lb monitor alfa_8012 pdc2axa002_8012
To see current state of bound services to a monitor
> show lb monbindings alfa_8012
       alfa_8012       Type : TCP      State : ENABLED
               1) pdc1axa001_8012 (10.80.16.76:8012)   Type : TCP      Service state : UP      Monitor state :  ENABLED
               2) pdc2axa002_8012 (10.160.16.32:8012)  Type : TCP      Service state : UP      Monitor state :  ENABLED
Done
> 
Finally, you can see which monitor is bound to a given service
> show service pdc1axa001_8012
       pdc1axa001_8012 (10.80.16.76:8012) - TCP
       State: UP
       Last state change was at Mon Jun 27 09:46:39 2016 
       Time since last state change: 7 days, 01:07:14.390
       Server Name: pdc1axa001 
       Server ID : None        Monitor Threshold : 0
       Max Conn: 0     Max Req: 0      Max Bandwidth: 0 kbits
       Use Source IP: NO
       Client Keepalive(CKA): NO
       Access Down Service: NO
       TCP Buffering(TCPB): NO
       HTTP Compression(CMP): NO
       Idle timeout: Client: 9000 sec  Server: 9000 sec
       Client IP: DISABLED 
       Cacheable: NO
       SC: OFF
       SP: ON
       Down state flush: ENABLED
       Appflow logging: ENABLED
        TD: 0
1)      Monitor Name: alfa_8012
               State: UP       Weight: 1       Passive: 0
               Probes: 95      Failed [Total: 0 Current: 0]
               Last response: Success - TCP syn+ack received.
               Response Time: 0.0 millisec
Done

Netscaler Documentation