Cấu hình Haproxy multiple​​ port Frontend và multiple Backend​​ - Sử dụng Access List trên Haproxy

Cấu hình Haproxy multiple​​ port Frontend và multiple Backend​​ - Sử dụng Access List trên Haproxy

Cấu hình Haproxy multiple​​ port Frontend và multiple Backend​​ - Sử dụng Access List trên Haproxy

Trong bài hướng dẫn này tôi sẽ giới thiệu các bạn cấu hình Haproxy với​​ nhiều​​ port​​ Frontend và với nhiều​​ Backend. Mỗi​​ Port trên​​ Frontend sẽ được cấu hình để trỏ về​​ Backend theo từng yêu cầu cụ thể.​​ Ví dụ cũng chỉ ra cách sử dụng access-list đơn giản trên haproxy.​​ chi tiết cấu hình như sau:

Các bạn có thể tuỳ chỉnh phần Frontend và backend theo mỗi case.​​ Ở trường hợp của tôi cấu hình để mở nhiều port cho dịch vụ open stack

Cấu hình:

cat /etc/haproxy/haproxy.cfg

 

global

 ​​ ​​ ​​ ​​ ​​ ​​ ​​​​ log 127.0.0.1  ​​​​ local0

 ​​ ​​ ​​ ​​ ​​ ​​ ​​​​ log 127.0.0.1  ​​​​ local1 notice

 ​​ ​​ ​​ ​​ ​​ ​​ ​​​​ #log loghost  ​​ ​​​​ local0 info

 ​​ ​​ ​​ ​​ ​​ ​​ ​​​​ maxconn 4096

 ​​ ​​ ​​ ​​ ​​ ​​ ​​​​ chroot /var/lib/haproxy

 ​​ ​​ ​​ ​​ ​​ ​​ ​​​​ user haproxy

 ​​ ​​ ​​ ​​ ​​ ​​ ​​​​ group haproxy

 ​​ ​​ ​​ ​​ ​​ ​​ ​​​​ daemon

 ​​ ​​ ​​ ​​ ​​ ​​ ​​​​ #debug

 ​​ ​​ ​​ ​​ ​​ ​​ ​​​​ #quiet

defaults

 ​​ ​​ ​​ ​​ ​​ ​​ ​​​​ log  ​​ ​​ ​​​​ global

 ​​ ​​ ​​ ​​ ​​ ​​ ​​​​ mode  ​​ ​​​​ http

 ​​ ​​ ​​ ​​ ​​ ​​ ​​​​ stats  ​​​​ uri  ​​ ​​ ​​​​ /haproxy

 ​​ ​​ ​​ ​​ ​​ ​​ ​​​​ stats  ​​​​ realm  ​​​​ Haproxy\ Statistics

 ​​ ​​ ​​ ​​ ​​ ​​ ​​​​ stats  ​​​​ auth  ​​ ​​​​ admin:123456

 ​​ ​​ ​​ ​​ ​​ ​​ ​​​​ log  ​​ ​​ ​​​​ global

 ​​ ​​ ​​ ​​ ​​ ​​ ​​​​ option ​​ dontlognull

 ​​ ​​ ​​ ​​ ​​ ​​ ​​​​ retries 3

 ​​ ​​ ​​ ​​ ​​ ​​ ​​​​ redispatch

 ​​ ​​ ​​ ​​ ​​ ​​ ​​​​ maxconn 2000

 ​​ ​​ ​​ ​​ ​​ ​​ ​​​​ contimeout  ​​ ​​ ​​ ​​​​ 5000

 ​​ ​​ ​​ ​​ ​​ ​​ ​​​​ clitimeout  ​​ ​​ ​​ ​​​​ 50000

 ​​ ​​ ​​ ​​ ​​ ​​ ​​​​ srvtimeout  ​​ ​​ ​​ ​​​​ 50000

 

 

frontend MAIN

 ​​ ​​ ​​​​ bind *:80

 ​​ ​​ ​​​​ bind *:81

 ​​ ​​ ​​​​ bind *:6080

 ​​ ​​ ​​​​ bind *:15672

 ​​ ​​ ​​​​ bind *:9292

 ​​ ​​ ​​​​ bind *:35357

 ​​ ​​ ​​​​ bind *:5000

 

 ​​ ​​ ​​​​ mode http

 

 ​​ ​​ ​​​​ acl FIRST_URL hdr_dom(host) -i​​ 123.123.123.123:81

 ​​ ​​ ​​​​ acl SECOND_URL hdr_dom(host) -i​​ 123.123.123.123:6080

 ​​ ​​ ​​​​ acl THIRD_URL hdr_dom(host) -i​​ 123.123.123.123:15672

 ​​ ​​ ​​​​ acl FOUR_URL hdr_dom(host) -i​​ 123.123.123.123:9292

 ​​ ​​ ​​​​ acl FIVE_URL hdr_dom(host) -i​​ 123.123.123.123:35357

 ​​ ​​ ​​​​ acl SIX_URL hdr_dom(host) -i​​ 123.123.123.123:5000

 

 

 ​​ ​​ ​​​​ use_backend FIRST if FIRST_URL

 ​​ ​​ ​​​​ use_backend SECOND if SECOND_URL

 ​​ ​​ ​​​​ use_backend THIRD if THIRD_URL

 ​​ ​​ ​​​​ use_backend FOUR if FOUR_URL

 ​​ ​​ ​​​​ use_backend FIVE if FIVE_URL

 ​​ ​​ ​​​​ use_backend SIX if SIX_URL

 

backend FIRST

 ​​ ​​ ​​​​ mode http

 ​​ ​​ ​​​​ server web-first 10.0.3.10:80

 

backend SECOND

 ​​ ​​ ​​​​ mode http

 ​​ ​​ ​​​​ server web-second 10.0.3.9:6080

#  ​​ ​​​​ server web-second2 10.0.3.15:6080

 

backend THIRD

 ​​ ​​ ​​​​ mode http

 ​​ ​​ ​​​​ server web-third 10.0.3.3:15672

 

backend FOUR

 ​​ ​​ ​​​​ mode http

 ​​ ​​ ​​​​ server web-four 10.0.3.7:9292

 

backend FIVE

 ​​ ​​ ​​​​ mode http

 ​​ ​​ ​​​​ server web-five 10.0.3.6:25257

 

backend SIX

 ​​ ​​ ​​​​ mode http

 ​​ ​​ ​​​​ server web-six 10.0.3.5:5000

 

Lưu ý:​​ 

Bạn có thể sử dụng mode HTTP hoặc TCP tuỳ theo nhu cầu.

Bạn có thể truy cập link:​​ http://123.13.123.123/haproxy​​ với user/pass admin/123456 để monitor haproxy.

Tài liệu tham khảo

https://blog.skufel.net/2015/09/how-to-publish-multiple-urls-with-single-ip-and-haproxy/

 

Cảm ơn các bạn đã quan tâm theo dõi.

BÀI VIẾT CÙNG CHUYÊN MỤC

Critical - CVE 2026 98432 - Nguy cơ tấn công từ xa vào Linux - Ubuntu, Centos, Debian
Critical - CVE 2026 98432 - Nguy cơ tấn công từ xa vào ...

Critical - CVE 2026 98432 - Nguy cơ tấn công từ xa vào Linux - Ubuntu, Centos, ...

CXMT và DRAM 4F² cho thấy Trung Quốc tiến nhanh nhưng chưa thể kết luận Mỹ thua cuộc
CXMT và DRAM 4F² cho thấy Trung Quốc tiến nhanh nhưng ...

CXMT và DRAM 4F² cho thấy Trung Quốc tiến nhanh nhưng chưa thể kết luận Mỹ thua ...

Cảnh báo NAS Synology, XPEnology bị mã hóa dữ liệu: Vì sao bị tấn công và cách xử lý?
Cảnh báo NAS Synology, XPEnology bị mã hóa dữ liệu: Vì ...

Cảnh báo NAS Synology, XPEnology bị mã hóa dữ liệu: Vì sao bị tấn công và cách ...

Cảnh báo Telegram trên iPhone: Nguy cơ bị hacker tấn công qua sticker và cách phòng tránh
Cảnh báo Telegram trên iPhone: Nguy cơ bị hacker tấn ...

Cảnh báo Telegram trên iPhone: Nguy cơ bị hacker tấn công qua sticker và cách ...

PHP2Shell làm Nhật Bản “khốn đốn”: Vì sao nhiều dịch vụ tạm dừng, còn thế giới chịu ảnh hưởng ra sao?
PHP2Shell làm Nhật Bản “khốn đốn”: Vì sao nhiều dịch ...

PHP2Shell làm Nhật Bản “khốn đốn”: Vì sao nhiều dịch vụ tạm dừng, còn thế giới ...

PHP2Shell: Hai lỗ hổng nghiêm trọng đe dọa hàng triệu website – Cách kiểm tra và khắc phục
PHP2Shell: Hai lỗ hổng nghiêm trọng đe dọa hàng triệu ...

PHP2Shell: Hai lỗ hổng nghiêm trọng đe dọa hàng triệu website – Cách kiểm tra ...