Ошибка squid3 с циклическим перебором cache_peer на другом порту 127.0.0.1

У меня 3 конца туннеля до Debian с squid3 (порты с 9001 по 9003). При запуске каждого туннеля запускается прокси. Я пытаюсь сбалансировать нагрузку этих прокси-серверов следующим образом:

http_access allow all
http_port 4128
cache_peer 127.0.0.1 sibling 9001 round-robin
cache_peer 127.0.0.1 sibling 9002 round-robin
cache_peer 127.0.0.1 sibling 9003 round-robin

Когда я перезапускаю squid3, получаю FAIL в строке 3. Я также пытаюсь parent вместо sibling, Тот же провал.

К вашему сведению, если я установлю для клиентов IP-адрес Debian с портом 9001 или 9002 или 9003, все работает нормально.

Любая идея?

2 ответа

Вы должны указать опцию имени для каждого из cache_peer. Цитата из документации cache_peer:

name = xxx --- Уникальное имя для пира. Требуется, если у вас есть несколько пиров на одном хосте, но разные порты.

Итак, ваша конфигурация cache_peer должна выглядеть так

cache_peer 127.0.0.1 parent 9001 0 name=A round-robin no-query no-digest
cache_peer 127.0.0.1 parent 9002 0 name=B round-robin no-query no-digest
cache_peer 127.0.0.1 parent 9003 0 name=C round-robin no-query no-digest
cache_peer 127.0.0.1 parent 9004 0 name=D round-robin no-query no-digest

Рабочее решение в конце концов!

редактировать /etc/hosts и добавить:

127.0.0.1       tunnelproxy1
127.0.0.1       tunnelproxy2
127.0.0.1       tunnelproxy3 
127.0.0.1       tunnelproxy4

Затем перейдите к /etc/squid3/squid.conf а также:

http_access allow all
http_port 3128
cache_peer tunnelproxy1 parent 9001 0 round-robin no-query no-digest
cache_peer tunnelproxy2 parent 9002 0 round-robin no-query no-digest
cache_peer tunnelproxy3 parent 9003 0 round-robin no-query no-digest
cache_peer tunnelproxy4 parent 9004 0 round-robin no-query no-digest
never_direct allow all

Если вы думаете, что есть лучшее решение, пожалуйста, не стесняйтесь:)

Другие вопросы по тегам