Gdata Docs

Gdata Docs

Trung tâm tài liệu

🏠HomeNetworkHướng dẫn tạo Load Balancer trong Portal Cloud Gdata

Hướng dẫn tạo Load Balancer trong Portal Cloud Gdata

Hướng dẫn tạo và cấu hình Load Balancer trong Portal Cloud Gdata để phân phối tải, tăng tính sẵn sàng và tối ưu hệ thống dịch vụ.

Hướng dẫn tạo Load Balancer trong Portal Cloud Gdata

Giới thiệu

Load Balancer trong Portal Cloud Gdata giúp phân phối lưu lượng truy cập đến nhiều Cloud Server nhằm tăng hiệu năng, tính sẵn sàng và khả năng chịu tải của hệ thống.

Hệ thống Load Balancer của Gdata hỗ trợ cân bằng tải cho Website, API, Application Server và nhiều dịch vụ khác.

Load Balancer trong Portal Cloud Gdata hỗ trợ:

• Load Balancer Internal

• Load Balancer External

• Health Check tự động

• Sticky Session

• Thuật toán cân bằng tải

• Listener HTTP/HTTPS

• Quản lý nhiều backend server

Điều kiện trước khi thực hiện

Trước khi tạo Load Balancer, người dùng cần chuẩn bị:

• Đã đăng nhập Portal Cloud Gdata

• Đã có Cloud Server hoạt động

• Các máy chủ nằm trong cùng Network

• Đã có Subnet và Router

• Security Group mở đúng port dịch vụ

• Các backend server hoạt động bình thường

Các mô hình sử dụng phổ biến

Load Balancer thường được sử dụng trong các trường hợp:

• Cân bằng tải Website

• Load balancing API Server

• Triển khai High Availability

• Hệ thống Web nhiều node

• Application Cluster

• Reverse Proxy cho dịch vụ nội bộ

• Scale horizontal nhiều máy chủ

Phân biệt Internal và External Load Balancer

Internal Load Balancer

Internal Load Balancer chỉ cho phép truy cập trong mạng LAN nội bộ.

Phù hợp cho:

• Backend API

• Database Proxy

• Microservices nội bộ

• Hệ thống private network

External Load Balancer

External Load Balancer cho phép truy cập từ Internet.

Phù hợp cho:

• Website public

• API public

• Application Internet-facing

• Dịch vụ truy cập bên ngoài

Hướng dẫn tạo Load Balancer trong Portal Cloud Gdata chi tiết

Bước 1: Truy cập chức năng Load Balancer

Tại menu Network, chọn mục Load Balancers.

Hệ thống sẽ hiển thị danh sách Load Balancer hiện có trong Project.

Thực hiện:

Mở menu:

Network → Load Balancers

Nếu chưa có Load Balancer, danh sách sẽ hiển thị trống.

Nhấn nút Thêm mới để tạo Load Balancer.

Kiểm tra:

• Tên Load Balancer

• Trạng thái

• Loại

• IP Address

• Region

Lưu ý:

• Mỗi Load Balancer sẽ được tạo riêng trong Project

• Load Balancer sử dụng tài nguyên mạng riêng

• Nên xác định rõ mô hình Internal hoặc External trước khi tạo

Bước 2: Khai báo thông tin Load Balancer

Tại màn hình tạo mới, cấu hình thông tin cơ bản cho Load Balancer.

Thực hiện:

Nhập các thông tin:

• Tên

• Mô tả

• Loại

• Chu kỳ thanh toán

Ví dụ:

• Tên: demo-lb

• Mô tả: Demo Load Balancer

• Loại: lb_basic

Portal Cloud Gdata hỗ trợ nhiều loại cấu hình Load Balancer:

• lb_basic

• lb-16c-16gb

• lb-32c-8gb

Ý nghĩa từng loại:

• lb_basic: Phù hợp Website nhỏ và hệ thống test

• lb-16c-16gb: Phù hợp hệ thống traffic trung bình

• lb-32c-8gb: Phù hợp hệ thống tải lớn hoặc nhiều kết nối đồng thời

Kiểm tra:

• Thông tin hiển thị đúng

• Chi phí được cập nhật theo loại Load Balancer

• Chu kỳ thanh toán chính xác

Lưu ý:

• Cấu hình càng cao thì chi phí càng lớn

• Nên chọn cấu hình phù hợp lưu lượng thực tế

• Có thể mở rộng hệ thống backend sau này

Bước 3: Chọn kiểu kết nối Load Balancer

Portal Cloud Gdata hỗ trợ 2 loại kết nối:

• External

• Internal

Thực hiện:

Chọn kiểu kết nối phù hợp.

Nếu chọn External:

• Load Balancer có thể truy cập từ Internet

• Chọn External Network

Ví dụ:

• Public-VLAN909

Nếu chọn Internal:

• Chỉ truy cập trong LAN nội bộ

• Chọn Internal Network và Subnet

Ví dụ:

• demo-network

• subnet-demo

Kiểm tra:

• Network đúng với hệ thống backend

• Subnet hiển thị chính xác

• Kiểu kết nối phù hợp nhu cầu sử dụng

Lưu ý:

• Internal LB không truy cập được từ Internet

• External LB cần Security Group phù hợp

• Backend server phải nằm cùng network

Bước 4: Cấu hình Listener

Listener là thành phần tiếp nhận kết nối từ client và chuyển tiếp đến Pool backend.

Portal Cloud Gdata hỗ trợ nhiều giao thức như:

• HTTP

• HTTPS

Thực hiện:

Bật mục Cấu hình nâng cao.

Tại phần Listener, cấu hình:

• Tên Listener

• Mô tả Listener

• Giao thức

• Cổng

• Cert SSL nếu dùng HTTPS

Ví dụ:

• Listener: web-http

• Protocol: HTTP

• Port: 80

Kiểm tra:

• Protocol đúng dịch vụ

• Port chính xác

• SSL Certificate đúng nếu dùng HTTPS

Lưu ý:

• HTTPS yêu cầu SSL Certificate

• Không nên mở port không cần thiết

• Listener nên trùng với service backend

Bước 5: Cấu hình Pool

Pool là nhóm backend server phía sau Load Balancer.

Thực hiện:

Tại phần Thông tin Pool, cấu hình:

• Tên Pool

• Mô tả

Ví dụ:

• Pool: Default

Sau đó thêm backend server vào danh sách Member.

Tại phần Danh sách Member:

• Nhập IP backend

• Nhập tên server

• Chọn port backend

• Cấu hình Weight

Ví dụ:

• IP: 10.10.10.11

• Port: 80

• Weight: 1

Có thể nhấn nút + Server để thêm nhiều backend server.

Ý nghĩa Weight:

Weight quyết định tỷ lệ traffic phân phối đến backend server.

Ví dụ:

• Server weight 2 sẽ nhận nhiều traffic hơn server weight 1

Kiểm tra:

• Backend IP đúng

• Port backend hoạt động

• Các server có thể ping được

Lưu ý:

• Backend server cần mở đúng port

• Không dùng IP public làm backend

• Weight nên cân đối theo cấu hình server

Bước 6: Chọn thuật toán cân bằng tải

Portal Cloud Gdata hỗ trợ các thuật toán:

• ROUND ROBIN

• SOURCE IP

• SOURCE IP PORT

• LEAST CONNECTIONS

Mỗi thuật toán sẽ có cách phân phối request khác nhau.

ROUND ROBIN

Thuật toán sẽ phân phối request lần lượt đến từng backend server theo vòng tròn.

Ví dụ:

Request 1 → Server A

Request 2 → Server B

Request 3 → Server C

Request 4 → Quay lại Server A

Phù hợp với:

• Website thông thường

• API server cơ bản

• Backend có cấu hình tương đương nhau

• Hệ thống tải đồng đều

Ưu điểm:

• Cấu hình đơn giản

• Phân phối traffic đồng đều

• Hoạt động ổn định

Lưu ý:

• Không tối ưu nếu backend server có cấu hình khác nhau

• Không giữ session người dùng


SOURCE IP

Thuật toán sẽ dựa trên địa chỉ IP client để xác định backend server.

Một IP client sẽ luôn được chuyển đến cùng một backend server.

Phù hợp với:

• Hệ thống cần session ổn định

• Website login session

• Ứng dụng cần cache local

• Hệ thống yêu cầu giữ trạng thái người dùng

Ưu điểm:

• Người dùng luôn truy cập cùng backend

• Giảm mất session

• Giảm đồng bộ cache giữa các node

Lưu ý:

• Có thể gây mất cân bằng tải nếu nhiều người dùng cùng NAT IP

• Một backend có thể nhận nhiều traffic hơn các backend khác


SOURCE IP PORT

Thuật toán sẽ sử dụng cả IP client và source port để phân phối traffic.

Khả năng phân phối tải sẽ đồng đều hơn SOURCE IP.

Phù hợp với:

• Hệ thống có nhiều kết nối đồng thời

• API Gateway

• Reverse Proxy

• TCP Load Balancing

Ưu điểm:

• Phân phối tải tốt hơn SOURCE IP

• Hạn chế tình trạng dồn traffic vào một node

• Vẫn giữ được tính ổn định kết nối

Lưu ý:

• Có thể thay đổi backend khi client reconnect

• Không phù hợp ứng dụng yêu cầu session cố định tuyệt đối


LEAST CONNECTIONS

Thuật toán sẽ gửi request đến backend server đang có ít kết nối nhất.

Server tải nhẹ hơn sẽ nhận thêm traffic.

Phù hợp với:

• Hệ thống traffic lớn

• Backend xử lý request không đồng đều

• Ứng dụng realtime

• Websocket hoặc long connection

Ưu điểm:

• Tối ưu tài nguyên backend

• Hạn chế quá tải trên một node

• Hoạt động tốt với hệ thống traffic biến động

Lưu ý:

• Backend cấu hình yếu vẫn có thể bị quá tải nếu xử lý chậm

• Cần Health Check hoạt động chính xác


Hướng dẫn lựa chọn thuật toán phù hợp

ROUND ROBIN

Khuyến nghị cho:

• Website cơ bản

• CMS

• Blog

• API nhỏ

SOURCE IP

Khuyến nghị cho:

• Website login session

• ERP

• CRM

• Session-based application

SOURCE IP PORT

Khuyến nghị cho:

• API Gateway

• TCP service

• Proxy server

• High concurrent connection

LEAST CONNECTIONS

Khuyến nghị cho:

• Traffic lớn

• Realtime service

• Streaming

• Websocket

• Hệ thống tải không đồng đều


Cấu hình Sticky Sessions

Sticky Session giúp giữ người dùng truy cập vào cùng backend server trong thời gian hoạt động.

Portal Cloud Gdata hỗ trợ bật hoặc tắt Sticky Session tùy nhu cầu.

Nên bật Sticky Session khi:

• Ứng dụng sử dụng session local

• Chưa triển khai Redis Session

• Hệ thống login stateful

Không nên bật khi:

• Backend stateless

• API microservices

• Hệ thống cần cân bằng tải tối đa


Khuyến nghị thực tế

• ROUND ROBIN phù hợp đa số hệ thống thông thường

• LEAST CONNECTIONS phù hợp traffic lớn

• SOURCE IP phù hợp hệ thống session-based

• Luôn bật Health Check để loại bỏ backend lỗi

• Theo dõi traffic thực tế để tối ưu thuật toán phù hợp hệ thống

Bước 7: Cấu hình Health Check

Health Check giúp kiểm tra trạng thái backend server tự động.

Nếu server lỗi hoặc không phản hồi, Load Balancer sẽ ngừng gửi traffic đến server đó.

Thực hiện:

Bật mục Health Check.

Cấu hình:

• Protocol

• Tên Health Check

• URL kiểm tra

Ví dụ:

• Protocol: HTTP

• URL: /

Kiểm tra:

• URL phản hồi HTTP 200

• Backend hoạt động bình thường

• Health Check không timeout

Lưu ý:

• URL Health Check nên nhẹ và phản hồi nhanh

• Không dùng URL tải nặng

• Health Check giúp tăng High Availability

Bước 8: Thanh toán và tạo Load Balancer

Sau khi hoàn tất cấu hình, hệ thống sẽ tạo đơn hàng Load Balancer.

Thực hiện:

Kiểm tra lại:

• Loại Load Balancer

• Chi phí

• VAT

• Tổng thanh toán

Sau đó nhấn nút Thanh toán.

Kiểm tra:

• Load Balancer xuất hiện trong danh sách

• Trạng thái ACTIVE

• IP Address được cấp phát

• Listener hoạt động

Kết quả:

Load Balancer được tạo thành công và sẵn sàng phục vụ traffic.

Kết quả sau khi thực hiện

Sau khi cấu hình thành công:

• Traffic được phân phối đến nhiều backend server

• Hệ thống tăng tính sẵn sàng

• Backend lỗi sẽ tự động bị loại khỏi hệ thống

• Có thể scale thêm backend server dễ dàng

• Hệ thống ổn định hơn khi traffic tăng cao

Các lỗi thường gặp

Lỗi: Backend server DOWN

Nguyên nhân:

• Server backend tắt

• Port backend không mở

• Security Group chặn traffic

Cách xử lý:

• Kiểm tra trạng thái server

• Mở đúng port backend

• Kiểm tra Security Group

Lỗi: Health Check thất bại

Nguyên nhân:

• URL Health Check sai

• Backend không phản hồi HTTP 200

• Firewall chặn request

Cách xử lý:

• Kiểm tra URL Health Check

• Kiểm tra service backend

• Kiểm tra firewall

Lỗi: Không truy cập được Load Balancer

Nguyên nhân:

• Listener sai port

• Security Group chưa mở

• Chọn sai loại Internal hoặc External

Cách xử lý:

• Kiểm tra Listener

• Kiểm tra Security Group

• Kiểm tra cấu hình network

Lỗi: Website truy cập chậm

Nguyên nhân:

• Backend quá tải

• Chọn cấu hình LB quá thấp

• Health Check cấu hình chưa hợp lý

Cách xử lý:

• Tăng cấu hình Load Balancer

• Scale thêm backend server

• Kiểm tra tài nguyên backend

Khuyến nghị và lưu ý bảo mật:

• Luôn bật Health Check

• Sử dụng HTTPS cho Website public

• Không public backend server trực tiếp ra Internet

• Chỉ mở các port cần thiết

• Theo dõi traffic và tài nguyên thường xuyên

• Sử dụng Sticky Session khi ứng dụng yêu cầu session state

• Scale backend server thay vì tăng tải trên một node

• Kết hợp Security Group để tăng cường bảo mật hệ thống

Last updated: 14:04:34 27/05/2026