Мониторинг количества использованных клиентских лицензий, выданных сервером 1С Предприятия, работающим на платформе GNU/Linux

Еще один вариант реализации слежения за программными лицензиями посредством Zabbix. Отображает: количество доступных программных лицензий сервера; общее количество сеансов кластера в который включен данный сервер; количество уникальных пользователей среди общего количества сеансов; количество использованных программных лицензий, выданных сервером.

0. Общие моменты

Для корректной работы приведенного ниже скрипта необходимо, чтобы на серверах 1С Предприятия, на которых активированы программные лиценизии, были установлены следующие пакеты: ring, license-tools, zabbix-agent, zabbix_sender, а так же запущен RAS.

ВАЖНО: Ответственность за любые последствия, возникшие в результате внесения изменений в работающую систему по материалам данной статьи, лежат исключительно на лице, внесшим данные изменения!

1. Настройки на сервере, содержащем программные лицензии

1.1. В конфигурационном файле zabbix_agentd.conf необходимо задать параметр Hostname (необходим для работы zabbix_seneder).

1.2. Добавить конфигурационный файл для zabbix-agent, содержащий необходимое значение параметра UserParameter

UserParameter=1c.rmngr.license.session[*],/etc/zabbix/scripts/1c_rmngr_license.sh used $1

Текст 1. Содержимое файла /etc/zabbix/zabbix_agentd.d/1c-rmngr.conf

1.3. Перезапустить сервис zabbix-agent

[fedotov@server_a ~]$ sudo systemctl restart zabbix-agent

1.4. Создать задание для cron, к примеру, выполняемое каждый час. Для этого в каталоге /etc/cron.hourly необходимо создать файл следующего содержания и установить для него права на исполнение

#!/bin/bash

/usr/bin/zabbix_sender -c /etc/zabbix/zabbix_agentd.conf -k 1c.rmngr.license -o $(/etc/zabbix/scripts/1c_rmngr_license.sh info) > /dev/null

Текст 2. Содержимое файла /etc/cron.hourly/1c.rmngr.license.sh.

2. Настройки на Zabbix-сервере

2.1. Сделать импорт шаблона 1c_rmngr_template.xml

2.2. Добавить данный шаблон узлу, на котором активированы программные лицензии.

2.3. В случае, если RAS у вас развернут на нестандартных портах, то изменить макрос {$RAS_PORT}, унаследованный от шаблона, на необходимое значение.

2.4. С помощью макроса {$LIC_UTIL_LIMIT} можно установить пороговое значение отношения количества использованных лицензий (сеансов) к максимальному количеству сеансов, лицензируемых активированными на данном сервере лицензиями. По превышению данного значения  срабатывает триггер с уровнем важности "Предупрежедние" (значение по-умолчанию — 0.9).

Информация: Если количество использованных лицензий равно максимальному количеству лицензируемых сеансов, то срабатывает триггер с уровнем важности "Высокая".

 

 Приложение 1. Файл 1c_rmngr_template.xml (шаблона Zabbix)

 

 Приложение 2. Файл 1c_rmngr_license.sh (скрипт получения данных)

P.S. Теперь следить за проектом можно через GitHub 

14 Comments

  1. oler2

    Накатал бы кто статью, как на одном сервере 2 экземпляра 8.3 сервера на linux поставить, очень хочется старый сэд сдружить с новыми 1с бух

    Reply ↓
  2. Sloth

    (1) Так в этом нет ни какой сложности (я про поставить) … Статью можно, если интерес есть 😉

    Reply ↓
  3. oler2

    (2)хитростей там хватает

    Основная задача работать под 1й лицензией

    Интерес есть…;)

    Reply ↓
  4. Sloth

    (3) О каких именно хитростях идет речь?

    Reply ↓
  5. oler2

    (4)как пример разные libcu использовать

    Как заставить работать на разных портах

    Reply ↓
  6. Sloth

    (5)

    как пример разные libcu использовать

    libcu? Это что за «зверь» (я не в теме)? И зачем нужны разные?

    Reply ↓
  7. Error34

    Это библиотека для postgresql. Два сервера 1С запустить не проблема, а тут судя по библиотеке зачем-то 2 postgresql надо. Кстати можно и публикации апаче сделать с разных платформ, хотя тут на форуме ходит миф, что нельзя, проверено — можно.

    Reply ↓
  8. Sloth

    (7) по-моему, две разных версии постгре запустить ещё проще чем две разные версии 1с.

    Reply ↓
  9. Sloth

    (1)

    Накатал бы кто статью, как на одном сервере 2 экземпляра 8.3 сервера на linux поставить

    https://infostart.ru/public/1118281/ Годится?

    Reply ↓
  10. oler2

    (9)попробую-скажу))

    Reply ↓
  11. Sloth

    (7)

    Кстати можно и публикации апаче сделать с разных платформ, хотя тут на форуме ходит миф, что нельзя, проверено — можно.

    Может поделитесь секретом, ну или хотя бы направлением в котором посмотреть? Хотя, я так подозреваю, что речь идет о апаче 2.4 и конфигурации через VirtualHost?

    Reply ↓
  12. Error34

    (11) Да не секрет, это обычный multiple-instance который и в апаче 2.2 можно было настроить. Тестил на 2.4 конечно, в папках апаче есть готовый скрипт setup-instance. Можно даже небольшую статью накидать что к чему

    Reply ↓
  13. Sloth

    (12) но, соответственно, каждый инстанс на своем порту?

    Reply ↓
  14. Error34

    (13) Верно, но можно ведь сделать и виртуальные хосты, как вы заметили выше. Можно на разных доменах(думаю и уровни можно использовать), еще на помощь может придти переадресация. Мне достаточно пока других портов в работе.

    Reply ↓

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *