В 03:00 планировщик перезапускает службу сервера 1С. Следом останавливаются ragent, rmngr и все rphost. Хотя обновить требовалось только рабочие процессы.

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

Нужно обновить рабочие процессы — завершайте rphost штатными средствами кластера. Останавливайте службу целиком при смене её параметров, учётной записи или файлов платформы.

Служба, rphost или операционная система

Рабочий процесс rphost принимает пользовательские запросы, запускает фоновые задания и обращается к СУБД. EFSOL описывает штатный перезапуск rphost без остановки серверной службы 1С.

Служба стоит выше в цепочке. При её остановке завершаются агент сервера ragent, менеджер кластера rmngr и связанные рабочие процессы rphost.

Перезагрузка операционной системы затрагивает ещё больше компонентов: СУБД, сервер лицензирования и другие службы. Не перезагружайте ОС только ради обновления rphost.

ОперацияЧто останавливаетсяЧто происходит с работойКогда применять
Перезапуск rphostОдин или несколько рабочих процессовКластер переносит соединения на другие доступные процессыПлановое обновление рабочих процессов
Перезапуск службы 1Сragent, rmngr, все связанные rphostКластер на этом сервере прекращает обслуживать соединенияСмена параметров службы, её учётной записи или файлов платформы
Перезагрузка ОССлужба 1С и остальные компоненты сервераРабота зависит от порядка запуска 1С, СУБД и связанных службОбслуживание ОС, драйверов или оборудования
Завершение отдельного сеансаВыбранный пользовательский сеансПользователь теряет текущее соединениеЗависший сеанс, который нельзя завершить штатно

Если вы обслуживаете rphost, останавливать службу целиком не нужно. С этой развилки начинается подготовка любого ночного задания.

Кластер перенесёт соединения, но не сохранит действия, которые пользователь ещё не записал. Проверьте сеансы и согласуйте окно, даже если работаете штатными средствами.

Что проверить перед перезапуском

Сначала получите список рабочих процессов. Утилита rac входит в набор средств удалённого администрирования кластера 1С.

В практическом руководстве 1c-expert указана команда:

rac process list --cluster=<сервер>:<порт>

Подставьте адрес центрального сервера и порт кластера. В типовой установке rac подключается к порту 1541. На рабочем сервере всё равно сверьте значение с настройками.

Теперь запросите активные сеансы:

rac session list

До запуска откройте встроенную справку вашей версии rac и проверьте параметры. Синтаксис подключения и авторизации зависит от версии платформы и настроек кластера.

Не завершайте все найденные сеансы подряд. Список нужен, чтобы увидеть пользователей, которые продолжают работу после начала согласованного окна.

Что проверитьКоманда или инструментКогда отложить остановку
Рабочие процессыrac process list --cluster=<сервер>:<порт>Неясно, какие процессы обслуживают нужные базы
Активные сеансыrac session listПользователи ещё работают или не подтвердили выход
Фоновые заданияКонсоль кластера и регламентные задания базИдёт обмен, загрузка данных или другое длительное задание
Доступ к журналу WindowsПросмотр событий WindowsЖурнал недоступен или события службы нельзя отфильтровать
Доступ к журналу Linuxjournalctl -u srv1cv83 -fНет прав на чтение журнала или имя юнита не проверено
Вход в контрольную базуТестовый клиент 1СНет учётной записи для проверки после запуска

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

Для принудительного завершения сеанса у rac есть отдельная команда:

rac session terminate

Не вставляйте её в сценарий без условий. Найдите нужный сеанс, проверьте владельца и сверьте параметры команды со своей версией платформы.

Для ручной проверки подойдёт консоль управления кластером. В ней видны информационные базы, сеансы и рабочие процессы. Собирать длинные команды не придётся.

Как перезапустить службу 1С в Windows

Откройте свойства установленной службы через services.msc. Скопируйте системное имя оттуда — не берите его из чужого сценария.

В имени часто указаны версия платформы и архитектура. После обновления на сервере могут остаться службы нескольких версий. Совпадения по словам «1С» здесь мало.

Вручную службу можно остановить через оснастку. В сценариях используют утилиту sc:

sc stop "имя_службы"

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

Видимое описание службы не всегда совпадает с системным именем. Утилите sc нужно имя из свойств службы.

После запуска откройте журнал событий Windows. Отфильтруйте сообщения службы 1С и Service Control Manager за время работ.

Статуса «Выполняется» недостаточно. Проверьте, что запустились ragent, rmngr и хотя бы один rphost.

Связь между этими процессами описана в материале про настройку кластера 1С. Он поможет продолжить проверку, если служба запущена, а кластер недоступен.

Как перезапустить службу 1С в Linux

В Linux службами управляет systemd. Практическое руководство 1c-expert приводит распространённое имя юнита — srv1cv83.

На вашем сервере имя может отличаться. Причина — другая версия пакета или локальная схема установки. Сначала найдите нужный юнит и только потом запускайте команду.

Для перезапуска используйте:

systemctl restart srv1cv83

systemctl сначала остановит юнит, затем запустит его. Сразу откройте журнал в режиме просмотра новых записей:

journalctl -u srv1cv83 -f

Не закрывайте журнал после первой строки об успешном старте. Дождитесь запуска компонентов кластера, затем войдите в контрольную базу.

Активный юнит ещё не доказывает, что пользователи подключатся. Если база недоступна, проверьте ragent, rmngr и rphost. После этого ищите ошибки связи с СУБД и каталогом служебных данных.

Когда ragent запускается и тут же завершается, новый restart обычно повторяет тот же сбой. Переходите к диагностике остановки агента сервера: начинайте с журнала и параметров службы.

Как перезапустить rphost без остановки службы

Откройте список рабочих процессов в консоли кластера. Выберите нужный rphost и завершите его штатной командой консоли.

EFSOL описывает этот способ как отключение рабочего процесса без остановки серверной службы. Кластер создаёт замену, а соединения переводит на доступные процессы.

До версии 8.3.27 регламентный перезапуск настраивают интервалом для всего кластера. У каждого rphost отсчёт начинается в момент его собственного запуска.

Поэтому 86400 секунд — это сутки, но не заданное время на часах. Если два процесса стартовали в разные часы, перезапуск тоже произойдёт в разное время.

Кластер заменяет процессы по очереди. Он переносит соединения на другие rphost, завершает выбранный процесс и запускает новый экземпляр.

До операции проверьте, куда кластер перенесёт соединения. С одним рабочим процессом сценарий будет не таким, как с несколькими доступными rphost.

Что изменилось в 1С 8.3.27

С версии 1С:Предприятия 8.3.27 расписание перезапуска можно задать для всего кластера или отдельного рабочего сервера. Эту возможность описывают материалы EFSOL и Status SPB.

Настройка доступна через rac, встроенный язык и консоль администрирования. Выберите инструмент, которым вы уже управляете кластером.

Расписание хранится в строке формата cron. Расшифровки полей и готовых выражений здесь нет.

Страницу 1С:ИТС не удалось получить в читаемом виде. Поэтому стороннего пересказа недостаточно, чтобы публиковать справочник для настройки рабочего кластера.

Версия платформыМеханизмОбласть настройкиЧто учесть
До 8.3.27Интервал в секундахВесь кластерОтсчёт идёт отдельно от запуска каждого процесса
До 8.3.27Последовательная замена процессовРабочие процессы кластераСоединения переносятся на другие доступные процессы
8.3.27 и новееРасписаниеВесь кластерСверяйте синтаксис с документацией установленной версии
8.3.27 и новееРасписаниеОтдельный рабочий серверМожно развести обслуживание серверов по времени
8.3.27 и новееrac, встроенный язык или консольВыбранная областьНе смешивайте несколько способов управления одним расписанием

В ранних версиях интервал отвечает на вопрос: «Через сколько времени после запуска заменить процесс». Начиная с 8.3.27, расписание привязывает замену к календарю.

Не переносите cron-строку из сторонней статьи сразу в рабочий кластер. Откройте документацию 1С для установленной версии и сверьте каждое поле.

Как собрать контролируемый сценарий

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

Перед запуском сохраните текущие параметры службы и кластера. После работ вы сможете сравнить учётную запись, путь и порт с исходными значениями.

Дальше нужны четыре этапа:

  1. Проверьте версию платформы, имя службы и область обслуживания.
  2. Выведите рабочие процессы и активные сеансы через rac.
  3. Перезапустите только выбранный уровень: rphost либо службу.
  4. Проверьте процессы, журнал и вход в контрольную базу.

Не очищайте серверный кэш при каждом перезапуске. У этой операции свои показания и риски.

Не прячьте перезагрузку ОС внутри задания для обслуживания rphost. Если без неё не обойтись, выделите отдельное окно и задайте порядок запуска зависимых служб.

Признаки успешного перезапуска

Нулевой код возврата подтверждает выполнение команды, но не готовность 1С. Проверку завершает вход в контрольную базу.

ПроверкаПризнак успехаЕсли проверка не прошла
Статус службыСлужба запущена и не останавливается повторноОткрыть журнал ОС и проверить параметры запуска
Агент сервераПроцесс ragent работаетПроверить журнал, учётную запись и доступ к служебным каталогам
Менеджер кластераПроцесс rmngr появилсяПроверить запуск кластера и связь с ragent
Рабочие процессыЗапущены ожидаемые rphostПроверить параметры рабочего сервера и журнал кластера
Сеансыrac session list отвечаетПроверить соединение rac, порт и права администратора
Контрольная базаКлиент подключается и открывает базуПроверить рабочий процесс, СУБД и сетевое соединение
ЖурналНет повторяющегося падения службыРазбирать первую ошибку до последующих сообщений

Если служба работает, но rphost не появился, перезапуск ещё не закончен. Подключение к базе скажет о результате больше, чем зелёный статус в оснастке.

Что сделать перед ближайшим ночным окном

Если нужно освободить или обновить рабочие процессы, перезапускайте rphost. Не останавливайте ради этого весь агент сервера.

Отдельное окно потребуется при смене учётной записи службы, параметров запуска или файлов платформы. После старта проверьте ragent, rmngr, rphost и подключение к базе.

На платформе до 8.3.27 проверьте интервальный перезапуск. Значение 86400 отсчитывает сутки от запуска каждого процесса, а не задаёт общее время для кластера.

В версии 8.3.27 и новее назначьте расписание на часы без пользовательской работы. Синтаксис сверяйте с документацией 1С для установленной версии.

Последним шагом ночного задания оставьте вход в контрольную базу. Без этой проверки сценарий подтверждает только запуск службы. Готовность 1С к утренней работе он не доказывает.

rphost администрирование кластер серверов рабочие процессы сервер 1с