Sorry, you need to enable JavaScript to visit this website.
Bài mới hơn
Sản phẩm, dịch vụ

Tối ưu hóa cân bằng tải với Apache

Trong bài viết này, Thiết kế web Giai Điệu sẽ hướng dẫn bạn cách sử dụng Apache làm bộ cân bằng tải hiệu quả, kết hợp với các mô-đun mạnh mẽ như mod_proxymod_proxy_balancer. Cả hai mô-đun này đều được tích hợp sẵn trên hệ điều hành CentOS, môi trường thực hiện nội dung của bài viết. Nếu bạn đang làm việc với Red Hat Enterprise Linux hoặc Ubuntu, bạn cũng có thể áp dụng cấu hình tương tự, nhưng hãy lưu ý rằng một số bước thực hiện có thể cần điều chỉnh.

Mục tiêu chính

Chúng tôi mong muốn giúp bạn khai thác tối đa tiềm năng của máy chủ chuyên dụng hoặc máy chủ đám mây, đồng thời thúc đẩy khả năng mở rộng theo chiều ngang. Khi hệ thống yêu cầu nhiều tài nguyên hơn, bạn có thể dễ dàng bổ sung các web-head (hoặc máy chủ phụ trợ) phía sau máy chủ chính một cách nhanh chóng và đơn giản.

Cân bằng tải - giaidieu.com

Điều kiện tiên quyết

Bạn cần chuẩn bị phần cứng và phần mềm sau đây trước khi bắt đầu.

Phần cứng

Bạn sẽ cần ba máy chủ để khởi động, tuy nhiên, bạn có thể sử dụng mô hình này để mở rộng theo chiều ngang.

- Một máy chủ cho bộ cân bằng tải

- Tối thiểu hai máy chủ cho người đứng đầu trang web

Phần mềm

Phần mềm cho ba máy chủ sẽ cần phải giống nhau; chúng sẽ chạy cùng các gói. Để làm điều này, bạn sẽ cần thêm hai nhóm vào cài đặt CentOS mặc định.

1) Cập nhật hệ thống của bạn

# cập nhật yum

2) Cài đặt Apache bằng cách sử dụng lệnh 'groupinstall' của CentOS

# yum groupinstall "Máy chủ Web"

3) Bạn cũng có thể muốn cài đặt trình duyệt web dạng văn bản trong trường hợp bạn cần kiểm tra xem máy chủ cụ thể có hiển thị đúng trang mà nó cần hiển thị hay không, đằng sau bộ cân bằng tải.

# yum groupinstall "Internet dựa trên văn bản"

Cấu hình máy chủ

Máy chủ web

Máy chủ web (web head) không yêu cầu cấu hình đặc biệt. Một khuyến nghị là đặt một tệp có tên là index.html trong /var/www/html/index.html . Sau đó, bạn chỉ cần đặt một thông báo ngắn và số thiết bị web head trong phần nội dung (ví dụ: “Hello World! www-1”) và trong quá trình thử nghiệm, trang chỉ mục sẽ chỉ ra web head nào bạn đang xem.

Bộ cân bằng tải

Đây là chìa khóa cho toàn bộ nỗ lực. Đặt tất cả các cấu hình được bật trong tệp /etc/httpd/conf/httpd.conf vào máy chủ ảo chuẩn.

Yêu cầu không mong muốn

  • Tắt ProxyRequests để tránh lưu lượng truy cập không cần thiết.

  • Tắt ProxyRequests

Đầu cân bằng của web

Trong phần này của cấu hình máy chủ ảo, bạn sẽ đặt tên cho các web head và xác định cách cân bằng tải giữa chúng. Chỉ thị BalanceMember là công cụ chính để khai báo các web head. Bạn có thể thêm bao nhiêu web head tùy ý, chỉ cần sử dụng chúng làm mẫu.

Chỉ thị ProxySet cho phép bạn khai báo thuật toán cân bằng tải mà bạn muốn sử dụng. Trong ví dụ này, chúng tôi sử dụng thuật toán cân bằng "byrequest", hoạt động theo cách tuần tự (giống như vòng tròn). Với mỗi yêu cầu mới, một web head mới sẽ được xử lý theo thứ tự. Mặc dù có nhiều thuật toán cân bằng thông minh hơn, nhưng "byrequest" dễ dàng cấu hình và không yêu cầu kiến thức phức tạp về lý thuyết mạng.

Mọi cấu hình này sẽ được gói trong thẻ <Proxy>, giúp Apache biết cần gửi yêu cầu đến mod_proxy. Định danh balancer://mycluster chỉ là một tên định danh bạn tự đặt; bạn có thể đổi tên tùy thích, miễn là luôn sử dụng tiền tố balancer://.

Lưu ý quan trọng

Khi cấu hình BalancerMember, bạn nên sử dụng địa chỉ IP nội bộ cho các web head trên bộ cân bằng tải. Điều này đảm bảo rằng tuyến đường nhanh nhất luôn được chọn, tránh các yêu cầu bên ngoài gây chậm trễ không cần thiết.

<Trình cân bằng proxy://mycluster>

   #WebHead1

   Thành viên cân bằng http://10.xxx:80

    #WebHead2

   Thành viên cân bằng http://10.xxx:80

    ProxySet lbmethod=byrequests

</Người đại diện>

Trình quản lý cân bằng (tùy chọn)

Balance-Manager là một công cụ đi kèm với mod_proxy_balancer, cho phép bạn dễ dàng tạo và chỉnh sửa cấu hình thông qua giao diện đồ họa (GUI) trên trình duyệt web. Bạn có thể truy cập nó tại địa chỉ http://domain.tld/balancer-manager, trong đó "domain.tld" là tên miền hoặc địa chỉ IP của bạn.

Hãy nhớ rằng bất kỳ thay đổi nào được thực hiện thông qua Balance-Manager sẽ chỉ tồn tại tạm thời. Sau khi bạn khởi động lại Apache, tất cả các thay đổi sẽ bị mất nếu không được lưu lại vào tệp cấu hình chính. Vì vậy, hãy chắc chắn ghi lại các thay đổi quan trọng vào tệp cấu hình trước khi khởi động lại dịch vụ.

<Vị trí /balancer-manager>

 SetHandler trình quản lý cân bằng

</Vị trí>

ProxyPass

Đây là phần cuối cùng của cấu hình và thêm các tình huống cần được ủy quyền. Bạn không muốn ủy quyền cho trình quản lý cân bằng, nhưng bạn muốn ủy quyền mọi thứ khác.

ProxyPass /balancer-manager !

ProxyPass / cân bằng://mycluster/

Khi bạn đã hoàn tất cấu hình các thiết lập cần thiết trong tệp httpd.conf trên máy chủ đám mây dùng để cân bằng tải và khởi động Apache, tên miền của bạn sẽ được trỏ chính xác đến bộ cân bằng tải.

Bây giờ, khi bạn làm mới trình duyệt, nội dung sẽ tự động luân chuyển giữa các web head của bạn, hiển thị thông điệp như "Hello World www-1" hoặc "Hello World www-2". Điều này chứng tỏ rằng hệ thống cân bằng tải của bạn đã hoạt động chính xác và hiệu quả.

Thiết kế web Giai Điệu luôn đồng hành cùng bạn để xây dựng những giải pháp cân bằng tải tối ưu, giúp website của bạn hoạt động mượt mà và sẵn sàng đáp ứng mọi nhu cầu mở rộng. Đừng ngần ngại liên hệ với chúng tối nhé.

Nguồn tham khảo tại: support.hostway.com