Ошибка 503 Служба недоступна на Varnish, но журнал varnishlog не показывает ошибки

У меня есть сервер, на котором запущены Varnish и nginx. Веб-сайт внешнего интерфейса сообщает об ошибке 503:

Ошибка 503 Служба недоступна

Служба недоступна

Медитация гуру:
XID: 317911182

Сервер кеширования Varnish

Это содержимое / etc / varnish / foo.vcl :

backend default {
  .host = "127.0.0.1";
  .port = "8080";
  .connect_timeout = 1s;
  .first_byte_timeout = 90s;
  .between_bytes_timeout = 90s;
}

varnishlog , по-видимому, не обнаруживает проблем:

0 CLI          - Rd ping
0 CLI          - Wr 200 19 PONG 1486463718 1.0
0 CLI          - Rd ping
0 CLI          - Wr 200 19 PONG 1486463721 1.0
0 CLI          - Rd ping
0 CLI          - Wr 200 19 PONG 1486463724 1.0
0 CLI          - Rd ping
0 CLI          - Wr 200 19 PONG 1486463727 1.0

Однако на порту 8080 на локальном хосте не работает служба:

server# netstat -anp | grep 8080
server# telnet localhost 8080
Trying ::1...
telnet: connect to address ::1: Connection refused
Trying 127.0.0.1...
telnet: connect to address 127.0.0.1: Connection refused

, и на самом деле журнал nginx сообщает о ошибка при попытке подключиться к нему:

2017/02/07 11:51:11 [error] 2008#0: *188 connect() failed (111: Connection refused) while connecting to upstream, client: 10.2.3.4, server: _, request: "GET /mydir/ HTTP/1.1", upstream: "http://127.0.0.1:8080/mydir/", host: "myhost.example.com"

Что я могу проверить для дальнейшего устранения проблемы?

0
07.02.2017, 12:53
1 ответ

Следующие строки показывают нормальную работу - Varnish проверяет, в порядке ли его кеш. Это нормально и не связано с подключением к серверной части.

     0 CLI            - Rd ping
     0 CLI            - Wr 200 19 PONG 1486473078 1.0

Если серверная часть настроила проверку работоспособности, вы увидите что-то похожее на это:

вывод varnishlog:

     0 CLI            - Rd ping
     0 CLI            - Wr 200 19 PONG 1486473075 1.0
     0 Backend_health - boot.default Still sick ------- 1 3 3 0.000000 0.000000
     0 Backend_health - boot.default Still sick ------- 0 3 3 0.000000 0.000000

или

 32771 Timestamp      b Start: 1486473576.634500 0.000000 0.000000
 32771 BereqMethod    b GET
 32771 BereqURL       b /
 32771 BereqProtocol  b HTTP/1.1
 32771 BereqHeader    b Host: 127.0.0.1:8080
 32771 BereqHeader    b User-Agent: curl/7.51.0
 32771 BereqHeader    b Accept: */*
 32771 BereqHeader    b X-Forwarded-For: 127.0.0.1
 32771 BereqHeader    b Accept-Encoding: gzip
 32771 BereqHeader    b X-Varnish: 32771
 32771 VCL_call       b BACKEND_FETCH
 32771 VCL_return     b fetch
 32771 FetchError     b no backend connection

default.vlc:

backend default {
    .host = "127.0.0.1";
    .port = "8081";
    .probe = {
        .url = "/status";
        .timeout = 60 ms;
        .interval = 10s;
        .window = 3;
        .threshold = 3;
    }
}
2
28.01.2020, 02:46

Теги

Похожие вопросы