У меня есть 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, в строке 3 появляется сообщение FAIL. Я также пытаюсь parent
вместо того sibling
. То же самое.
К вашему сведению, если я установил для клиентов IP-адрес debian с портом 9001, 9002 или 9003, все будет нормально.
Любая идея?
Вы должны указать название вариант для каждого из 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
Если вы думаете, что есть лучшее решение, пожалуйста, не стесняйтесь :)