Работа рабов Дженкинса не удалась по «Неожиданному прекращению канала» - PullRequest
43 голосов
/ 03 апреля 2012

В настоящее время я вижу набор ошибок в моих сборках.

Это ожидаемое поведение, если вы потеряете Дженкинса (скажем, из-за аварии на коробке или убийства -9)?

Или что-то хуже (например, плохое сетевое соединение)?

Стек и ошибка:

hudson.remoting.RemoteInvocationHandler.invoke(RemoteInvocationHandler.java:158)
        at $Proxy175.join(Unknown Source)   at
hudson.Launcher$RemoteLauncher$ProcImpl.join(Launcher.java:861)     at
hudson.Launcher$ProcStarter.join(Launcher.java:345)     at
hudson.tasks.CommandInterpreter.perform(CommandInterpreter.java:82)
        at
hudson.tasks.CommandInterpreter.perform(CommandInterpreter.java:58)
        at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:19)
        at
hudson.model.AbstractBuild$AbstractRunner.perform(AbstractBuild.java:703)
        at hudson.model.Build$RunnerImpl.build(Build.java:178)  at
hudson.model.Build$RunnerImpl.doRun(Build.java:139)     at
hudson.model.AbstractBuild$AbstractRunner.run(AbstractBuild.java:473)
        at hudson.model.Run.run(Run.java:1410)  at
hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46)     at
hudson.model.ResourceController.execute(ResourceController.java:88)
        at hudson.model.Executor.run(Executor.java:238) Caused by:
hudson.remoting.RequestAbortedException: java.io.IOException:
Unexpected termination of the channel   at
hudson.remoting.Request.abort(Request.java:273)     at
hudson.remoting.Channel.terminate(Channel.java:732)     at
hudson.remoting.Channel$ReaderThread.run(Channel.java:1157) Caused by:
java.io.IOException: Unexpected termination of the channel  at
hudson.remoting.Channel$ReaderThread.run(Channel.java:1133) Caused by:
java.io.EOFException    at
java.io.ObjectInputStream$BlockDataInputStream.peekByte(ObjectInputStream.java:2554)
        at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1297)
        at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
        at hudson.remoting.Channel$ReaderThread.run(Channel.java:1127)

Ответы [ 10 ]

40 голосов
/ 03 апреля 2012

Вы увидите эту ошибку, если мастер Jenkins потеряет связь с подчиненным 1004 *. Это может быть связано с любой из трех проблем, перечисленных выше:

  • Ручное уничтожение подчиненного процесса

  • Подчиненный сервер становится недоступным

  • Проблема сети между ведущим и подчиненным

5 голосов
/ 13 августа 2013

Начиная с 1.520, Jenkins требуется Java 6 или более поздняя версия, одна из возможностей этой ошибки заключается в том, что у вас нет java 6 или более поздней версии на ведомом / удаленном. Решение заключается в том, чтобы обновить удаленный компьютер с помощью Java 6 или более поздней версии или установить правильную переменную среды, которую использует SSH при входе в систему на подчиненном компьютере.

4 голосов
/ 30 апреля 2015

Я решил это простым перезапуском главного сервера Jenkins.

3 голосов
/ 29 ноября 2013

Версия java должна быть 1.6 (последняя) или новее для Jenkins 1.531, который я использую.

Для одного из моих подчиненных узлов я обнаружил, что должен был задать путь Java в «Расширенном методе» кнопки «Запуск» «JavaPath» для узла, прежде чем он будет работать правильно. Проблема заключалась в том, что узел продолжал использовать более старую версию Java, которую я не смог обновить.

3 голосов
/ 13 июня 2013

Для меня в конфигурации узла был неправильный «Remote FS Root».Поэтому проверьте правильность всех параметров конфигурации на главном для этого подчиненного узла.Дженкинс ни на что не жалуется, но разрывает соединение.

Я много боролся, прежде чем определить, что это конфигурация узла.По крайней мере, сообщение об ошибке на мастере должно быть более явным или информативным.

2 голосов
/ 26 апреля 2012

Еще одна вещь, где вы можете увидеть эту ошибку (которая на самом деле приводит к этому), это отсутствие ядер памяти / процессора для сборки.Я потратил некоторое время на его тестирование и решил эту проблему на нашем сайте, увеличив размер кучи Java (а также добавив больше памяти компьютерам), увеличив количество ядер (так что на одной машине по крайней мере 4 ГБ ОЗУ с двумя ядрами, доступными с однимслот сборки), а также выполнить некоторую настройку (если вы используете Linux) числа дескрипторов и процессов открытых файлов, которые могут выполняться одновременно.

1 голос
/ 30 ноября 2017

ЕСЛИ вы используете aws ELB для связи между мастером jenkins и подчиненным jenkins, то ELB Время простоя вызывает эту проблему. Пожалуйста, зайдите и обновите ваш простой, используя http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/config-idle-timeout.html#config-idle-timeout-console

Установите более 60 секунд

1 голос
/ 29 ноября 2017

У меня были похожие проблемы с завершением работы Jenkins Slaves при обновлении Jenkins до версии 2.9.2 с 2.1.5.

Все проблемы, связанные с обновлением, такие как неожиданное завершение работы Slave, устраняются путем установки версии Java 8 на Centos.

yum install java-1.8.0-openjdk-devel

1 голос
/ 08 августа 2013

Я знаю, что этот вопрос довольно старый, но я столкнулся с этой проблемой на днях.

Для меня проблема возникла во время установки JDK. Установка не удалась, потому что параметры безопасности Windows были установлены так, что всплывающее окно с надписью: «Вы должны дать разрешение на эту операцию», вызывая сбой установки.

Я изменил настройки уведомлений на «Никогда не уведомлять», и это решило эту проблему.

0 голосов
/ 17 ноября 2017

В CentOS Linux 7 я обнаружил, что подчиненный Jenkins не работает с OpenJDK.Я пробовал Java 7 и 8. Требуется Oracle Java.

Итак, если вы работаете в Linux, установите Oracle Java и укажите путь к нему.Вы можете сделать это несколькими способами, например:

  • Установить $JAVA_HOME для пользователя, с которого вы запускаете ведомое устройство, и добавить его в $PATH.
  • Используйте update-alternatives, чтобы установить значение по умолчанию java.
  • Установите JavaPath в настройках узла Advanced в Jenkins.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...