Я заметил, что моему nginx не удалось разрешить внутреннее имя хоста в gcp.
Журналы Nginx:
"2019/07/03 06:08:07 [ошибка] 6 # 6: * 127839 Ошибка подключения () (113: нет
маршрут к хосту) при проксировании соединения, клиент: 10.164.0.49, сервер:
0.0.0.0:8883, восходящий поток: "10.4.3.24:1883", байты от / к клиенту: 59/0, байты от / к восходящему каналу: 0/0 "
Конфигурация Nginx в восходящем направлении:
stream {
upstream rabbitmq-upstream {
server rabbitmq.default.svc.cluster.local:1883;
}
server {
listen 1883;
proxy_pass rabbitmq-upstream;
}
server {
listen 8883 ssl;
proxy_pass rabbitmq-upstream;
ssl_certificate /etc/nginx/ssl/ssl_certificate.crt;
ssl_certificate_key /etc/nginx/ssl/server.key;
proxy_ssl off;
ssl_session_cache builtin:1000;
ssl_protocols SSLv3 TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4;
ssl_handshake_timeout 30s;
}
}
После перезапуска nginx разрешение снова работает нормально.
Что случилось? Похоже, nginx кэшировал ip для rabbitmq.default.svc.cluster.local и это изменилось? (Хотя я не вижу перезапусков для сервиса rabbitmq). Как я могу предотвратить повторение той же проблемы?