Я пытаюсь настроить рой докеров, в котором NGINX используется для балансировки нагрузки узлов роя.
Инициализация роя докеров --advertise-addr 192.168.99.153
Кроме того, я добавляю два узла как рой
docker swarm join --token SWMTKN-99-31eka5srtjyvajsbiusixh6gil8p6xuk6yejfts4co8voxu8op-a8awcomh58de8d0ofkckqnsud 192.168.99.153:2377
Теперь я создаю службу на узле менеджера, используя
служба docker create --name backend --replicas 2 --publish 8080:80 tomcat
Я протестировал tomcat в браузере node1/node2 с помощью 192.168.99.153:8080 / 192.168.99.154:8080 и я вижу целевую страницу tomcat.
Теперь я создал отдельный рой на 3-й узел для Loadbalancer NGINX.
Инициализация роя докеров --advertise-addr 192.168.99.156
после этого создайте файл конфигурации Nginx
sudo mkdir -p /data/loadbalancer
sudo vi/данные/loadbalancer/default.conf
и добавьте следующие строки в этот файл
сервер {
слушать 80;
место расположения / {
прокси_пасс http://бэкэнд;
}
}
восходящий сервер {
сервер 192.168.99.153:8080;
сервер 192.168.99.154:8080;
}
после этого, когда я создаю службу NGINX с
служба docker create --name loadbalancer --mount type=bind,source=/data/loadbalancer, target=/etc/nginx/conf.d --publish 80:80 nginx
Когда я запускаю 192.168.99.156:80 в браузере я вижу 502 Неверный шлюз страница ошибки.
Вопрос:-
Некоторое время сервер tomcat также недоступен после создания серверной службы.
Почему tomcat не работает с балансировщиком нагрузки NGINX?