NetXMS Support Forum

Russian Support => Общие вопросы => Topic started by: MLK on April 09, 2014, 07:13:33 PM

Title: Веб-клиент не видит сервера, сервер не видит агента…
Post by: MLK on April 09, 2014, 07:13:33 PM
Все здравствуйте!
По работе понадобилось мониторить сеть, посмотрел скриншоты и возможности нескольких систем, NX понравилась больше всех, но, как всегда, путь нуба тернист ;)
Мой сервант: # # uname -a
Linux crow 3.2.0-4-686-pae #1 SMP Debian 3.2.54-2 i686 GNU/Linux
Пробовал поставить deb-пакеты — не пошло, ну, да и ладно. Скачал исходники, скомпилил как сумел, поставил, запускаю: # nxagentd -v
NetXMS Core Agent Version 1.2.13 Build 7864
# nxagentd -d -p /var/run/netxms/nxagentd.pid
# netxmsd -v
NetXMS Server Version 1.2.13 Build 7864
# netxmsd -d -e -p /var/run/netxms/netxmsd.pid -D 6
Кстати, пока игрался с параметрами, обнаружил, что сервер игнорит параметр -p и все равно кладет пидфайл в /var/run: # ls -lA /var/run/netxms*
-rw-r--r-- 1 root   root  4 Апр  9 19:32 /var/run/netxmsd.pid

/var/run/netxms:
итого 4
-rw-r--r-- 1 root root 4 Апр  9 19:32 nxagentd.pid
Но это некритично, в стартовом скрипте я это решил. Проблема началась, когда веб-клиент отказался подключаться к серверу (см. аттач).
Полез в логи искать, почему до сервера не достучаться, а там выясняется, что сервер сам до агента достучаться не может: [09-Apr-2014 19:54:05.473] [DEBUG] Node 100 "crow" queued for status poll
[09-Apr-2014 19:54:05.473] [DEBUG] Starting status poll for node crow (ID: 100)
[09-Apr-2014 19:54:05.473] [DEBUG] StatusPoll(crow): checking agent
[09-Apr-2014 19:54:35.493] [DEBUG] StatusPoll(crow): agent unreachable, error=910, socketError=115
[09-Apr-2014 19:54:35.493] [DEBUG] StatusPoll(crow): bAllDown=false, dynFlags=0x00001009
[09-Apr-2014 19:54:43.502] [DEBUG] StatusPoll(crow [100]): unable to get system uptime
[09-Apr-2014 19:54:43.502] [DEBUG] StatusPoll(crow [100]): unable to get agent uptime
[09-Apr-2014 19:54:43.502] [DEBUG] Finished status poll for node crow (ID: 100)
Эх! Как говорится, рядом локоть, да не укусишь вот он, NX, да фиг запустишь :(
Люди добрые, помогите нубу безграмотному, кто может! Подскажите, куда копать! И, если подобные вопросы уже были затронуты, прошу не бить, а дать ссылку. Я честно пробовал искать, да не нашел ничего  :-[
Всем спасибо за внимание!
Title: Re: Веб-клиент не видит сервера, сервер не видит агента…
Post by: Victor Kirhenshtein on April 09, 2014, 07:21:48 PM
Так на всякий случай - а firewall не блокирует соединения? Судя по таймауту при коннекте к агенту (30 секунд) - очень похоже...
Title: Re: Веб-клиент не видит сервера, сервер не видит агента…
Post by: MLK on April 09, 2014, 07:27:23 PM
Quote from: Victor Kirhenshtein on April 09, 2014, 07:21:48 PM
Так на всякий случай - а firewall не блокирует соединения? Судя по таймауту при коннекте к агенту (30 секунд) - очень похоже...
По идее не должен — они все на одной машине.
Title: Re: Веб-клиент не видит сервера, сервер не видит агента…
Post by: Victor Kirhenshtein on April 09, 2014, 07:32:04 PM
Если оба процесса (netxmsd и nxagentd) запущены - попробуйте:

1. telnet 127.0.0.1 4700 - должен быть коннект

2. telnet внешний IP сервера 4700 - должен быть коннект

3. telnet 127.0.0.1 4701 - должен быть коннект

4. nxget 127.0.0.1 Agent.Version - должен дать версию агента

5. nxalarm -u admin -P netxms 127.0.0.1 list - должен отработать без ошибок
Title: Re: Веб-клиент не видит сервера, сервер не видит агента…
Post by: andrey--k on April 09, 2014, 08:37:33 PM
Quote from: MLK on April 09, 2014, 07:13:33 PM
... прошу не бить, а дать ссылку.....
Тут на коленке инструкцию делал...
Может поможет...
http://wiki.netxms.org/wiki/From_src
Title: Re: Веб-клиент не видит сервера, сервер не видит агента…
Post by: kozlov_ao on April 09, 2014, 09:16:37 PM
Connection refused говорит о том, что коннект отстреливается. Порт не доступен. Проверяй, запущен ли сервер и слушается ли порт 4701 (4700 - порт агента)

ps:
QuoteЛюди добрые, помогите нубу безграмотному, кто может
кончай заниматься самоизбиением... легче не станет ))
Title: Re: Веб-клиент не видит сервера, сервер не видит агента…
Post by: andrey--k on April 09, 2014, 11:09:51 PM
Quote from: kozlov_ao on April 09, 2014, 09:16:37 PM
... запущен ли сервер и слушается ли порт 4701 (4700 - порт агента)

netstat -ant | grep 470
Title: Спасибо всем, решено!
Post by: MLK on April 10, 2014, 03:38:21 PM
Quote from: andrey--k on April 09, 2014, 08:37:33 PM
Тут на коленке инструкцию делал...
Может поможет...
http://wiki.netxms.org/wiki/From_src
Собирал из исходников отсюда: https://www.netxms.org/download/netxms-1.2.13.tar.gz
Но за ссылочку спасибо, буду иметь в виду и такой вариант.

Quote from: kozlov_ao on April 09, 2014, 09:16:37 PM
Connection refused говорит о том, что коннект отстреливается. Порт не доступен. Проверяй, запущен ли сервер и слушается ли порт 4701 (4700 - порт агента)
Quote from: andrey--k on April 09, 2014, 11:09:51 PM
netstat -ant | grep 470
# netstat -napt | grep n
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 127.0.0.1:21784         0.0.0.0:*               LISTEN      3228/netxmsd
tcp        0      0 0.0.0.0:4700            0.0.0.0:*               LISTEN      3193/nxagentd
tcp        0      0 0.0.0.0:4701            0.0.0.0:*               LISTEN      3228/netxmsd
tcp        0      0 0.0.0.0:4747            0.0.0.0:*               LISTEN      3228/netxmsd


Quote from: Victor Kirhenshtein on April 09, 2014, 07:32:04 PM
Если оба процесса (netxmsd и nxagentd) запущены - попробуйте:
# telnet 127.0.0.1 4700
Trying 127.0.0.1...
telnet: Unable to connect to remote host: Connection refused
# telnet 127.0.0.1 4701
Trying 127.0.0.1...
telnet: Unable to connect to remote host: Connection refused
# nxget 127.0.0.1 Agent.Version
Cannot establish connection with agent 127.0.0.1
910: Connect failed

nxalarm у меня почему-то не нашелся :(
И тут я понял, что Вы были правы с первой попытки: это фаервол их рубил  :-[ ::)
Открыл порты 4700,4701,4747,21784 и УРА! Все всех увидели! Спасибо огромное!

А с pidfile'ом тоже есть такое же простое и очевидное опытному глазу решение?

И, чтоб два раза не бегать: у меня получилось запустить агента из-под аккаунта daemon, а сервер тоже так можно или лучше не экспериментировать?  :-\

Quote from: kozlov_ao on April 09, 2014, 09:16:37 PM
кончай заниматься самоизбиением... легче не станет ))
Это не самобичевание, а всего лишь самокритичный взгляд. Проблема-то правда была нубская.
Всем большое спасибо!
Title: Re: Веб-клиент не видит сервера, сервер не видит агента…
Post by: Victor Kirhenshtein on April 10, 2014, 04:20:53 PM
С pid файлом это баг, в 1.2.14 будет исправлен.
Title: Re: Веб-клиент не видит сервера, сервер не видит агента…
Post by: MLK on April 10, 2014, 04:22:42 PM
Quote from: Victor Kirhenshtein on April 10, 2014, 04:20:53 PM
С pid файлом это баг, в 1.2.14 будет исправлен.
Понятно, спасибо. А с запуском сервера из-под демона? Стоит пробовать или пусть так из-под рута и работает?
Title: Re: Веб-клиент не видит сервера, сервер не видит агента…
Post by: Victor Kirhenshtein on April 10, 2014, 04:35:16 PM
В принципе все будет работать, кроме ping'ов - для ICMP нужны raw сокеты, а они доступны только руту. Вроде как еще можно выставить CAP_NET_RAW для бинарника через setcap, но я сам никогда не пробовал.
Title: Re: Веб-клиент не видит сервера, сервер не видит агента…
Post by: MLK on April 10, 2014, 04:36:49 PM
Понятно. Тогда ладно, пусть пока будет так. Еще раз огромное спасибо!  ;)