Sử dụng curl để kiểm tra hoạt động của Load balancer

Khi triển khai các sản phẩm phần cứng hoặc phần mềm về giải pháp cân bằng tải (Load balancer – LB) như: F5, HAproxy, Nginx …. trong thực tế hoạc LAB, đôi khi cần thực hiện một số bước kiểm tra xem việc cấu hình cơ chế cân bằng tải đúng hay chưa (ví dụ như cơ chế round robin).

Để thực hiện việc kiểm tra này có rất nhiều cách, đối với các bạn mới làm thì thường sẽ mở trình duyệt và truy cập vào IP VIP hoặc domain …Tuy nhiên cách này hơi thủ công và kết quả đôi khi bị ảnh hưởng bởi cache của trình duyệt.

Trong bài viết này, HCD sẽ giới thiệu với các bạn sử dụng công cụ curl sẵn có của linux để tạo các request và quan sát kết quả trả về của LB để kiểm chứng lại hoạt động của hệ thống sau khi đã cấu hình.

Giả sử bạn đã cấu hình xong các hệ thống LB và có các backend (node) là các web server. Trong hệ thống này bạn sẽ có IP VIP hoặc domain đã được trỏ. Bạn chỉ cần thay đúng IP hoặc domain thực tế vào câu lệnh.

Trong hướng dẫn này cũng giả sử các máy chủ backend có nội dung web là hostname của máy đó. Giả sử IP VIP là 172.16.72.88:3001. Chế độ LB được cấu hình là round robin.

Mô hình LAB

Mô hình LB

Nội dung khi vào web01:

Nội dung web01

Nội dung khi vào web02:

Nội dung web02

Dưới đây là các lệnh mà bạn có thể sử dụng để kiểm tra hoạt động của LB.

1. Sử dụng lệnh curl và cấu trúc lặp while true

Trong cách này sẽ sử dụng vòng lặp white true cùng với curl để tạo vòng lặp liên tục gửi request vào IP VIP.

while true;  do sleep 1;  curl 172.16.72.88:3001;done

Kết quả trả về sẽ là nội dung lần lượt của các máy chủ theo đúng cơ chế round robin.

Kết quả trả về khi truy cập vào IP VIP bằng vòng lặp kết hợp với curl

Để thoát ta sử dụng tổ hợp phím CTL + C để thoát khỏi vòng lặp. Kết quả sẽ thấy lần lượt các server backend phản hồi về cho người dùng.

Leave a Comment