Một tệp tên /check.txt trên máy chủ proxy nghe như một mục tiêu sức khỏe hiển nhiên. Cái bẫy là listener chuyển tiếp tường minh của Squid không phải một trang web thông thường phục vụ thư mục gốc tài liệu của máy chủ đó.

Một yêu cầu kiểu nguồn gốc như HEAD /check.txt HTTP/1.1 bỏ qua đích tuyệt đối được mong đợi cho một yêu cầu HTTP thông thường qua proxy chuyển tiếp. Tùy cấu hình, nó có thể bị từ chối hoặc do một dịch vụ cục bộ khác xử lý. Cả hai kết quả đều có thể nói ít hơn những gì bảng điều khiển gợi ý.

Chọn dịch vụ bạn cần giữ cho sẵn sàng

Kiểm traBằng chứng hữu ích
Kết nối TCP tới listener của proxyMột tiến trình tiếp cận được chấp nhận kết nối đó.
CONNECT tới một đích được kiểm soátProxy chấp nhận yêu cầu đường hầm đó.
Lấy HTTP qua proxyĐường dẫn yêu cầu đã chọn có thể trả về phản hồi mong đợi.

Trong trường hợp thứ ba, yêu cầu cần một đích, ví dụ:

HEAD http://probe.example.internal/proxy-ready HTTP/1.1
Host: probe.example.internal

Tên máy chủ chỉ là ví dụ. Hãy dùng một điểm cuối được kiểm soát mà proxy phân giải được và được phép chủ động tiếp cận. http-check send của HAProxy hỗ trợ chọn phương thức, URI, phiên bản và tiêu đề; hãy cấu hình yêu cầu đó một cách tường minh thay vì kế thừa nguyên xi một ví dụ máy chủ nguồn gốc.

HEAD có thể kiểm tra trạng thái và tiêu đề phản hồi. Nó không thể xác thực phần thân phản hồi không bao giờ được truyền đi. Nếu giao kèo sức khỏe yêu cầu một dấu hiệu trong phần thân, hãy chọn kiểm tra GET phù hợp và xác thực dấu hiệu đó.

Giữ tài khoản kiểm tra và các giới hạn nguồn thật hẹp khi có xác thực proxy. Miễn trừ toàn bộ listener khỏi xác thực để có dấu tích xanh sẽ thay đổi chính dịch vụ đang được bảo vệ.

Cuối cùng, hãy quyết định điều gì một lần kiểm tra thất bại nên gỡ bỏ. Một sự cố nguồn gốc được kiểm soát có thể làm kiểm tra chuyển tiếp của mọi proxy thất bại cùng lúc. Đó có thể đúng là mối phụ thuộc bạn muốn đo, hoặc là lý do để giữ sức khỏe listener và tính sẵn sàng đầu-cuối thành các tín hiệu riêng.

Bài viết liên quan