slothfk / 1c_zabbix_template_ce

Шаблон Zabbix для мониторинга кластера серверов 1С Предприятия 8.3
MIT License
157 stars 58 forks source link

Повышение детальности документации #47

Open slothfk opened 3 years ago

slothfk commented 3 years ago

Необходимо более детально описать процедуру установки/использования шаблона!

В частности, уделить внимание специфике применения на платформе Windows

slothfk commented 3 years ago

Добавить описание про имена серверов и использование ip-адресов при добавлении сервера в состав кластера (на основе #62)

drakhmanin commented 3 years ago

Добрый день. Специально зарегистрировался на GitHub для того, чтобы оставить комментарий. Хотелось бы добавить пару моментов для чайников, которые впервые, как и я, берутся за мониторинг 1С Zabbix-ом.

  1. Элементы данных в данном шаблоне настроены на Активный Агент Zabbix, соответственно нужно перебить агент на работу в активном режиме. В файле конфигурации агента zabbix_agentd.conf (По-умолчанию расположен в C:\Program Files\Zabbix Agent) в строке ServerActive=127.0.0.1 вместо 127.0.0.1 укажите IP вашего Zabbix сервера или его доменное имя.

  2. Также в этом же этом же файле конфигурации в строке UnsafeUserParameters=0 заменить 0 на 1, иначе скрипты не будут разрешены для выполнения со стороны Zabbix (Причина: наличие специальных символов в скрипте)

  3. Для запуска службы RAS необходимо открыть командную строку и перейти в каталог bin с установленным 1С (Например, C:\Program Files\1cv8\8.3.16.1224\bin ). Запуск производится по команде .\ras cluster. Можно создать службу посредством команды SC, как указано в данной статье

  4. Доступ к консоли управления Администрирование Серверов 1С должен проходить по аутентификации пользователя (Username и Password в дальнейшем указываются в макросах шаблона). В случае с доменной средой Windows, рекомендую сначала создать отдельного пользователя для доступа к консоли управления (Например, ZabbixSVC) и только затем добавить доменных пользователей.

slothfk commented 3 years ago

Спасибо за комментарий!

2\. Также в этом же этом же файле конфигурации в строке
    **UnsafeUserParameters=0**
    заменить 0 на 1, иначе скрипты не будут разрешены для выполнения со стороны Zabbix (Причина: наличие специальных символов в скрипте)

На какой Windows у вас требуется такая настройка? У меня на 2012 R2 нужды в этом не было ...

drakhmanin commented 3 years ago

Добрый день. В моем случае - 2019. В ближайшее буду ставить на другом сервере (там как раз 2012 R2). Отпишусь. Дело в том, что эта ошибка регистрировалась в логах zabbix агента. Ставлю на Zabbix 5.0 LTS, может быть они политики выполнения скриптов переиграли в свежих версиях ?

slothfk commented 3 years ago

Дело в том, что эта ошибка регистрировалась в логах zabbix агента.

Можно кусок лога глянуть?

drakhmanin commented 3 years ago

1396:20210602:134427.123 Starting Zabbix Agent [SRV-DEV-DB]. Zabbix 5.0.12 (revision c60195b3f9). 1396:20210602:134427.124 Enabled features 1396:20210602:134427.125 IPv6 support: YES 1396:20210602:134427.126 TLS support: YES 1396:20210602:134427.127 ** 1396:20210602:134427.128 using configuration file: C:\Program Files\Zabbix Agent\zabbixagentd.conf 1396:20210602:134427.818 agent #0 started [main process] 180:20210602:134427.820 agent #1 started [collector] 4380:20210602:134427.822 agent #5 started [active checks #46 12168:20210602:134427.824 agent #3 started [listener #2] 3672:20210602:134427.825 agent #4 started [listener #3] 11952:20210602:134427.827 agent #2 started [listener #1] #Начало ошибок 4380:20210602:134428.735 active check "1c.cs.infobases.discovery[0,1545,1.5,Логин,Пароль_]" is not supported: Special characters "\, ', ", `, *, ?, [, ], {, }, ~, $, !, &, ;, (, ), <, >, |, #, @, 0x0a" are not allowed in the parameters.

4380:20210602:134428.736 active check "1c.cs.sessions[1545,1.5,Логин,Пароль]" is not supported: Special characters "\, ', ", `, *, ?, [, ], {, }, ~, $, !, &, ;, (, ), <, >, |, #, @, 0x0a" are not allowed in the parameters.

4380:20210602:134429.423 active check "1c.ls.sessions[1545,1.5,Логин,Пароль]" is not supported: Special characters "\, ', ", `, *, ?, [, ], {, }, ~, $, !, &, ;, (, ), <, >, |, #, @, 0x0a" are not allowed in the parameters.

4380:20210602:134430.610 active check "1c.ws.perfs[1545,1.5,Логин,Пароль]" is not supported: Special characters "\, ', ", `, *, ?, [, ], {, }, ~, $, !, &, ;, (, ), <, >, |, #, @, 0x0a" are not allowed in the parameters. #Конец ошибок 5628:20210602:134713.687 Zabbix Agent stopped. Zabbix 5.0.12 (revision c60195b3f9). #Тут я выключил агент руками и подправил конфиг

264:20210602:134714.721 Starting Zabbix Agent [SRV-DEV-DB]. Zabbix 5.0.12 (revision c60195b3f9). 264:20210602:134714.722 Enabled features 264:20210602:134714.723 IPv6 support: YES 264:20210602:134714.726 TLS support: YES 264:20210602:134714.727 ** 264:20210602:134714.728 using configuration file: C:\Program Files\Zabbix Agent\zabbix_agentd.conf 264:20210602:134715.344 agent #0 started [main process] 13212:20210602:134715.346 agent #4 started [listener #3] 11640:20210602:134715.360 agent #5 started [active checks #1] 15300:20210602:134715.362 agent #2 started [listener #1] 932:20210602:134715.366 agent #3 started [listener #2] 11040:20210602:134715.367 agent #1 started [collector]

slothfk commented 3 years ago

,Логин,Пароль]"

откуда это русскими буквами взялось? или это просто замененное? Тогда возможно пароль содержит запрещенные символы ...

drakhmanin commented 3 years ago

Замененное. Да, в пароле оно действительно присутствует. Знак @. Этого я не учел

drakhmanin commented 3 years ago

Замененное. Да, в пароле оно действительно присутствует. Знак @. Этого я не учел

Я проверил, действительно из-за наличия спец символа в пароле

drakhmanin commented 3 years ago

Развернул на 2012 R2. Все работает. У меня есть вопрос немного не по теме, правда.

Стоит включить, сразу срабатывает триггер (это уже 3-ий сервер с подобной картиной) [1С/Рабочий процесс] Частые изменения в списке процессов

Я не смог разобраться с элементом данных 1c.ws.rphost.change На какие изменения он реагирует ?

slothfk commented 3 years ago

Я не смог разобраться с элементом данных 1c.ws.rphost.change На какие изменения он реагирует ?

Данный элемент данных фиксирует изменения в списке процессов rphost. Сказать точнее, сравнивает список pid-ов и если текущий список отличается от списка полученного на предыдущем опросе, то возвращается 1. Триггер "Частые измениня в списке процессов" смотрит были ли за последние 5 минут изменения в этом списке более 2 раз. Проблема может быть еще в отсутсвующих правах на временный каталог, тогда заббикс не может записать хэш текущего списка, и каждая новая проверка считает, что произошло изменение в списке процессов.

Edward979 commented 3 years ago

4. Доступ к консоли управления Администрирование Серверов 1С должен проходить по аутентификации пользователя (Username и Password в дальнейшем указываются в макросах шаблона). В случае с доменной средой Windows, рекомендую сначала создать отдельного пользователя для доступа к консоли управления (Например, ZabbixSVC) и только затем добавить доменных пользователей.

Можно разъяснить поподробнее? Где и как создать пользователя (в Win или в 1С) и как в каком макросе прописать.

slothfk commented 3 years ago

Можно разъяснить поподробнее?

Очевидно, речь идет о пользователе администраторе кластера. По-умолчанию такового в настройках кластера 1С нет, но если вы его используете, то ... Задается администратор кластера либо через консоль управления кластерами 1С (mmc), либо через rac/ras (другими утилитами, работающими на этой основе, например обработка "Управление серверами")

Где и как создать пользователя (в Win или в 1С) и как в каком макросе прописать.

Макросы {$RAS_USER} и {$RAS_PASS} в настройках узла мониторинга на Zabbix-сервере

Edward979 commented 3 years ago

Макросы {$RAS_USER} и {$RAS_PASS} в настройках узла мониторинга на Zabbix-сервере

На сервере про макрос я понял, вопрос откуда брать этого пользователя и какие у него должны быть права. Т.е. пользователь Win либо это пользователь 1С либо должен быть и там и там и какие нужны ему права.

drakhmanin commented 3 years ago

Макросы {$RAS_USER} и {$RAS_PASS} в настройках узла мониторинга на Zabbix-сервере

На сервере про макрос я понял, вопрос откуда брать этого пользователя и какие у него должны быть права. Т.е. пользователь Win либо это пользователь 1С либо должен быть и там и там и какие нужны ему права.

Это администратор кластера 1С. изображение

kaplunaleks commented 3 years ago

Подскажите:

  1. Скопировал файлы *userparameter_1c-.conf** в папку агента C:\Program Files\Zabbix Agent\zabbix_agentd.conf.d
  2. Скопировал папку scripts целиком в папку агента C:\Program Files\Zabbix Agent\
  3. установил Git на сервер C:\Program Files\Git\bin\bash.exe
  4. Поправил *userparameter_1c-.conf** на
    
    UserParameter=1c.ls.sessions[*],"C:\Program Files\Git\bin\bash.exe" "C:\Program Files\Zabbix Agent\scripts\1c_license_server.sh" used $1

UserParameter=1c.ls.clusters.discovery[*],"C:\Program Files\Git\bin\bash.exe" "C:\Program Files\Zabbix Agent\scripts\1c_license_server.sh" clusters

5. Поправил **zabbix_agentd.conf** на

Timeout=20 UnsafeUserParameters=1


6. Добавил **1c_license_server.sh** в планировщик для запуска раз в час
7. Создал папку **C:\1C_Logs\zabbix\problem_log**
8. Добавил файл **logcfg.xml** из **logcfg_zabbix_template.xml**
9. Импортировал шаблон 1c_license_server.xml в Zabbix 5.4 и подключил его хосту
10. У хоста в макросы добавил `{$LOG_DIR} = /c/1C_Logs`
11. Поднял RAS на сервере `"C:\Program Files\1cv8\8.3.18.1289\bin\ras.exe" cluster --service --port=1545 localhost:2540`

График пустой, возможно нужно еще где-то что-то как-то настроить?
slothfk commented 3 years ago

UnsafeUserParameters=1

Это лишнее!

6. Добавил **1c_license_server.sh** в планировщик для запуска раз в час

нужен скрипт 1c_ls_license_info.sh, а не указанный ;)

7. Создал папку **C:\1C_Logs\zabbix\problem_log**
....
10. У хоста в макросы добавил {$LOG_DIR} = /c/1C_Logs

Для сервера лицензирования это не надо

В кластере есть ли администарторы? Что в логах агента и сервера?

kaplunaleks commented 3 years ago

нужен скрипт 1c_ls_license_info.sh, а не указанный ;)

Понял, нашел

UnsafeUserParameters=1

Это лишнее!

Убрал

7. Создал папку **C:\1C_Logs\zabbix\problem_log**
....
10. У хоста в макросы добавил {$LOG_DIR} = /c/1C_Logs

Для сервера лицензирования это не надо

Убрал

В кластере есть ли администарторы? Что в логах агента и сервера?

Изначально не было, создал пользователя zabbix которого прописал через {$RAS_USER} и {$RAS_PASS} в макросе хоста.

В логах агента:

  4864:20210915:161351.945 Starting Zabbix Agent [1C-LIC]. Zabbix 5.4.4 (revision 1765c4f1bc).
  4864:20210915:161351.946 **** Enabled features ****
  4864:20210915:161351.947 IPv6 support:          YES
  4864:20210915:161351.947 TLS support:           YES
  4864:20210915:161351.948 **************************
  4864:20210915:161351.949 using configuration file: C:\Program Files\Zabbix Agent\zabbix_agentd.conf
  4864:20210915:161352.650 agent #0 started [main process]
  3396:20210915:161352.651 agent #1 started [collector]
  4104:20210915:161352.652 agent #3 started [listener #2]
  8956:20210915:161352.653 agent #2 started [listener #1]
  8172:20210915:161352.654 agent #4 started [listener #3]
  2580:20210915:161352.655 agent #5 started [active checks #1]
slothfk commented 3 years ago

Изначально не было, создал пользователя zabbix которого прописал через {$RAS_USER} и {$RAS_PASS} в макросе хоста.

Это не обязательно. Если администратора не было, можно было оставить эти макросы с пустыми значениями ;)

Проверьте, есть ли в конфиге агента дирректива (в общем, тот каталог, куда сложены файлы userparameter-.conf) `Include=c:\Program Files\Zabbix agent\zabbix_agentd.conf.d\.conf`

kaplunaleks commented 3 years ago

Проверьте, есть ли в конфиге агента дирректива (в общем, тот каталог, куда сложены файлы userparameter-.conf) `Include=c:\Program Files\Zabbix agent\zabbix_agentd.conf.d\.conf`

Есть такое Include=C:\Program Files\Zabbix Agent\zabbix_agentd.conf.d\

Я попробовал запустить скрипт из планировщика и получил такое: image

slothfk commented 3 years ago

попробовал запустить скрипт из планировщика и получил такое:

явно что-то не то пробовали ...

slothfk commented 3 years ago

команда должна выглядеть наверное как-то так ...

/c/Program\ Files/Zabbix\ Agent/zabbix_sender.exe -c /etc/zabbix/zabbix_agentd.conf -k 1c.ls.licenses -o "$(nice -n 19 /c/Program Files/Zabbix\ Agent/scripts/1c_license_server.sh info)" > /dev/null

у вас скрипт 1c_license_server.sh запускается без параметра info

kaplunaleks commented 3 years ago

оманда должна выглядеть наверное как-то так ...

/c/Program\ Files/Zabbix\ Agent/zabbix_sender.exe -c /etc/zabbix/zabbix_agentd.conf -k 1c.ls.licenses -o "$(nice -n 19 /c/Program Files/Zabbix\ Agent/scripts/1c_license_server.sh info)" > /dev/null

Немного подправил этот вариант и запустился без ошибок $ /c/Program\ Files/Zabbix\ Agent/zabbix_sender.exe -c /c/Program\ Files/Zabbix\ Agent/zabbix_agentd.conf -k 1c.ls.licenses -o "$(nice -n 19 /c/Program\ Files/Zabbix\ Agent/scripts/1c_license_server.sh info)" > /dev/null image

Если запустить 1c_license_server.sh он выдает что не найден файл 1c_common_module.sh Я так понимаю что нужно переписать все пути в скриптах так как там встречаются Linux пути: /etc/1C/1CE/ring-commands.cfg

slothfk commented 3 years ago

Если запустить 1c_license_server.sh он выдает что не найден файл 1c_common_module.sh

текст ошибки?

Я так понимаю что нужно переписать все пути в скриптах так как там встречаются Linux пути: /etc/1C/1CE/ring-commands.cfg

хм, проверю ... скорее всего, да ...

slothfk commented 3 years ago

так как там встречаются Linux пути: /etc/1C/1CE/ring-commands.cfg

все необходимые зависимости для Вин там есть, так что ничего менять не надо!

slothfk commented 3 years ago

Немного подправил этот вариант и запустился без ошибок

Запустите лучше $ bash -x /c/Program\ Files/Zabbix\ Agent/scripts/1c_license_server.sh info и пришлите вывод

kaplunaleks commented 3 years ago

Запустите лучше $ bash -x /c/Program\ Files/Zabbix\ Agent/scripts/1c_license_server.sh info и пришлите вывод

image

slothfk commented 3 years ago

а bash -x где перед скриптом? и скрипт 1c_common_module.sh имеется в каталоге рядом с 1c_license_server.sh?

kaplunaleks commented 3 years ago

а bash -x где перед скриптом?

image

slothfk commented 3 years ago

покажите вывод $ ls /c/Program\ Files/Zabbix\ Agent/scripts/

kaplunaleks commented 3 years ago

ls /c/Program\ Files/Zabbix\ Agent/scripts/

image

Мне кажется я знаю почему не находит: /c/Program Files/Zabbix Agent/scripts/1c_common_module.sh

так путь работать не будет, нужно что бы в пути с пробелами был обратный слеш: /c/Program\ Files/Zabbix\ Agent/scripts/1c_common_module.sh

Сейчас прописал путь до 1c_common_module.sh руками, дошел до ring и там тоже упал потому что идет по пути /etc/1C/1CE/ring-commands.cfg

Поправил путь к ring-commands.cfg дальше тоже начинаются ошибки при формировании пути image

slothfk commented 3 years ago

Какой-то странный набор файлов, вы его откуда взяли? Скачайте последние версии из данной репы!

kaplunaleks commented 3 years ago

Какой-то странный набор файлов, вы его откуда взяли? Скачайте последние версии из данной репы!

Это список файлов из последнего релиза image

Я просто сюда закинул еще файлик для планировщика image

slothfk commented 3 years ago

Не берите релиз, берите свежее, что есть ... В релизе не было поддержки вин еще

sirbusby commented 3 years ago

Это не последняя версия. Это от апреля 20-го года. Вот актуальная - https://github.com/slothfk/1c_zabbix_template_ce/archive/refs/heads/master.zip Алексей, а может в описании шаблона версию вставлять? Вот тут? изображение

slothfk commented 3 years ago

Алексей, а может в описании шаблона версию вставлять? Вот тут?

Пока с версионностью туго ... Подумаю как быть

XmakcX commented 3 years ago

@slothfk Алексей, подскажите пожалуйста, откуда подтягивается общее число установленных лицензий или необходимо самостоятельно прописать, тогда где это можно прописать? Еще вы говорили про эту строчку, что она значит? image

slothfk commented 3 years ago

откуда подтягивается общее число установленных лицензий

оно берется из найденных ring файлов программных лицензий

Еще вы говорили про эту строчку, что она значит?

что значит что именно? Первая строка - это отладочная информация, вторая: 8 - количество найденных файлов лицензий, 165 - суммарное число клиентов, покрываемое найденными лицензиями

slothfk commented 3 years ago

Коллеги, давайте все же для отдельных вопросов создавать отдельные темы, а то задачу про документацию "захламили" уже совершенно разнообразными вопросами ;)

Tiotimolin commented 1 year ago
  1. Добавил 1c_license_server.sh в планировщик для запуска раз в час

Добрый день. А можно подробнее о добавлении в планировщик? Что-то не выходит (

Mogilevliftmach commented 1 year ago

Запускаю мониторинг на Winserver 2019. Есть ряд ошибок `Preprocessing failed for: Character "\" is not allowed

  1. Failed: cannot perform regular expression "rphost: (\d+)" match for value of type "none": cannot convert value to string`

изображение

Mogilevliftmach commented 1 year ago

Так же выполнение скрипта заканчивается ошибкой `c:\zabbix\scripts>bash -x 1c_ls_license_info.sh ++ nice -n 19 /c/zabbix/scripts/1c_license_server.sh info

slothfk commented 1 year ago

Так же выполнение скрипта заканчивается ошибкой `c:\zabbix\scripts>bash -x 1c_ls_license_info.sh ++ nice -n 19 /c/zabbix/scripts/1c_license_server.sh info

* /c/zabbix/zabbix_sender.exe -c /c/zabbix/zabbix_agent2.conf -k 1c.ls.licenses -o 1:100
  zabbix_sender.exe [6092]: .\zabbix_agent2.d\plugins.d: [2] No such file or directory`

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