Overriding Host Header in Health Monitor

By default,
Avi Load Balancer
appends additional HTTP headers (Host, User-Agent and Accept) into HTTP health monitor requests.
The exact values of these headers are as follows:
Header
Values
User-Agent
avi/1.0\r\n
Host
<hostname>\r\n
Accept
*/*;\r\n\r\n
For instance, if an admin (user) adds a Host header in
HTTP Client Request Header
field of a health monitor,
Avi Load Balancer
will send this additional Host header together with the existing Host header (Host header inserted by
Avi Load Balancer
).
To prevent adding additional host headers, in the HTTP or HTTPS Health Monitors, select
Use Exact Request
in the
Avi Load Balancer
UI.
Alternatively, you can configure the health monitor to instruct
Avi Load Balancer
to pass the exact HTTP request string as specified by the admin (user), without any automatic insertion of the additional HTTP headers using the CLI.
This indicates that user is now responsible for adding the appropriate headers to the HTTP client request field.

Configuration from
Avi Load Balancer
CLI

Login to
Avi Load Balancer
CLI, and use
configure healthmonitor System-HTTP
command to change the value of the flag
exact-http-request
.
[admin:10-1-1-1]: > configure healthmonitor System-HTTP [admin:10-1-1-1]: healthmonitor> http_monitor [admin:10-1-1-1]: healthmonitor:http_monitor> http_request [admin:10-1-1-1]: healthmonitor:http_monitor> http_request "HEAD / HTTP/1.0\r\n\r\n" Overwriting the previously entered value for http_request [admin:10-1-1-1]: healthmonitor:http_monitor> exact_http_request Overwriting the previously entered value for exact_http_request [admin:10-1-1-1]: healthmonitor:http_monitor> [admin:10-1-1-1]: healthmonitor:http_monitor> save [admin:10-1-1-1]: healthmonitor> save

Configuring through UI

Navigate to
Templates
Profiles
Health Monitors
, click the edit icon to edit health monitors. Choose the desired HTTP health monitor, select the check box for
Use Exact Request
and click
Save
.