Bobcares

HAProxy ACL Map | All About

by | Jul 8, 2024

The well-known open-source load balancer HAProxy has a feature called HAProxy ACL Map that makes traffic routing choices simpler and flexible. Let’s look into the details. At Bobcares, we assist our customers with several queries on a daily basis as part of our Server Management Services.

Overview
  1. HAProxy ACL Map: Introduction
  2. Benefits
  3. Example: Host-Based Routing

HAProxy ACL Map: Introduction

A map file in HAProxy contains key-value pairs. The load balancer configuration uses these pairs to look up values, such as determining which URL to redirect or which backend to send a request to. Some of the key points are as follows:

haproxy acl map

i. Map Files: Store keys and values externally, read at startup. Changes require reloading HAProxy.

ii. ACLs (Access Control Lists): Define rules to permit or deny traffic based on conditions.

iii. ACL Maps: Extend ACLs by referencing external map files for flexible and maintainable configurations.

Benefits

i. Flexibility: Modify key-value pairs without rewriting the entire configuration.

ii. Reusability: Use the same map file for multiple ACLs.

iii. Maintainability: Keep access control logic separate for better organization.

Example: Host-Based Routing

1. Create Map File (host_map.txt):

example.com backend_example
api.example.com backend_api

2. HAProxy Configuration:

haproxy

global
map /path/to/host_map.txt

frontend frontend_main
acl is_example hdr(Host) map(/path/to/host_map.txt) example.com
acl is_api hdr(Host) map(/path/to/host_map.txt) api.example.com

use_backend backend_example if is_example
use_backend backend_api if is_api

In this example, requests with the Host header “example.com” route to backend_example, and those with “api.example.com” go to backend_api.

[Want to learn more? Reach out to us if you have any further questions.]

Conclusion

To sum up, our Support team went over the details of HAProxy ACL Map.

0 Comments

Submit a Comment

Your email address will not be published. Required fields are marked *

Never again lose customers to poor
server speed! Let us help you.