Агент сервера 1С:Предприятие — критически важный компонент для работы кластерных конфигураций, но в некоторых сценариях его требуется временно или полностью деактивировать. Это может понадобиться при переносе серверов, обновлении платформы, устранении конфликтов с другими службами или оптимизации ресурсов. Однако неправильное отключение чревато сбоями в работе баз данных и потерей связи между клиентскими приложениями и сервером.

В этой статье мы разберём все актуальные способы отключения агента сервера 1С 8.3 (включая версии 8.3.20–8.3.23) на Windows Server и Linux-системах, рассмотрим последствия для разных режимов работы (файловый/клиент-серверный), а также дадим рекомендации по диагностике типичных ошибок. Особое внимание уделим нюансам отключения в виртуализированных средах (VMware, Hyper-V) и облачных платформах (1С:Fresh, Yandex Cloud).

Что такое агент сервера 1С и зачем его отключать

Агент сервера 1С:Предприятие (ragent.exe для Windows или ragent для Linux) — это служба, отвечающая за:

  • 🔄 Маршрутизацию запросов между клиентами и рабочими процессами (rmngr)
  • 📊 Балансировку нагрузки в кластерных конфигурациях
  • 🔌 Управление соединениями (включая HTTP/TCP-протоколы)
  • 🛡️ Аутентификацию пользователей через 1С:Предприятие или Active Directory

Причины для отключения агента сервера:

  • 🔧 Обновление платформы — требуется остановить все сервисы 1С
  • 🐞 Диагностика ошибок (например, Ошибка соединения с информационной базой (2147483648))
  • 💾 Перенос кластера на другой физический/виртуальный сервер
  • 📉 Оптимизация ресурсов — агент потребляет ~100–300 МБ ОЗУ даже в простое
  • 🔒 Безопасность — временное отключение при подозрении на уязвимости (например, CVE-2023-4585)
⚠️ Внимание: Отключение агента сервера разрывает все активные сеансы пользователей и делает невозможным подключение к базам в клиент-серверном режиме. В файловых базах работа продолжитcя, но без поддержки распределённых транзакций.

Подготовка к отключению: проверка зависимостей

Перед деактивацией агента сервера необходимо:

  1. Убедиться в отсутствии критических задач:
    • 📅 Проверьте расписание регламентных заданий в Администрирование → Регламентные задания
    • 👥 Опросите ключевых пользователей о текущих операциях (закрытие месяца, выгрузка отчётности)
  • Создать резервные копии:
    • 💾 Резервируйте не только базы данных, но и конфигурационные файлы агента (conf.cfg, srvinfo.xml)
    • 📁 Для PostgreSQL выполните pg_dump, для MS SQL — бэкап через SQL Server Management Studio
    • Проверить логи:
      # Для Linux:
      

      tail -n 100 /var/log/1C/1CEnterprise/8.3/ragent.log

      Для Windows (через PowerShell):

      Get-Content "C:\Program Files\1cv8\8.3.23.123\conf\ragent.log" -Tail 100

    • Используйте команду для проверки текущего статуса агента:

      # Linux:
      

      systemctl status srv1cv83

      Windows (PowerShell):

      Get-Service -Name "1C:Enterprise 8.3 Server Agent"

      📊 Какой тип сервера 1С вы используете?
      Физический сервер
      Виртуальная машина (VMware/Hyper-V)
      Облако (1С:Fresh/Yandex Cloud/AWS)
      Локальный компьютер

      Способы отключения агента сервера 1С на Windows

      На Windows Server 2016/2019/2022 агент сервера 1С регистрируется как служба. Отключить его можно несколькими методами:

      1. Через «Службы» (GUI)

      Самый простой способ для начинающих администраторов:

      1. Нажмите Win + R, введите services.msc
      2. Найдите службу «1C:Enterprise 8.3 Server Agent» (версия может отличаться)
      3. Кликните правой кнопкой → Остановить
      4. Для полного отключения выберите Свойства → Тип запуска: Отключена

    2. Через PowerShell

    Для автоматизации или удалённого управления:

    # Остановка службы
    

    Stop-Service -Name "1C:Enterprise 8.3 Server Agent" -Force

    Отключение автозапуска

    Set-Service -Name "1C:Enterprise 8.3 Server Agent" -StartupType Disabled

    Проверка статуса

    Get-Service -Name "1C:Enterprise 8.3 Server Agent" | Select-Object Name, Status, StartType

    3. Через командную строку (CMD)

    Альтернатива для систем без PowerShell:

    net stop "1C:Enterprise 8.3 Server Agent"
    

    sc config "1C:Enterprise 8.3 Server Agent" start= disabled

    Метод Преимущества Недостатки Время выполнения
    GUI (services.msc) Интуитивно понятно, визуальный контроль Не подходит для удалённого управления 1–2 минуты
    PowerShell Автоматизация, работа с несколькими серверами Требуются права администратора 30 секунд
    CMD (net stop) Работает на всех версиях Windows Ограниченный функционал 40 секунд
    ⚠️ Внимание: На серверах с Windows Server Core (без GUI) доступны только методы через PowerShell или CMD. Перед отключением убедитесь, что нет зависимых служб (например, 1C:Enterprise 8.3 Server или Apache2.4 для веб-доступа).

    ☑️ Подготовка к отключению на Windows

    Выполнено: 0 / 4

    Отключение агента сервера 1С на Linux

    На Linux-системах (CentOS, Ubuntu, Astra Linux) агент сервера управляется через systemd. Процесс отключения имеет свои нюансы:

    1. Стандартный способ (systemctl)

    # Остановка службы
    

    sudo systemctl stop srv1cv83

    Отключение автозапуска

    sudo systemctl disable srv1cv83

    Проверка статуса

    sudo systemctl status srv1cv83

    2. Через конфигурационные файлы

    Если агент не останавливается стандартным способом:

    1. Откройте файл конфигурации:
      sudo nano /etc/systemd/system/srv1cv83.service
    2. Найдите строку ExecStart и добавьте флаг --disable:
      ExecStart=/opt/1C/v8.3/x86_64/ragent --disable
    3. Перезагрузите демоны:
      sudo systemctl daemon-reload
      

      sudo systemctl restart srv1cv83

    4. 3. Принудительное завершение (kill)

      Используйте только если служба «зависла»:

      # Найти PID процесса
      

      ps aux | grep ragent

      Принудительно завершить

      sudo kill -9 [PID]

      На Debian/Ubuntu может потребоваться дополнительная настройка apparmor, если агент запущен в изолированной среде:

      sudo aa-complain /etc/apparmor.d/usr.sbin.ragent
      💡

      После отключения агента на Linux проверьте порт 1540-1541 командой netstat -tulnp | grep 154. Если порты остаются занятыми, используйте fuser -k 1540/tcp для их освобождения.

      Особенности отключения в виртуальных и облачных средах

      В виртуализированных инфраструктурах (VMware ESXi, Hyper-V, Proxmox) и облачных платформах (1С:Fresh, Yandex Cloud, AWS) процесс отключения агента сервера имеет специфику:

      1. Виртуальные машины (VMware/Hyper-V)

      • 🔄 Снэпшоты: Создайте снимок состояния VM перед отключением
      • 📶 Сетевые адаптеры: Убедитесь, что виртуальная сеть не блокирует порты 1540-1560
      • 💾 Диски: Проверьте режим диска (Thin Provision может вызывать задержки при записи логов)

    2. Облачные платформы

    В 1С:Fresh и Yandex Cloud прямой доступ к агенту сервера ограничен. Используйте:

    • 🌐 Панель управления: Отключение через веб-интерфейс (раздел «Сервисы 1С»)
    • 🔑 API: Для Yandex Cloudyc compute instance stop
    • Таймауты: В облаке отключение может занимать до 5 минут из-за распределённой архитектуры
    • ⚠️ Внимание: В AWS при использовании Amazon RDS for 1C отключение агента сервера приводит к приостановке биллинга только через 2 часа после остановки экземпляра.
      Что делать если агент сервера не отключается в облаке?

      В некоторых облачных решениях (например, 1С:Fresh) агент сервера управляется централизованно. В этом случае:

      1. Обратитесь в поддержку с указанием ID вашего тенанта.

      2. Укажите причину отключения (обновление, диагностика и т.д.).

      3. Дождитесь подтверждения — процесс может занять до 1 часа.

      В Yandex Cloud проверьте квоты на операции с виртуальными машинами в разделе "Quotas".

      Типичные ошибки при отключении и их решения

      Даже при корректном выполнении инструкций могут возникать ошибки. Рассмотрим наиболее частые:

      Ошибка Причина Решение
      Ошибка 1053: Служба не ответила на запрос своевременно Агент занят обработкой длительных операций (например, регламентные задания)
      1. Увеличьте таймаут службы через реестр (HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\ServicesPipeTimeout)
      2. Используйте sc stop с флагом /WAIT:600 (10 минут)
      Failed to stop srv1cv83.service: Unit not loaded (Linux) Служба не зарегистрирована в systemd или удалена Переустановите пакет 1c-enterprise83-server или проверьте путь в /etc/systemd/system/
      Доступ запрещён (5) при остановке Недостаточно прав или служба запущена от другого пользователя
      1. Для Windows: запустите CMD от имени Администратор
      2. Для Linux: используйте sudo -u 1c_user systemctl stop srv1cv83
      Порты 1540-1541 остаются занятыми Процесс ragent не завершился корректно или занят другим ПО
      # Linux:
      

      fuser -k 1540/tcp

      Windows:

      netstat -ano | findstr 1540

      taskkill /PID [PID] /F

      Если после отключения агента сервера базы 1С перестали открываться в клиент-серверном режиме, проверьте:

      1. Статус рабочих процессов (rmngr) — они должны быть тоже остановлены
      2. Настройки подключения в ibases.v8i (путь: %APPDATA%\1C\1cv8\)
      3. Файрвол (Windows Defender или iptables) — порты 1540-1560 должны быть закрыты
    💡

    Перед повторным включением агента сервера всегда проверяйте целостность файла conf.cfg — он может быть повреждён при принудительном завершении процесса.

    Как проверить, что агент сервера успешно отключён

    Чтобы убедиться в корректном отключении, выполните следующие проверки:

    1. Проверка процессов

    # Linux:
    

    ps aux | grep -i ragent

    Windows (PowerShell):

    Get-Process | Where-Object { $_.ProcessName -like "ragent" }

    2. Проверка портов

    # Linux:
    

    netstat -tulnp | grep -E '1540|1541'

    Windows:

    netstat -ano | findstr "1540 1541"

    3. Проверка служб

    # Linux:
    

    systemctl is-active srv1cv83

    Windows:

    sc query "1C:Enterprise 8.3 Server Agent" | findstr STATE

    4. Тестовое подключение

    Попробуйте подключиться к базе 1С в клиент-серверном режиме. Должна появиться ошибка:

    • 🖥️ Windows: Не удалось установить соединение с сервером 1С:Предприятия
    • 🐧 Linux: Connection refused (111)

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

    FAQ: Частые вопросы по отключению агента сервера 1С

    Можно ли отключить агент сервера 1С на рабочем месте пользователя?

    Нет, агент сервера устанавливается только на серверные машины. На рабочих станциях используется клиентское приложение 1С (1cv8.exe или 1cv8c.exe), которое не требует отключения. Если вы видите процесс ragent.exe на пользовательском ПК — это ошибка установки, и его необходимо удалить через Панель управления → Программы и компоненты.

    Что будет с регламентными заданиями после отключения агента?

    Все запланированные задания (РегламентныеЗадания) будут приостановлены. После повторного включения агента:

    • 🕒 Задания с пропущенным временем выполнения не запустятся автоматически
    • 🔄 Для возобновления требуется вручную перезапустить службу или дождаться следующего запланированного времени
    • ⚠️ Если задание критично (например, обмен с банком), запустите его вручную через Администрирование → Регламентные задания
    Как отключить агент сервера 1С на кластере с несколькими узлами?

    В кластерных конфигурациях отключение агента требует последовательных действий:

    1. Остановите центральный сервер кластера (где расположен rmngr)
    2. Отключите агенты на рабочих серверах (где запущены rphost)
    3. Проверьте статус кластера командой:
      rac cluster status --cluster=ИмяКластера

    ⚠️ Несинхронизированное отключение узлов кластера может привести к расщеплению базы (split-brain).

    Нужно ли перезагружать сервер после отключения агента 1С?

    Перезагрузка не требуется, но рекомендуется в следующих случаях:

    • 🔄 Если агент был принудительно завершён (kill -9 или taskkill /F)
    • 📦 При планируемом обновлении платформы 1С
    • 🔒 Если на сервере установлены другие службы, зависящие от портов 1540-1560

    В остальных случаях достаточно проверки через netstat и ps.

    Можно ли отключить агент сервера 1С на время, а затем включить обратно без последствий?

    Да, временное отключение возможно, но учитывайте:

    • Сеансы пользователей будут разорваны (несохранённые данные потеряются)
    • 📡 Веб-доступ (через Apache или IIS) перестанет работать
    • 🔄 Фоновые задачи (например, обмен с 1С:EDT или 1С:Connect) приостановятся

    Для минимизации рисков:

    1. Используйте режим технического обслуживания в консоли администрирования
    2. Предупредите пользователей за 15–30 минут до отключения
    3. Проверьте логи после повторного включения (ragent.log)