Real Server Monitoring

The Library — Real Server Monitors page allows you to add, view and edit custom monitoring. These are
layer 7 server “Health-Checks” and once configured will appear in the drop-down list for Server Monitoring.

This page is split in to three sections

 

 

Details

Name:

Double click on the column
to manually add in a name for your monitor.


Description:

Double click on the column
to manually add in a description for your monitor.


Monitoring Method:

Double click on the column
to choose the monitoring method from the dropdown list.


Page Location:

Double click on the column
to manually add in a page location for an HTTP monitor. This can be a
relative link such as /folder1/folder2/page1.html. You can also use an
absolute link where the web site is bound to the hostname.


Required Content:

Double click on the column
to manually add in the required content. This will change depending on
the monitoring method.

Applied to VS:

This column will be populated automatically with
the service IP:Port that the monitor is applied to. You will not be
able to delete any Monitor that has been applied to a virtual service.

User:

Some custom monitors can use this value along with the password column to log into a real server.

Password:

Some custom monitors can use this value along with the user column to log into a real server.

Threshold:

This is a general integer to be used in custom monitors where a threshold like CPU level is required.

 

NOTE: Please ensure the response back from the Application server is not
a “Chunked” response

 

Monitoring
Method

Description

Example

HTTP 200 OK In this mode, a TCP connection is made to the content server as above, but after connection is made, a brief HTTP request is made to the content server.A HTTP response is waited for and it is checked for the “200 OK” response code. If the “200 OK” response code is received, the content server is deemed to be up and running. If, for any reason, the “200 OK” response code is not received, including timeouts, failure to
connect, etc. then the content server is regarded as down.This monitoring method can only really be used with HTTP and Accelerate HTTP service types, although if a Layer 4 Service Type is in use for an HTTP server, it could still be used if SSL is not in use on the content server, or is handled appropriately by the “Content SSL” facility.
Name:

200OK


Description

Check production web site


Monitoring Method:

HTTP 200 OK


Page Location:

/main/index.html
ORhttp://www.edgenexus.io/main/index.html


Required Content:

N/A
HTTP Response In
this mode, a connection and HTTP request/response are made/checked for
as above, but instead of the “200 OK” response code being checked for,
a custom text is searched for in both the HTTP headers, and the body of
the HTTP response.The text can be a whole header, part of a header, a
line from part of a page, or just one word. If the text is found, the
content server is deemed to be up and running.This monitoring method
can only really be used with HTTP and Accelerate HTTP service types,
although if a Layer 4 Service Type is in use for an HTTP server, it
could still be used if SSL is not in use on the content server, or is
handled appropriately by the “Content SSL” facility.
Name:

Server Up


Description

Check content of
page for “Server Up”


Monitoring Method:

HTTP Response


Page Location:

/main/index.html
OR
http://www.edgenexus.io/main/index.html


Required Content:

Server Up
DICOM In this mode we
send a DICOM echo using the “Source Calling” AE Title value in the required content column. You can also set the “Destination Called” AE Title value in the Notes
section of each server. You can find the Notes column withing the IP Services–Virtual Services–Server page
Name:

DICOM


Description

L7 health check for
DICOM service


Monitoring Method:

DICOM


Page Location:

N/A


Required Content:

AET Value
TCP Out of Band This is similar to a TCP Connect
except that you can specify the port you wish to monitor in the
required content column. This port is typically not the same as the
traffic port and is used when you want to tie services together.
Name:

TCP Out of Band

Description:

Monitor Out of Band/Traffic port

Page Location:

N/A

Required Content:

555
Multi-Port TCP monitor This
is similar to above except that you can have a number of different
ports. The monitor is deemed successful only if all ports specified in
the required content section respond correctly.
Name:

Multi Port Monitor

Description:

Monitor multiple ports for success

Page Location:

N/A

Required Content:

135,59534,59535

 

 

Example

 

 

Upload Monitor

In this section you can upload a custom monitor that you have created or that has been created for you by our support team. It will take the form of a Perl script file. Example DNS.pl

  • Give you monitor a name so that you can identify it in the Monitoring Method list
  • Browse for the .pl file
  • Click Upload
  • Your file will be uploaded to the correct location and will be visible as a new Monitoring Method.

 

 

Custom Monitors

In this section you can view custom monitors that have been uploaded and remove them if they are no longer needed.

  • Click the drop down box
  • Select the name of the custom monitor
  • Click Remove
  • Your custom monitor will no longer be visible in the Monitoring Method list

 

Creating a Custom Monitor Perl Script

You should be familiar with Perl. The following show you what can be included in your script with an image of a working example at the bottom for reference.

The #Monitor-Name: is the name  used for the Perl Script stored on the ALB-X. If you do not include this line then your script will not be found!

The following are mandatory

  • #Monitor-Name:
  • use strict;
  • use warning;

The perl scripts are run in a chrooted environment.

They often call another application such as wget or curl

Sometimes these need to be updated for a certain feature such as SNI

Dynamic Values

  • my $host = $_[0];
    • This uses the “Address” from IP Services–Real Server section
  • my $port = $_[1];
    • This uses the “Port” from IP Services–Real Server section
  • my $content = $_[2];
    • This uses the “Required Content” value from the Library–Real Server Monitoring section
  • my $notes = $_[3];
    • This uses the “Notes” column in Real Server section of IP Services
  • my $page = $_[4];
    • This uses the “Page Location” values from Library–Real Server Monitor section
  • my $user = $_[5];
    • This uses the “User” value from the Library–Real Server Monitor section
  • my $password = $_[6];
    • This uses the “Password” value from the Library–Real Server Monitor section

 

Custom Health Checks have two outcomes

  1. Successful
    • Return Value 1
    • Print a success message to Syslog
    • Mark the Real Server Online (provided IN COUNT match)
  2. Unsuccessful
    • Return Value 2
    • Print a message saying Unsuccessful to Syslog
    • Mark the Real Server Offline (provided OUT Count match)

Example:

 

NOTE@ Custom Monitoring – Use of global variables is not possible. Use local variables only – variables defined inside function

Back to Top

 

Back to Top

Log in with your credentials

or    

Forgot your details?

Create Account