Quản lý Listener cho Load Balancer
Chức năng Load Balancer Listener Management cho phép bạn cấu hình và quản lý các listener - thành phần tiếp nhận lưu lượng đến (inbound traffic) và phân phối về các backend server. Thiết lập listener đúng là một phần quan trọng để đảm bảo Load Balancer hoạt động hiệu quả và phân phối tải chính xác.
Tổng quan về Listener
Listener là thành phần trong Load Balancer đảm nhiệm việc:
- Lắng nghe các kết nối đến trên một cổng và giao thức cụ thể
- Định tuyến lưu lượng đến các backend server theo chính sách đã cấu hình
- Xử lý các yêu cầu theo quy tắc và điều kiện đã định nghĩa
Mỗi Load Balancer có thể có nhiều listener khác nhau, mỗi listener phục vụ một mục đích riêng (ví dụ: HTTP, HTTPS, TCP).
Quản lý Listener Group
Listener Group là tập hợp các listener được cấu hình cùng nhau để xử lý lưu lượng mạng cho một dịch vụ hoặc ứng dụng cụ thể.
Giao diện quản lý Listener Group
Tạo Listener Group mới
- Truy cập vào tab Listeners trong giao diện quản lý Load Balancer
- Nhấn nút Create Listener Group
- Điền thông tin cơ bản cho Listener Group:
- Name: Tên nhận dạng cho Listener Group
- Description: Mô tả mục đích sử dụng (tùy chọn)
Giao diện chi tiết của Listener Group
Trong giao diện chi tiết Listener Group, bạn có thể:
- Thêm mới các listener
- Cấu hình các thông số cơ bản cho nhóm
- Xem tổng quan về các listener đã cấu hình
Cấu hình Listener
Thông tin cơ bản của Listener
Mỗi listener cần được cấu hình với các thông tin sau:
Trường | Mô tả |
---|---|
Name | Tên định danh của listener (ví dụ: listener-lb0) |
Protocol | Giao thức mạng (TCP, HTTP, HTTPS) |
Port | Cổng mạng mà listener sẽ lắng nghe |
Backends | Số lượng và danh sách các backend server |
Các loại Listener phổ biến
1. Listener TCP (Layer 4)
Listener TCP hoạt động ở tầng vận chuyển (Layer 4), chỉ xử lý dữ liệu dựa trên thông tin IP và cổng, không quan tâm đến nội dung gói tin.
Ưu điểm:
- Hiệu suất cao, độ trễ thấp
- Phù hợp với nhiều loại ứng dụng
Cấu hình mẫu:
- Protocol: TCP
- Port: 10254, 8080, v.v.
2. Listener HTTP/HTTPS (Layer 7)
Listener HTTP/HTTPS hoạt động ở tầng ứng dụng (Layer 7), có thể phân tích nội dung gói tin HTTP và định tuyến dựa trên URL, header, cookie, v.v.
Ưu điểm:
- Khả năng định tuyến thông minh dựa trên nội dung
- Hỗ trợ SSL termination
Cấu hình HTTPS với SSL
Đối với Listener HTTPS, bạn cần cung cấp thông tin chứng chỉ SSL:
Giao diện cấu hình HTTPS
Cách nhập chứng chỉ SSL
- Chọn Add a new Certificate
- Trong hộp thoại xuất hiện, nhập thông tin chứng chỉ:
Giao diện nhập chứng chỉ SSL
- Certificate Name: Tên định danh cho chứng chỉ
- Certificate: Nội dung chứng chỉ công khai (public certificate)
- Private Key: Khóa riêng tư của chứng chỉ
Quản lý Backend Server
Backend Server là các máy chủ thực sự xử lý các yêu cầu được chuyển tiếp từ Load Balancer. Mỗi Listener cần có ít nhất một Backend Server.
Giao diện thêm Backend Server
Thêm Backend Server
- Trong giao diện chi tiết của Listener, nhấn Add Backend
- Cung cấp thông tin:
- IP Address: Địa chỉ IP nội bộ của backend server
- Port: Cổng mà ứng dụng đang chạy trên backend server
- Weight (tùy chọn): Trọng số ưu tiên nếu sử dụng thuật toán cân bằng tải dựa trên trọng số
Thực hành tốt khi cấu hình Backend
- Sử dụng ít nhất 2 backend server để đảm bảo tính sẵn sàng cao
- Đảm bảo tất cả backend server đều có cấu hình giống nhau
- Kiểm tra health check để đảm bảo backend server hoạt động bình thường
Cấu hình mạng cho Load Balancer
Để Load Balancer hoạt động hiệu quả, cần cấu hình đúng mạng cho cả phía public và backend:
Public Network (NIC0)
Đây là nơi Load Balancer nhận lưu lượng từ người dùng:
- Public IPv4 Address: Địa chỉ IP công khai mà người dùng sẽ kết nối đến
- Public IPv4 DNS: Máy chủ DNS được sử dụng bởi Load Balancer
Backend Network (NIC1)
Đây là nơi Load Balancer kết nối với các backend server:
- Subnet: Mạng con nội bộ mà cả Load Balancer và backend server đều thuộc về
- Private IPv4 Address: Địa chỉ IP nội bộ của Load Balancer
- Backend server phải nằm trong cùng subnet với Load Balancer để đảm bảo kết nối thông suốt
- Cổng được cấu hình trong backend server phải đang mở và ứng dụng đang lắng nghe trên đó