Задание Jenkins застряло при запуске файла.bat на удаленном сервере ssh (windows 2008 R2)
У меня есть установка Дженкинса, работающая на солярисе. Я настроил задание, которое запускает файл.bat, используя плагин jenkins ssh, на удаленном сервере Windows 2008 R2 с базой данных oracle. Файлы.bat выполняет восстановление RMAN в базе данных Oracle. У меня есть сервер openssh, работающий на сервере Windows 2008 R2. Когда я делаю восстановление в маленькой базе данных, которая занимает менее 30 минут, все работает отлично. Но когда база данных велика и восстановление занимает более 3 часов, задание jenkins зависает, даже если восстановление rman, назначенное заданием, успешно завершается на сервере.
Это команда, которую я запускаю в окне команд плагина jenkins ssh:
/cygdrive/C/OpenSSH/bin/SSH_ImportTEST_DB.bat TEST3
Это то, что делает файл.bat.
- Подготовьте базу данных для восстановления RMAN (запускает несколько команд sql как системный пользователь)
- Запустите восстановление RMAN
- Выполните еще несколько команд sql, чтобы база данных была доступна для всех пользователей, сбросьте пароли.
Шаг 1 и 2 работают нормально, но задание jenkins просто показывается как выполнение шага 2, даже если оно выполнено на удаленном сервере. Он никогда не выполняет шаг 3, если восстановление rman выполняется более 3 часов.
X:\oracle\admin\TEST3\scripts>rman auxiliary cmdfile=X:\oracle\admin\TEST3\scripts\restore_db2.sql log=Y:\oracle\NightlyBackup\Prod\restore_MSIPTST3.log
RMAN> 2>
Это то, что restore_db2.sql
содержит:
DUPLICATE DATABASE TO TEST3 BACKUP LOCATION 'Y:\oracle\NightlyBackup\Prod';
exit;
Я попробовал restore_db2.sql
без команды выхода, но это тоже не поможет.
Я настроил ServerAliveInterval 60
в ssh_config на сервере, где работает jenkins. Я также настроил ClientAliveInterval 60
в sshd_config на сервере openssh, чтобы исключить тайм-ауты.
Может кто-нибудь помочь?
1 ответ
Настройте ваш Windows-клиент в качестве подчиненного jenkins, потому что cygwin openssh не подходит для удаленных заданий. В вашем случае я бы порекомендовал вариант Java Web Start. Пример конфигурации опубликован на: https://wiki.jenkins-ci.org/display/JENKINS/Step+by+step+guide+to+set+up+master+and+slave+machines