TGViewer
Антон Дорошкевич | маяк в мире 1С и СУБД Антон Дорошкевич | маяк в мире 1С и СУБД @explorer1c · 2.02K subscribers
Post #21 2.41K
1️⃣🔤 Как понять какой кластер обслуживают какие процессы "сервера лицензирования"

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

Но, затем встаёт вопрос - а как понять кого обслуживает наш сервер лицензирования?

Вспоминать и бежать по всем кластерам/серверам 1С и смотреть состав рабочих серверов и их ТНФ? - очень долго и ненадёжно, так как можем просто забыть что-то.
Вести какую-то табличку? - она точно устареет и будет неактуальной.
Видеть всё где-то в одном месте? - классно, но пока такого инструмента нет (ждём 8.5.2).

❗️Сейчас же у нас всё таки есть возможность узнать какие кластера 1С обслуживает наш сервер лицензирования, а именно:

Для Windows:
▫️Открываем Диспетчер задач на сервере лицензирования - вкладка "подробности"
▫️Правой кнопкой мыши по имени любого столбца - Выбрать столбцы
▫️Ставим галку "Командная строка". Теперь у нас в Подробностях появился столбец с отображением Командной строки приложения
▫️Ищем процессы rmngr и rphost отсортировав список по колонке "Имя"

В командной строке мы видим надпись "-reghost SERVER1C-2" - это и есть имя сервера к которому в кластер его службы 1С был добавлен наш сервер лицензирования.

Для Linux - инструмент htop, в остальном всё точно так же.

Таким образом мы видим факт обслуживания, что является объективной информацией.

На примере из скриншота видно что SERVER1C обслуживает помимо самого себя (на нём есть кластер с базами) ещё и сервер SERVER1C-2.
Идём на SERVER1C-2 и видим что там server1c является сервером лицензирования.

❗️Но по хорошему нам недостаточно просто знать, надо ещё и гарантировать что конкретные (обычно серверные) лицензии должны быть заняты только конкретными серверами 1С.

Давайте рассмотрим сценарий где у нас на сервере лицензирования помимо клиентской лицензии на 100 пользователей есть ДВЕ серверные лицензии.
Одна для сервера прода, вторая для сервера разработки, а клиентские лицензии общие.
И нам нужно гарантировать что никто случайно не сможет создать ещё один сервер 1С и занять нашу лицензию для прода.

Это тоже можно реализовать:
▫️На сервере лицензирования запускаем ДВЕ службы 1С на разных портах ( прод -1540, 1541, 1560-1591, разработка (2540, 2541, 2560-2591) и под разными пользователями (прод - user1cprod, разработка - user1cdev)
▫️Ограничиваем Сетевым экраном доступ по портам на сервер лицензирования только с сервера прода и сервера разработки
▫️На файл программной серверной лицензии для прода ставим запрет для пользователя user1cdev и разрешение для user1cprod
▫️На файл программной серверной лицензии для разработки наоборот ставим запрет для пользователя user1cprod и разрешение для user1cdev
▫️На файл программной клиентской лицензии разрешение для user1cdev и для user1cprod
▫️На каждой службе сервера прода и разработки задать РАЗНЫХ администраторов сервера в консоли администрирования
▫️На каждой службе сервера лицензирования задать соответствующих администраторов сервера в консоли администрирования

Таким образом мы ограничим на уровне сети и знания логинов/паролей администраторов сервера 1С сценарий, когда на любой машине в локальной сети устанавливается серверная часть платформы и в созданный по умолчанию кластер добавляется наш сервер лицензирования.
А в момент долгого (более 20 минут) отсутствия одного из серверов (прод или разработки) сервер лицензирования высвободит их лицензию и отдаст неизвестному серверу по его требованию. И мы получим проблемы с работой нужных серверов.
Внутри сервера лицензирования мы с помощью прав на файлы сделали так чтобы службы разработки не смогла занять файл прода и наоборот.

❗️Нужен именно комплекс мер, а не что-то одно.
Тогда вероятность случайного/умышленного "угона" лицензии на другой кластер будет крайне мала.
  • 👍 42
  • 🔥 15
  • ❤ 5
More from @explorer1c
  1. Sep 21, 2026Можно ли сделать поведение PostgreSQL в отношении потребления памяти процессами более жест…
  2. Sep 11, 2026Сегодня ровно год первому сообщению в канале! Огромное спасибо всем вам! Честно - было оче…
  3. Sep 9, 2026Теперь на багборде можно легко и быстро сравнить версии платформы по изменениям! Уверен чт…
  4. Sep 7, 2026Начнём...)
  5. Sep 2, 2026Как собрать для анализа запроса все временные таблицы с их содержимым? Все мы хорошо знаем…
  6. Aug 26, 2026Небольшой анонс поездок и мероприятий с моим участием: 08-10/09 - Обучение по кластеру 1с…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →