Hudson slave не запускается в Windows XP: исключение java.net.SocketTimeoutException - PullRequest
0 голосов
/ 12 октября 2010

У меня есть проблемы с ошибкой (перезапуск) подчиненных Hudson на машинах с Windows XP, которые расположены в другом кампусе (не так близко к серверу hudson, но скорость сети приличная и надежная - получите ~ 400-800 КБ / s на тесте).

Сервер Hudson работает на OS X под Tomcat.

hudson-slave.err.log:

Exception in thread "main" java.net.SocketTimeoutException: Accept timed out
at java.net.PlainSocketImpl.socketAccept(Native Method)
at java.net.PlainSocketImpl.accept(Unknown Source)
at java.net.ServerSocket.implAccept(Unknown Source)
at java.net.ServerSocket.accept(Unknown Source)
at hudson.remoting.Launcher.runAsTcpServer(Launcher.java:303)
at hudson.remoting.Launcher.run(Launcher.java:202)
at hudson.remoting.Launcher.main(Launcher.java:167)

hudson-slave.wrapper.log:

2010-10-11 12:22:18 - Started 3116
2010-10-12 00:52:11 - Starting javaw.exe -Xrs -jar "d:\.hudson\slave.jar" -tcp         d:\.hudson\port.txt
2010-10-12 00:52:12 - Started 3312
2010-10-12 02:12:05 - Starting javaw.exe -Xrs -jar "d:\.hudson\slave.jar" -tcp     d:\.hudson\port.txt
2010-10-12 02:12:05 - Started 1332
2010-10-12 02:36:05 - Starting javaw.exe -Xrs -jar "d:\.hudson\slave.jar" -tcp d:\.hudson\port.txt
2010-10-12 02:36:05 - Started 2972
2010-10-12 03:56:05 - Starting javaw.exe -Xrs -jar "d:\.hudson\slave.jar" -tcp d:\.hudson\port.txt
2010-10-12 03:56:05 - Started 632

Журнал событий:

Event Type: Warning
Event Source:   hudsonslave-d__.hudson
Event Category: None
Event ID:   0
Date:       10/12/2010
Time:       3:56:36 AM
User:       N/A
Computer:   GWATANAB370-XP
Description:
Child process [632 - javaw.exe -Xrs -jar "d:\.hudson\slave.jar" -tcp d:\.hudson\port.txt] terminated with 1

Другая странная вещь заключается в том, что я вижу, что файл slave.jar всегда неполон. Длина одного с сервера 131131 байт, но загруженного на клиент всегда меньше, чем этот.

На мониторе узла последний шаг - Copying slave.jar и остается таким же всегда.

В случае, если не было очевидно, что узел настроен для запуска с опцией Let Hudson control this Windows slave as a Windows service. Для меня это самый надежный метод, который должен быть безопасным, даже если сервер или клиент hudson перезагружен.

1 Ответ

0 голосов
/ 12 октября 2010

У меня есть хороший опыт установки ведомого в качестве службы, и пусть удаленный компьютер управляет запуском и отключением службы. Ведущий и ведомый находят друг друга независимо от того, какой сервер перезапускается. Работает надежно, и мне не нужно вводить пароль администратора для управления подчиненным.

Как вы, наверное, поняли, вам нужно обновить ведомое вместе с ведущим. Но я не помню, всегда ли я делал это. Тем временем мы переключили рабов на Unix, и я использую функцию ssh. Рабы приходят только тогда, когда это необходимо. Поэтому я не могу провести тест с этим.

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