Определение кластера серверов 1С:Предприятие 8 — одна из базовых задач администратора, с которой сталкиваются при настройке распределённых информационных баз, мониторинге производительности или устранении ошибок типа «Не найден кластер серверов 1С». В отличие от файлового варианта работы, где все данные хранятся локально, кластерный режим предполагает распределённую обработку данных между серверами приложений, менеджером кластера и рабочими процессами. Без точного знания текущего кластера невозможно корректно настроить резервное копирование, балансировку нагрузки или интеграцию с внешними системами.

Проблема усложняется тем, что в крупных инфраструктурах может быть развёрнуто несколько кластеров (например, для тестовой и боевой сред), а их имена не всегда интуитивно понятны. В этой статье мы разберём 8 практических способов определения кластера — от стандартных инструментов до командной строки и программного кода. Особое внимание уделим различиям между Windows и Linux, а также типичным ошибкам, которые допускают администраторы при поиске кластера.

1. Через оснастку «Администрирование кластеров серверов 1С»

Самый визуальный и интуитивно понятный способ — использование стандартной оснастки 1CEnterprise 8.3, которая устанавливается вместе с серверной частью платформы. Этот метод подходит для Windows-систем и позволяет не только увидеть список кластеров, но и управлять ими.

Чтобы открыть оснастку:

  • 🖥️ Нажмите Win + R, введите mmc и нажмите Enter.
  • 📌 В меню выберите Файл → Добавить или удалить оснастку.
  • 🔍 В списке доступных оснасток найдите Администрирование кластеров серверов 1С:Предприятия 8 и добавьте её.
  • 🔄 После подтверждения в левой панели появится дерево кластеров с указанием их имён и статусов.

Если оснастка отсутствует в списке, это означает, что серверная часть не установлена или установлена некорректно. В таком случае проверьте путь установки (обычно C:\Program Files\1cv8\8.3.x.x\bin\) и при необходимости переустановите компоненты.

⚠️ Внимание: В Linux-системах оснастка mmc недоступна. Для этих ОС используйте альтернативные методы, описанные ниже.
📊 Какой способ определения кластера 1С вы используете чаще?
Через оснастку mmc
Командная строка (rac)
Конфигуратор 1С
Скрипты PowerShell/Bash
Другой

2. Использование утилиты rac (командная строка)

Утилита rac (Remote Administration Console) — это универсальный инструмент для управления кластерами из командной строки. Она работает как в Windows, так и в Linux, и позволяет получить информацию о кластере даже на удалённом сервере.

Основные команды для определения кластера:

# Просмотр списка кластеров на локальном сервере (Windows)

"C:\Program Files\1cv8\8.3.x.x\bin\rac.exe" cluster list

Просмотр списка кластеров на удалённом сервере (указать IP или имя хоста)

"C:\Program Files\1cv8\8.3.x.x\bin\rac.exe" --server=192.168.1.10 cluster list

Для Linux (путь может отличаться)

/opt/1C/v8.3/x86_64/rac cluster list

Если команда возвращает пустой список, проверьте:

  • 🔌 Правильность пути к утилите rac (версия платформы должна совпадать с версией кластера).
  • 🔐 Права доступа — утилита требует запуска от имени администратора (Windows) или пользователя с правами на чтение конфигурационных файлов (Linux).
  • 🌐 Сетевые настройки — если запрашиваете удалённый сервер, убедитесь, что порт 1540 (по умолчанию) открыт.
💡

Если утилита rac не находит кластер, попробуйте явно указать порт подключения через параметр --port. Например: rac --port=1545 cluster list.

3. Через конфигуратор 1С (для подключённых баз)

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

Инструкция:

  1. Откройте Конфигуратор нужной базы.
  2. Перейдите в меню Администрирование → Публикация на веб-сервере (даже если публикация не нужна).
  3. В поле Имя кластера серверов будет указано текущее имя кластера.

Альтернативный путь (для версий 8.3.10+):

  • 📊 Откройте Администрирование → Монитор производительности.
  • 🔍 В верхней части окна будет указано имя кластера, к которому подключена база.
⚠️ Внимание: Если база работает в файловом режиме, поле с именем кластера будет пустым или недоступным. Этот метод применим только для клиент-серверного варианта.

4. Анализ конфигурационных файлов кластера

Кластеры хранят свою конфигурацию в файлах с расширением .cfg. Путь к этим файлам зависит от операционной системы и версии платформы. Анализ файлов позволяет определить имя кластера даже если сервис не запущен.

Типичные пути к конфигурационным файлам:

Операционная система Путь к файлам кластера Примечание
Windows C:\ProgramData\1C\1cv8\conf\ Папка скрытая, включите отображение скрытых файлов
Linux /var/1C/conf/ Требуются права root или sudo
Windows (старые версии) C:\Documents and Settings\All Users\Application Data\1C\1cv8\conf\ Актуально для Windows XP/Server 2003

В папке conf ищите файлы с именами вида:

  • 📄 1CV8Clst.lst — содержит список всех кластеров на сервере.
  • 📄 {ИмяКластера}.cfg — конфигурационный файл конкретного кластера.

Имя кластера в файле 1CV8Clst.lst указано в первой строке без расширения. Например, если строка содержит MainCluster, то имя кластера — MainCluster.

Открыть папку с конфигами (см. таблицу выше)|Найти файл 1CV8Clst.lst|Прочитать первую строку — это имя кластера|При необходимости открыть {ИмяКластера}.cfg для детальной информации-->

5. Через реестр Windows (для локальных кластеров)

В Windows-системах информация о установленных кластерах также дублируется в системном реестре. Этот метод полезен, если нет доступа к конфигурационным файлам или утилите rac.

Путь в реестре:

HKEY_LOCAL_MACHINE\SOFTWARE\1C\1Cv8\8.3\<ВерсияПлатформы>\Clusters

Чтобы просмотреть данные:

  1. Нажмите Win + R, введите regedit и подтвердите.
  2. Перейдите по указанному пути (замените <ВерсияПлатформы> на актуальную, например, 8.3.20.1284).
  3. В разделе Clusters будут перечислены все кластеры с их параметрами.

Если раздел Clusters отсутствует, это может означать:

  • 🚫 Кластер не установлен на этом сервере.
  • 🔄 Версия платформы в пути реестра указана неверно.
  • 🛡️ У пользователя недостаточно прав для просмотра раздела.

6. Программное определение кластера (1С:Предприятие и PowerShell)

Для автоматизации задач администраторы часто используют скрипты. Ниже приведены примеры кода для определения кластера из 1С:Предприятие и PowerShell.

Способ 1: Встроенный язык 1С

Если у вас есть доступ к конфигуратору, выполните следующий код в окне отладки (Ctrl + Alt + D):

Сообщить("Имя кластера: " + ПолучитьИмяКластераСерверов1С());

Способ 2: PowerShell (Windows)

Скрипт для получения списка кластеров через rac:

$racPath = "C:\Program Files\1cv8\8.3.20.1284\bin\rac.exe"

$output = & $racPath cluster list

$output | ForEach-Object {

if ($_ -match "Список кластеров:") {

$clusters = ($_ -split ":"[1]).Trim()

Write-Host "Обнаружены кластеры: $clusters"

}

}

Способ 3: Bash (Linux)

Аналогичный скрипт для Linux:

#!/bin/bash

RAC_PATH="/opt/1C/v8.3/x86_64/rac"

$RAC_PATH cluster list | grep -A 10 "Список кластеров"

Эти скрипты можно интегрировать в системы мониторинга (например, Zabbix или Nagios) для автоматического отслеживания состояния кластеров.

💡

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

7. Через журналы событий Windows

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

Как найти данные:

  1. Откройте Просмотр событий (eventvwr.msc).
  2. Перейдите в раздел Журналы Windows → Приложение.
  3. Отфильтруйте события по источнику 1C:Enterprise 8.3.
  4. Ищите записи с текстом Cluster manager started или Имя кластера: .

Пример записи в журнале:

Имя кластера: MainCluster_Prod

Порт: 1541

Версия сервера: 8.3.20.1284

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

8. Удалённое определение кластера через ping и nmap

В некоторых случаях (например, при аудите сети) требуется определить кластеры на удалённых серверах без прямого доступа. Для этого можно использовать сетевые утилиты.

Метод 1: Проверка портов

Кластер по умолчанию использует порты:

  • 🔢 1540 — основной порт менеджера кластера.
  • 🔢 1541 — порт рабочего процесса.
  • 🔢 1560-1591 — динамические порты для агентов.

Проверьте открытые порты с помощью nmap:

nmap -p 1540,1541,1560-1591 192.168.1.10

Метод 2: Анализ ответа на ping

Некоторые версии отвечают на специальные запросы по протоколу 1С:Предприятие. Например, можно отправить запрос через telnet:

telnet 192.168.1.10 1540

Если сервер отвечает строкой с версией платформы (например, 1C:Enterprise 8.3.20.1284), значит на этом IP работает кластер.

Как защитить кластер от сетевого сканирования?

Чтобы предотвратить обнаружение кластера через сканирование портов, настройте брандмауэр (Windows Firewall или iptables в Linux) на разрешение подключений только с доверенных IP-адресов. Также можно изменить стандартные порты кластера в конфигурационном файле {ИмяКластера}.cfg (параметр port).

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

Можно ли определить кластер, если у меня только имя базы данных?

Нет, имя информационной базы (.1CD) не содержит информации о кластере. Однако если база подключена к серверу , вы можете открыть её в конфигураторе и посмотреть имя кластера через меню Администрирование → Публикация на веб-сервере (см. раздел 3).

Почему утилита rac не показывает кластер, хотя он установлен?

Вероятные причины:

  • Утилита rac от другой версии платформы (например, 8.3.18, а кластер 8.3.20).
  • Служба кластера не запущена (проверьте в services.msc или через systemctl status srv1cv83 в Linux).
  • Порт кластера изменён в конфигурационном файле (по умолчанию 1540).

Решение: запустите rac с явным указанием порта: rac --port=1545 cluster list.

Как узнать, к какому кластеру подключена конкретная база?

Если база подключена к серверу , выполните в конфигураторе:

Сообщить(ПолучитьИмяКластераСерверов1С());
  

Если доступен только файл базы (.1CD), откройте его в конфигураторе и проверьте параметры подключения в меню Администрирование → Публикация.

Можно ли переименовать кластер без переустановки?

Да, но это требует осторожности. Инструкция:

  1. Остановите службу кластера (srvasm stop в Linux или через services.msc в Windows).
  2. Переименуйте файл {СтароеИмя}.cfg в {НовоеИмя}.cfg в папке conf.
  3. Обновите имя в файле 1CV8Clst.lst.
  4. Запустите службу кластера (srvasm start).

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

Где хранятся логи кластера для диагностики?

Пути к логам зависят от ОС:

  • Windows: C:\ProgramData\1C\1cv8\log\ (файлы srvasm*.log и rgphost*.log).
  • Linux: /var/log/1C/ или /opt/1C/v8.3/log/.

Для включения расширенного логгирования отредактируйте параметр loglevel в файле {ИмяКластера}.cfg.