Я пытаюсь подключить постоянный узел Jenkins к главному экземпляру Jenkins внутри того же AWS VPC.
Установка:
- Главный экземпляр Jenkins внутри AWS в частной подсети
- защищен балансировщиком нагрузки в Интернете, ограничен офисными IP-адресами
- внешняя запись DNS, указывающая на указанный балансировщик нагрузки
- внутренний балансировщик нагрузки, позволяющий подключаться внутри сети
- внутренний DNS отличается от внешнего
Из-за того, как Дженкинс настраивает агент, я не могу заставить узел подключиться к мастеру через сеть VPC — он всегда пытается выйти в Интернет, а затем блокируется ACL. Изменение URL-адреса JNLP при инициализации агента не работает, он по-прежнему переходит на внешний адрес, чтобы получить информацию о порте агента.
java -jar agent.jar -jnlpUrl http://internal-jenkins-load-balancer.us-west-2.elb.amazonaws.com/computer/test-agent/slave-agent.jnlp -secret ***** *** -workDir "/home/ubuntu"
10 марта 2022 г., 15:34:13 org.jenkinsci.remoting.engine.WorkDirManager
ИНФОРМАЦИЯ: Использование /home/ubuntu/remoting в качестве рабочего каталога удаленного взаимодействия
10 марта 2022 г. 15:34:13 org.jenkinsci.remoting.engine.WorkDirManager setupLogging
ИНФОРМАЦИЯ: Журналы ошибок и выходных данных будут распечатаны в /home/ubuntu/remoting.
10 марта 2022 г. 15:34:14 hudson.remoting.jnlp.Main createEngine
ИНФОРМАЦИЯ: Настройка агента: test-agent
10 марта 2022 г., 15:34:14 hudson.remoting.jnlp.Main$CuiListener <init>
ИНФОРМАЦИЯ: агент Jenkins работает в автономном режиме.
10 марта 2022 г., 15:34:14 hudson.remoting.Engine startEngine
ИНФОРМАЦИЯ: Использование версии Remoting: 4.5
10 марта 2022 г., 15:34:14 org.jenkinsci.remoting.engine.WorkDirManager
ИНФОРМАЦИЯ: Использование /home/ubuntu/remoting в качестве рабочего каталога удаленного взаимодействия
10 марта 2022 г. 15:34:14 Статус hudson.remoting.jnlp.Main$CuiListener
ИНФОРМАЦИЯ: Поиск сервера среди [https://jenkins-master.example.com/]
СЕРЬЕЗНЫЙ: не удалось подключиться к https://jenkins-master.example.com/tcpSlaveAgentListener/: время ожидания подключения истекло
Изменение параметра URL-адреса Jenkins на имя внутреннего балансировщика нагрузки работает, может быть, есть другой параметр, который я могу установить?
Примечание. Я бы не хотел создавать для этого частную зону хостинга.