Forum Discussion

kgaigl's avatar
kgaigl
Icon for Cirrocumulus rankCirrocumulus
Nov 13, 2023

LTM Monitoring IIS and Webserver Binding

Hello,

we've got a VS for 2 MS IIS Webserver.

Question: if I configure the Pool with regular Nodes, the Monitor connects the Nodes with the IP Adress, right?

Then I've got a problem with the Webserver-Binding (only Bindings for hostname and Website-Name)

What if I configure the Pool with fqdn-Node? Is it sure, Monitor connects with hostname?

when I make from BIG-IP a

 

curl -k  https://webbvk1.bvk.int/Smoke-Test

 

I get the Response

 

...Smoketest...

 

but with a Pool with webbvk1.bvk.int and webbvk2.bvk.int as fqdn-Node, the members are marked as down.

webbvk1 & 2 are CNAMEs

Send-String:

 

HEAD /Smoke-Test HTTP/1.0\r\n\r\n

 

Receive-String:

 

Smoketest

 

 any Idea, where I could look for? Or a Problem with the IIS?

Thank you

  • Ok, now it's ok:

    The IIS does not like health-Checks without User-Agent, so inserting "User-Agent: F5Monitor" was the solution

  • kgaigl's avatar
    kgaigl
    Icon for Cirrocumulus rankCirrocumulus

    Ok, now it's ok:

    The IIS does not like health-Checks without User-Agent, so inserting "User-Agent: F5Monitor" was the solution

  • kgaigl's avatar
    kgaigl
    Icon for Cirrocumulus rankCirrocumulus

    Thank you, I've got now member-specific monitors, but something's very strange here:

    when I do a curl -k https://webbvk2.bvk.int/Smoke-Test , the Server response is 200, fine.

    But the Server logs a 302, when the health-check is in progress, so the server is marked down.

  • A monitor connects always to the pool members it is attached to. The send string does not affect this. You need for each send string a separate monitor and attach it individually to the pool members.

  • kgaigl's avatar
    kgaigl
    Icon for Cirrocumulus rankCirrocumulus

    Thank you, but another question:

    CNAME webbvk1 is on Member A and CNAME webbvk2 is on Member B, and of course I need to monitor both Member.

    when I insert the hostname in the send-string, I only monitor webbvk1, or am I wrong?

  • Simply configure a new monitor with a http host header.

    HEAD / HTTP/1.1\r\nHost: <hostname>\r\nUser-Agent: F5Monitor\r\nConnection: close\r\n\r\n

    Replace <hostname> with the desired hostname.

    • whisperer's avatar
      whisperer
      Icon for MVP rankMVP

      Take a look here:

      https://my.f5.com/manage/s/article/K2167

      So, for your example, you will want an HTTP protocol and send string that supports host headers for virtual hosting support. So, in your case, it would be something like that following:

      GET /Smoke-Test HTTP/1.1\r\nHost: webbvk1.bvk.int\r\nConnection: Close\r\n\r\n