Современная платформа «1С:Предприятие» предоставляет администраторам мощный набор консольных утилит, позволяющих автоматизировать рутинные задачи, управлять кластером серверов и выполнять операции с базами данных без использования графического интерфейса. В этой статье мы рассмотрим три ключевых инструмента: RAS (Server Administration Server), RAC (Remote Administration Console) и ibcmd (Standalone Server Administration Utility).
RAS – Сервер администрирования
RAS (Remote Administration Server) – это сервис, который обеспечивает удаленное управление кластером серверов 1С. Он работает как фоновое приложение и принимает команды от утилиты RAC.
Регистрация RAS как службы Windows
Для того чтобы RAS запускался автоматически при старте системы и работал в фоновом режиме, его необходимо зарегистрировать как службу Windows. Это делается с помощью команды sc create:
sc create "1CRAS8.3.27.1859" binPath= ""C:\Program Files\1cv8\8.3.27.1859\bin\ras.exe" cluster --service --port=1545 localhost:1540" start= auto obj= LocalSystem displayname= "1C Enterprise RAS 8.3.27.1859"
Разберем параметры команды:
| Параметр | Описание |
|---|---|
| “1CRAS8.3.27.1859” | Имя создаваемой службы |
| binPath= | Полный путь к исполняемому файлу ras.exe с аргументами запуска |
| –service | Ключ, указывающий, что RAS должен работать в режиме службы |
| –port=1545 | Сетевой порт, на котором будет работать сервер администрирования |
| localhost:1540 | Адрес и порт агента сервера (обычно 1540) |
| start= auto | Автоматический запуск службы при старте системы |
| obj= LocalSystem | Учетная запись, от имени которой будет запускаться служба |
| displayname= | Отображаемое имя службы |
Важно: В некоторых случаях может потребоваться указать конкретного пользователя (например USR1CV8) и пароль для запуска службы. Для этого используются параметры obj= и password=.
RAC – Консоль администрирования кластера
RAC (Remote Administration Console) – это клиентская утилита для управления кластером серверов 1С через RAS. Она позволяет выполнять практически любые административные действия из командной строки.
Получение списка кластеров
Первое, что обычно делает администратор, – получает список доступных кластеров:
"C:\Program Files\1cv8\8.3.27.1859\bin\rac.exe" cluster list
Эта команда выводит UUID и параметры всех кластеров, к которым имеет доступ утилита.
Основные команды RAC
RAC поддерживает широкий набор команд для управления различными аспектами кластера:
| Категория | Команда | Описание |
|---|---|---|
| Кластеры | rac cluster list | Вывод списка кластеров |
| rac cluster update –cluster=<UUID> | Обновление параметров кластера | |
| Инфобазы | rac infobase summary list –cluster=<UUID> | Список информационных баз |
| rac infobase create –cluster=<UUID> params | Создание новой информационной базы | |
| rac infobase drop –infobase=<UUID> | Удаление информационной базы | |
| Сеансы | rac session list –infobase=<UUID> | Список активных сеансов |
| rac session terminate –session=<UUID> | Принудительное завершение сеанса | |
| rac session info –session=<UUID> | Информация о конкретном сеансе |
Пример: управление сеансами
Одна из наиболее востребованных задач – управление пользовательскими сеансами. RAC позволяет не только просматривать активные сеансы, но и завершать их при необходимости, что особенно полезно при проведении регламентных работ или в случае “зависших” соединений.
ibcmd – Утилита администрирования автономного сервера
ibcmd – это универсальная консольная утилита, которая работает независимо от RAS и кластера. Она позволяет управлять информационными базами напрямую, подключаясь к СУБД. Это делает её незаменимой для операций с базами данных.
Выгрузка базы в файл .dt без остановки работы пользователей
Одна из ключевых возможностей ibcmd – выгрузка базы данных в файл .dt без необходимости завершения пользовательских сеансов. Это критически важно для систем, работающих 24/7.
Для Microsoft SQL Server:
"C:\Program Files\1cv8\8.3.27.1859\bin\ibcmd.exe" infobase dump --dbms=MSSQLServer --db-server=127.0.0.1 --db-user=sa --db-pwd=ПАРОЛЬ --db-name=ИмяБазы --data="D:\temp" "D:\backup\backup.dt"
Для PostgreSQL:
"C:\Program Files\1cv8\8.3.27.1859\bin\ibcmd.exe" infobase dump --dbms=PostgreSQL --db-server=127.0.0.1 --db-user=postgres --db-pwd=ПАРОЛЬ --db-name=ИмяБазы --data="D:\temp" "D:\backup\backup.dt"
Параметры команды:
| Параметр | Описание |
|---|---|
| infobase dump | Команда выгрузки базы данных |
| –dbms= | Тип СУБД (MSSQLServer, PostgreSQL) |
| –db-server= | Адрес сервера СУБД |
| –db-user= | Имя пользователя СУБД |
| –db-pwd= | Пароль пользователя СУБД |
| –db-name= | Имя базы данных |
| –data= | Временная папка для промежуточных данных |
| Путь к .dt | Конечный файл выгрузки |
Другие возможности ibcmd
Утилита ibcmd поддерживает и другие режимы работы:
- Создание информационной базы – ibcmd infobase create
- Загрузка конфигурации – ibcmd infobase config load
- Настройка автономного сервера – ibcmd server config init
- Получение справки – ibcmd –help
Важно: При использовании ibcmd параметры командной строки имеют приоритет над параметрами из файла конфигурации.
Заключение
Три рассмотренные утилиты – RAS, RAC и ibcmd – образуют мощный фундамент для автоматизации администрирования 1С:
- RAS обеспечивает фоновую службу для удаленного управления кластером
- RAC предоставляет интерфейс командной строки для всех операций с кластером, базами и сеансами
- ibcmd позволяет работать с базами данных напрямую, выполняя выгрузку, загрузку и другие операции без участия кластера
Освоение этих инструментов позволяет администратору значительно повысить эффективность работы, автоматизировать рутинные задачи и оперативно реагировать на проблемы в инфраструктуре 1С.