Điểm:0

HAProxy nhiều phụ trợ Chế độ TCP/HTTP chỉ hoạt động cho một phụ trợ

lá cờ ru
nghe mqtt-ssl
    liên kết *:8883 ssl no-sslv3 crt ​​/my.pem xác minh tệp ca được yêu cầu /my/pem/all_cas.pem tệp crl /my/pem/all_crls.pem
    chế độ tcp
    tùy chọn tcplog
    đăng nhập toàn cầu
    maxconn 50000
    yêu cầu tcp kiểm tra độ trễ 30 giây
    pki use_backend trừ khi { req.payload(0,0),mqtt_is_valid }
    default_backend emqx_k8s_svc

pki phụ trợ
    chế độ http
    máy chủ pki.my.domain someIP:443 ssl không xác minh

phụ trợ emqx_k8s_svc
    chế độ tcp
    đăng nhập toàn cầu
    máy chủ emqx1 emqx-ee.emqx:1883 check inter 30s downinter 30s giảm 1 tăng 1

Với đoạn mã haproxy.cfg ở trên, tôi xác nhận vấn đề sau:

Khi tôi thực hiện curl/wget trên địa chỉ nghe, yêu cầu thường được chuyển tiếp đến pki phụ trợ , như là nó phải như thế. Tuy nhiên, đồng thời, khi cố gắng kết nối với phụ trợ emqx_k8s_svc ứng dụng khách Mosquitto vẫn bị chặn khi "gửi CONNECT" và không có kết nối nào được thiết lập.

Làm cách nào tôi có thể có điều kiện là nếu tải trọng yêu cầu thuộc loại MQTT thì hãy chuyển tiếp nó tới default_backendvà nếu kết nối KHÔNG phải là MQTT (giả sử là ứng dụng khách http), hãy chuyển tiếp nó tới pki phụ trợ .

Tôi cũng đã thử các cách sau mà không giải quyết được:

yêu cầu tcp kiểm tra độ trễ 30 giây
use_backend pki if !{ req.payload(0,0),mqtt_is_valid }
use_backend emqx_k8s_svc if { req.payload(0,0),mqtt_is_valid }
default_backend emqx_k8s_svc
------------------------------
yêu cầu tcp kiểm tra độ trễ 10 giây
use_backend pki nếu { ssl_fc }
use_backend emqx_k8s_svc if { req.payload(0,0),mqtt_is_valid }
default_backend emqx_k8s_svc

LƯU Ý: tất cả đều đang chạy trong môi trường Kubernetes, ngoại trừ pki phụ trợ ở nơi khác (nhưng có thể truy cập được) - Phiên bản HAProxy: 2.5

lá cờ jp
và phiên bản `haproxy` của bạn là?
Eos Antigen avatar
lá cờ ru
@AlexD xin lỗi, tôi vừa chỉnh sửa bài đăng, đó là 2.5

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.