Конфигурация nginx ssl_preread не перенаправляет запросы в апстрим - PullRequest
0 голосов
/ 11 сентября 2018

У меня есть nginx между марионеточными агентами и двумя марионеточными мастерами.скажем puppetmaster1 и puppetmaster2

, поэтому ожидаемый поток соединения составляет

puppetagent1 - >> Nginx - >> puppetmaster1 &

puppetagent2 - >> Nginx - >> puppetmaster2

puppetmaster1 и puppetagent1 работает на версии куклы - 2.7.26

puppetmaster2 и puppetagent2 работает на версии куклы - 3.6.2

Вот мой файл nginx stream.conf, который передает прокси в восходящий поток

map $ssl_preread_server_name $name {
puppetmaster1  upstream_puppetmaster1;
puppetmaster2  upstream_puppetmaster2;

}

upstream upstream_puppetmaster1 {
     server core-services_puppetmaster1:8140;
    }

 upstream upstream_puppetmaster2 {
     server core-services_puppetmaster2:8140;
    }


server {
    listen                8140;
    ssl_preread           on;
    proxy_pass            $name;
  }

Проблема: при запуске кукольного агнета -tov на puppetagent2 Nginx перенаправляет его на upstream_puppetmaster2 и все работает нормально. Но когда на кукольном агенте запускается кукольный агнет -тов-1, выдается ошибка Nginx с приведенным ниже логом

2018/09/11 17:38:11 [info] 25#25: *3 client 10.255.0.2:51290 connected to 0.0.0.0:8140
2018/09/11 17:38:11 [error] 25#25: *3 no host in upstream "", client: 10.255.0.2, server: 0.0.0.0:8140, bytes from/to client:0/0, bytes from/to upstream:0/0

Единственная разницамежду puppetmaster1 и puppetmaster2 установлена ​​версия

Может кто-нибудь помочь мне выяснить, почему nginx не может обслуживать запросы от puppetagent1 и передавать его puppetmaster1?Как мне этого добиться?

Заранее спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...