fbpx

Hướng Dẫn Cài Đặt và Cấu Hình HAProxy trên Ubuntu 22.04

Hướng Dẫn Cài Đặt và Cấu Hình HAProxy trên Ubuntu 22.04

Giới thiệu

HAProxy (High Availability Proxy) là một công cụ cân bằng tải và proxy mã nguồn mở, hỗ trợ cả TCP và HTTP. Nó được sử dụng để phân phối lưu lượng giữa nhiều máy chủ nhằm cải thiện hiệu suất và khả năng chịu tải của hệ thống. Nếu bạn có một website với lượng truy cập lớn, HAProxy có thể đóng vai trò như một reverse proxy giúp tối ưu hóa tải và nâng cao độ tin cậy của hệ thống.

Trong bài viết này, chúng ta sẽ hướng dẫn cách cài đặt và cấu hình HAProxy trên Ubuntu 22.04.

Yêu cầu

  • Cần 2 hoặc 3 máy chủ Ubuntu 22.04, một máy làm HAProxy và hai máy làm web server.
  • Quyền truy cập SSH với tài khoản root hoặc người dùng có quyền sudo.

Bước 1: Đăng nhập và cập nhật hệ thống

Trước tiên, hãy đăng nhập vào máy chủ HAProxy với quyền root hoặc sudo và kiểm tra phiên bản Ubuntu:

lsb_release -a

Kết quả hiển thị:

No LSB modules are available.

Distributor ID: Ubuntu

Description: Ubuntu 22.04.1 LTS

Release: 22.04

Codename: jammy

Tiếp theo, cập nhật tất cả các gói phần mềm:

apt update && apt upgrade -y

Bước 2: Cài đặt HAProxy

Mặc định, HAProxy có sẵn trong kho lưu trữ của Ubuntu 22.04. Tuy nhiên, để cài đặt phiên bản mới nhất (2.8), hãy thực hiện các lệnh sau:

sudo apt install software-properties-common -y

image 324

sudo add-apt-repository ppa:vbernat/haproxy-2.8

image 325

sudo apt update

sudo apt install haproxy -y

Kiểm tra phiên bản HAProxy đã cài đặt:

sudo haproxy -v

Bước 3: Cấu hình HAProxy

Trước khi chỉnh sửa, hãy sao lưu tệp cấu hình mặc định:

sudo cp -a /etc/haproxy/haproxy.cfg{,.orig}

Mở tệp cấu hình để chỉnh sửa:

sudo nano /etc/haproxy/haproxy.cfg

Thêm đoạn cấu hình sau để thiết lập HAProxy làm reverse proxy và cân bằng tải:

frontend haproxy-main

    bind *:80

    option forwardfor  

    default_backend apache_webservers    

backend apache_webservers

    balance roundrobin

    server websvr1 10.0.0.10:80 check

    server websvr2 10.0.0.20:80 check

Thay thế 10.0.0.10 và 10.0.0.20 bằng địa chỉ IP của các máy chủ web thực tế.

image 326

Bước 4: Cài đặt Apache trên các web server

Trên mỗi máy chủ web, cài đặt Apache:

sudo apt update

sudo apt install apache2 -y

Sau đó, tạo tệp index.html để kiểm tra:

Trên websvr1:

sudo echo "<H1>Apache on backend server 1 is running </H1>" | sudo tee /var/www/html/index.html

Trên websvr2:

sudo echo "<H1>Apache on backend server 2 is running </H1>" | sudo tee /var/www/html/index.html

Bước 5: Khởi động lại HAProxy

Sau khi cấu hình hoàn tất, khởi động lại HAProxy:

sudo systemctl restart haproxy

Kiểm tra xem HAProxy có hoạt động hay không:

while true; do curl localhost; sleep 1; done

Bạn sẽ thấy luân phiên hiển thị nội dung từ websvr1 và websvr2, chứng tỏ cân bằng tải hoạt động đúng.

image 327

Bước 6: Cấu hình giao diện giám sát HAProxy

Nếu bạn muốn theo dõi HAProxy qua giao diện web, hãy mở tệp cấu hình:

sudo nano /etc/haproxy/haproxy.cfg

Thêm đoạn cấu hình sau:

listen stats

    bind :8800

    stats enable

    stats uri /

    stats hide-version

    stats auth admin:password

    default_backend apache_webservers

Thay admin:password bằng thông tin đăng nhập mong muốn.

image 328

Khởi động lại HAProxy:

sudo systemctl restart haproxy

Bây giờ, bạn có thể truy cập http://YOUR_HAPROXY_IP:8800 để xem thống kê.

image 329

Kết luận

Bài viết này đã hướng dẫn bạn cách cài đặt và cấu hình HAProxy trên Ubuntu 22.04 để làm reverse proxy và cân bằng tải giữa hai máy chủ web. Với HAProxy, bạn có thể cải thiện hiệu suất và độ ổn định của hệ thống, đảm bảo khả năng xử lý lưu lượng truy cập lớn một cách hiệu quả.

What are your feelings
Cập nhật vào 24/03/2025
Cùng nhau, Trực tuyến.

Chúng tôi ở đây giúp các bạn có thể làm việc online một cách hiểu quả nhất.

Theo Dõi Chúng Tôi

Copyright © 2025. All Rights Reserved To VMon Cloud.