При подключении к Jenkins Master происходит сбой при работе с виртуальным устройством Jenkins для Windows VM
Я новичок в настройке kubernetes.
Вот настройка, которая у нас есть - Jenkins Master, работающий на кластере kubernetes, - имеет только один узел куба. Приложение Jenkins открывается через "NodePort" в поте 32083. Доступ к главному веб-интерфейсу Jenkins осуществляется через VIP, настроенный на порт 32083. Следовательно, URL-адрес Jenkins по адресу https:// подается через VIP на порт 32083.
Я могу получить доступ к веб-сайту Jenkins, и он работает, как и ожидалось. Я настроил внешние ведомые Ubuntu для обработки сборок. Эти ведомые работают как положено.
Я сейчас пытаюсь настроить внешнюю виртуальную машину Windows в качестве ведомого. Все K8s, Ubuntu Slaves и Windows Slave используют JDK8
Вот таблица значений helm values.yaml для порта пользовательского интерфейса и slavelistener.
ServicePort: 8080
ServiceType: NodePort
NodePort: 32083
ServiceAnnotations: {}
ContainerPort: 8080
SlaveListenerPort: 50000
Вот конфиг на балансировщик нагрузки:
ltm virtual -50000 {описание -50000 место назначения:50000 ip-протокол tcp mask пул пулов xxxx - 50000 профилей { http-xforwarded-xproto-https { } tcp { } xxx-clientssl {контекст клиентской стороны} }
ltm pool pool-xxxxx-50000 {members {: 32083 {адрес включен для монитора сеанса xxxx включен}:32083 {адрес включен для монитора сеанса xxxx включен} } монитор http }
Вот ошибка, которую я получаю, когда пытаюсь запустить подчиненный JNLP веб-запуска Java из виртуальной машины Windows
ИНФОРМАЦИЯ: Протокол JNLP4-connect обнаружил непредвиденное исключение java.util.concurrent.ExecutionException: org.jenkinsci.remoting.protocol ConnectionRefusalException: Соединение закрыто до отправки подтверждения hudson.remoting.jnlp.Main$CuiListener status ИНФО: Успешное обнаружение агента Адрес агента: Порт агента xxxx: 50000 Удостоверение личности: xxxxx
hudson.remoting.jnlp.Main$CuiListener status INFO: рукопожатие hudson.remoting.jnlp.Main$CuiListener status INFO: подключение к xxxx: 50000 hudson.remoting.jnlp.Main$CuiListener status INFO: протокол проверки соединения: JNLP4-connect hud. remoting.jnlp.Main $ CuiListener status ИНФОРМАЦИЯ: Протокол JNLP4-connect обнаружил непредвиденное исключение java.util.concurrent.ExecutionException: org.jenkinsci.remoting.protocol.impl.ConnectionRefusalException: Соединение закрылось до подтверждения, отправленного на org.jenkinsci.remoting.util.SettableFuture.get(SettableFuture.java:22 3) в hudson.remoting.Engine.innerRun(Engine.java:614) в hudson.remoting.Engine.run(Engine.java:474) Причина: org.jenkinsci. remoting.protocol.impl.ConnectionRefusalException: Соединение закрыто до подтверждения, отправленного по адресу org.jenkinsci.remoting.protocol.impl.AckFilterLayer.onRecvClosed(AckF ilterLayer.java:280) в org.jenkinsci.remoting.protocol.ProTCRack (Protoc olStack.java:816)
Я даже изменил конфигурацию loadbalancer, чтобы выглядеть так
Пул пула ltm - 50000 {члены {:50000 {адрес включен для монитора сеанса xxxx включен}:50000 {адрес включен для монитора сеанса xxxx включен} } монитор http }
Также установите -Dhudson.TcpSlaveAgentListener.hostName= во время запуска Jenkins. Также установите "Туннельное соединение через" в ":" в конфигурации ведомого узла Windows.
В конечном итоге каждый раз появляется одна и та же ошибка. Любая конфигурация в настройке Kubernetes или loadbalancer, которую я здесь пропускаю?