Application Delivery (ADX)

Reply
Contributor
Posts: 39
Registered: ‎05-04-2009

How do I tie multiple health checks together?

I had a look at the following document - it is talking about how to tie the SSL and the HTTP health together. This is pretty nice and basically it is exactly what I need but the situation is slightly different.

I have two servers and each of them is having 2 IP address. There is an HTTP IP address and an HTTPS IP address at every server. I had to do this because of some strange limitations talking about the application itself.

What I need to do know is that I need to tie the HTTP and the HTTPS health check of every server together but the hc-track-group command required both services under the same real server... I do have to real server objects in the configuration for every phyical real server.

Any ideas?

Super Contributor
Posts: 316
Registered: ‎05-01-2009

Re: How do I tie multiple health checks together?

You are right hc-track-group requires the services to be below the same real server. You have to look at nested health checks. I have written a health check related document a few days ago and you might want to read through it quickly:

Let me assume you do have for real server objects in your configuration:

real server A a.b.c.1

real server B a.b.c.2

real server C a.b.c.3

real server D a.b.c.4

A and B are two IP addresses at the same physical server and C and D are as well two IP addresses at the other physical server. A and C do offer HTTP and B and D HTTPS. Correct?

A needs to go down together with B (and the other way around)

C needs to go down together with D (and the other way around)

That means:

A is up as long as A AND B is UP

B is up as long as A AND B is UP

C is up as long as C AND D is UP

D is up as long as C AND D is UP

Define 4 healthck's - one for every IP addresses - something like:

no server use-simple-ssl-health-check


healthck http-A tcp
  dest-ip a.b.c.1
  port http
  protocol http
  protocol http url "GET /"
  interval 2
  retries 2
  l7-check

healthck ssl-B tcp
  dest-ip a.b.c.2
  port ssl
  protocol ssl

  protocol ssl url "GET /"
  interval 2
  retries 2
  l7-check

healthck http-C tcp
  dest-ip a.b.c.3
  port http
  protocol http
  protocol http url "GET /"
  interval 2
  retries 2
  l7-check

healthck ssl-D tcp
  dest-ip a.b.c.4
  port ssl
  protocol ssl

  protocol ssl url "GET /"
  interval 2
  retries 2
  l7-check

Put them together using a nested health check policy - for server A and B:

healthck AandB boolean
  and http-A ssl-B

For server C and D:

healthck CandD boolean
  and http-C ssl-D

Use them to do the health check for the real servers:

server real A a.b.c.1

  port http healthck AandB

server real B a.b.c.2

  port http healthck AandB

server real C a.b.c.3

  port http healthck CandD

server real D a.b.c.4

  port http healthck CandD

I am pretty sure there are some typos in there - please excuse me. Nevertheless I hope this is understandable.

Join the Community

Get quick and easy access to valuable resource designed to help you manage your Brocade Network.