2010-09-21 2 views
17

У меня проблема с Hudson на окнах.Перезапуск Hudson на Windows

Всякий раз, когда я обновляю Хадсон или плагин, я получаю возможность перезапуска, когда никаких заданий не выполняется.
Если я нажму эту кнопку, Хадсон зависает и не перезагружается. Я попытался перезапустить сервис Hudson, но это не помогает, поэтому вам придется перезагрузить окно, чтобы вернуть Хадсона в онлайн.

Я только что обновил до последней версии, но не нажал кнопку перезапуска, и теперь он исчез.

Есть ли правильный способ перезапуска Хадсона на окнах?

Приветствия

Том

ответ

13

У меня есть эта проблема время от времени. По какой-то причине сервер Hudson не отключается полностью, а сервер, который запускается, не может использовать порт. Чтобы исправить эту проблему, я запускаю `netstat -n -o '. Таким образом, я могу узнать идентификатор процесса, который содержит порт, и убить это приложение через taskmanager. Теперь я могу перезапустить службу, и Хадсон подходит.

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

После завершения всех ваших заданий и перезагрузки сервера. Просто запустите страницу перезагрузки http://server:port/restart и попробуйте снова перезапустить. Если это не работает, остановите службу и запустите ее снова.


UPDATE:

Поскольку я уставал физически входа на сервер Hudson/Jenkins, я теперь использовать следующие команды для запуска убить удаленно. Эти команды предполагают, что вы запускаете службу с помощью выделенного пользователя (например, JenkinsUser). Если другой процесс, работающий с теми же учетными данными, что и служба, и может запустить java.exe, вам нужно запустить netstat, который должен выполняться локально на сервере Jenkins или с помощью rexec (для меня это не вариант).

:: get the pid of jenkins java.exe 
tasklist /S %JENKINSSERVER% /FI "IMAGENAME eq java.exe" /FI "USERNAME eq %DOMAIN\USERNAME%" 

:: terminate process use pid from previous command (instead of 1234) 
taskkill /S %JENKINSSERVER% /F /T /PID 1234 

:: stop the Jenkins service (just in case the service is hanging) 
sc \\%JENKINSSERVER% stop Jenkins 

:: start the Jenkins service again 
sc \\%JENKINSSERVER% start Jenkins 

Если у меня есть много времени, я могу создать сценарий из него.

+0

Спасибо за предложение Peter!Я собираюсь запустить его обновление в конце дня, и я отдам его, если он зависает. –

+1

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

+1

/перезагрузка не работает для меня. Я получил кнопку для перезагрузки, и как только я нажал на нее, я получил следующую ошибку. udson.lifecycle.RestartNotSupportedException: жизненный цикл Windows по умолчанию не поддерживает перезагрузку. \t at hudson.lifecycle.Lifecycle $ 1.verifyRestartable (Lifecycle.java:83) Я не установил Hudson как службу Windows, поскольку это не было вариантом в Manage Hudson. Я запускаю версию 1.3.98 на своей локальной машине Windows 7. – CACuzcatlan

1

Если узел ведомого имеет slave.jar, используемый в качестве службы Windows, что услуга определяется как «Automatic».
Это означает, что он попытается связаться с мастером периодически, если соединение было отключено.

Вы не должны нажимать на что-либо на стороне сервера (в определении узла), чтобы перезапустить указанный узел: он должен быть снова подключен к сети автоматически.

+0

Спасибо за ваш ответ VonC. На самом деле у меня нет рабынь. Просто Хадсон как мастер. Итак, есть ли у вас идеи, почему они зависают, когда я нажимаю кнопку перезапуска? –

+1

@ Тогго: о, хорошо. Тогда ответ Питера может быть более уместным. – VonC

1

Если вы установили Jenkins на сервер TomCat, одним из альтернативных решений является просто перезапуск службы Apache TomCat.

+1

Это помогло мне :) – amalBit

Смежные вопросы