Ad Widget

Collapse

Не выполняется пользовательский скрипт на агенте при Авторегистрации

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • vania01
    Junior Member
    • Feb 2019
    • 16

    #1

    Не выполняется пользовательский скрипт на агенте при Авторегистрации

    Привет всем.
    Хочу чтоб при авторегистрации выполнялся скрипт на клиенте. В разделе Операции Авторегистрации выставил такие настройки:
    Click image for larger version

Name:	Screenshot_1.png
Views:	166
Size:	33.0 KB
ID:	374384

    В параметрах агента выставил
    EnableRemoteCommands=1
    UnsafeUserParameters=1

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



  • sadman
    Senior Member
    • Dec 2010
    • 1611

    #2
    Я бы попробовал cmd.exe /c c:\test.bat

    Comment

    • vania01
      Junior Member
      • Feb 2019
      • 16

      #3
      Пробовал и так и с полным путем до cmd
      Как тут в примере https://www.zabbix.com/documentation...remote_command.

      Так главное если по событию триггера подобный запуск команд делать то все отрабатывает простым путем c:\test.bat



      Comment

      • sadman
        Senior Member
        • Dec 2010
        • 1611

        #4
        А что в логах агента?

        Comment

        • vania01
          Junior Member
          • Feb 2019
          • 16

          #5
          В логах чисто.

          параметр в конфиге LogRemoteCommands=1

          Comment

          • Semiadmin
            Senior Member
            • Oct 2014
            • 1625

            #6
            Может, проблема в том, что хост добавился, а configuration cache еще не обновился, и сервер про новый хост как бы и не знает, потому и не отправляет команду? А если через прокси - то прокси новую конфигурацию еще не получил?

            Comment

            • sadman
              Senior Member
              • Dec 2010
              • 1611

              #7
              Originally posted by vania01
              В логах чисто.

              параметр в конфиге LogRemoteCommands=1
              В логах не может быть чисто... Особенно на уровнях 4 и 5. Всё равно будет написано - было ли требование со стороны сервера выполнить команду, как она отстрелилась в шелл, что вернула.

              Comment

              • vania01
                Junior Member
                • Feb 2019
                • 16

                #8
                Originally posted by Semiadmin
                Может, проблема в том, что хост добавился, а configuration cache еще не обновился, и сервер про новый хост как бы и не знает, потому и не отправляет команду? А если через прокси - то прокси новую конфигурацию еще не получил?
                Вот спасибо за наводку.
                В конфиге сервера выставил CacheUpdateFrequency=1 и стало отрабатывать.


                Comment

                • Semiadmin
                  Senior Member
                  • Oct 2014
                  • 1625

                  #9
                  Теперь главное сервер этой настройкой не положить....

                  Comment

                  • vania01
                    Junior Member
                    • Feb 2019
                    • 16

                    #10
                    Originally posted by sadman

                    В логах не может быть чисто... Особенно на уровнях 4 и 5. Всё равно будет написано - было ли требование со стороны сервера выполнить команду, как она отстрелилась в шелл, что вернула.
                    Да как только выставил CacheUpdateFrequency=1 то в логах начал писать что пытается обработать команду.



                    Originally posted by Semiadmin
                    Теперь главное сервер этой настройкой не положить....
                    Это да проблема.
                    Как то можно вручную zabbix дергать на обновление этого кеша?
                    Или как то задержку выставить при в Действии перед запуском скрипта.





                    Last edited by vania01; 21-02-2019, 12:22.

                    Comment

                    • Semiadmin
                      Senior Member
                      • Oct 2014
                      • 1625

                      #11
                      zabbix_server -R config_cache_reload

                      Comment

                      • vania01
                        Junior Member
                        • Feb 2019
                        • 16

                        #12
                        Originally posted by Semiadmin
                        zabbix_server -R config_cache_reload
                        Спасибо
                        А чтобы допустим какуюто команду выполнить на самом zabbix сервере через Операции надо какие-то доп настройки на нем делать?


                        Заметил странность,
                        выставил CacheUpdateFrequency=30

                        Вот регистрируется первый комп, скрипт не отработал по понятным причинам.
                        За ним регистрирую второй комп, и на первом! срабатывает скрипт. На втором все тихо и глухо.
                        Запустил команду перезагрузки кеша но тоже без результата.
                        соответственно добавление третьего компа пихает отработку на втором

                        Last edited by vania01; 21-02-2019, 13:08.

                        Comment

                        • Semiadmin
                          Senior Member
                          • Oct 2014
                          • 1625

                          #13
                          По идее, надо бы настроить 2 удаленных команды, сначала на сервере - перезагрузка кэша, потом на агенте хоста. Но совершенно непонятно, как в действии задать порядок их выполнения. И задержку там тоже не поставить.
                          В качестве костыля - можно добавить в шаблон некий триггер, который сработает после того, как начнут собираться данные, и повесить действие на него.

                          Comment

                          • vania01
                            Junior Member
                            • Feb 2019
                            • 16

                            #14
                            Originally posted by Semiadmin
                            По идее, надо бы настроить 2 удаленных команды, сначала на сервере - перезагрузка кэша, потом на агенте хоста. Но совершенно непонятно, как в действии задать порядок их выполнения. И задержку там тоже не поставить.
                            В качестве костыля - можно добавить в шаблон некий триггер, который сработает после того, как начнут собираться данные, и повесить действие на него.
                            Да с триггером я уже пробовал, как запасной вариант держу. Если тут будет совсем глухо.

                            Вот пока пытаюсь на самом zabbix скрипт выполнить через эту оснастку. Но не срабатывает.
                            Click image for larger version  Name:	Screenshot_2.png Views:	1 Size:	30.8 KB ID:	374505

                            пробовал тоже через просто через команду
                            echo {HOST.HOST}test_test >> /home/test/1234

                            Тоже тишина файл не создается.
                            все разрешения выставлены в 777

                            В логах сервера ругань на доступ к записи в файл на сервере.

                            ================================================== =

                            Вроде более менее удалось решить
                            запускаю скрипт как на скрине через раздел Zabbix сервер
                            такой командой

                            zabbix_get -s {HOST.IP} -k system.run["c:\test.bat"]

                            CacheUpdateFrequency возвращен в дефолт, все отрабатывает отлично.


                            Всем спасибо за помощь.
                            Last edited by vania01; 21-02-2019, 16:34.

                            Comment

                            Working...