Cosmit Posted November 4, 2016 Share Posted November 4, 2016 Установил Nagios и nagios-plugins Сделав nagios3 -v /opt/etc/nagios/nagios.cfg Все Ок nagios3 -d /opt/etc/nagios/nagios.cfg Deamon запустился, Nagiostat показивает инфо. Какаой WEB сервер c поддержкой cgi порекомендуете для Nagios ??? Zyxel Keenetic II Linux Keenetic 2.6.22.15 #1 Mon Oct 24 20:28:25 MSK 2016 mips GNU/Linux Версия NDMS v2.06(AAFG.8)C1 Quote Link to comment Share on other sites More sharing options...
TheBB Posted November 19, 2016 Share Posted November 19, 2016 (edited) giga2 2.08 entware-3x не будем оригинальничать и поставим nginx ))) (php7, perl и два пакета, которых нет в репозитории (приложены к посту)) поиск по "web-сервер" выдаёт неск. ссылок, выбираем и ставим по аналогии Скрытый текст файл приведён полностью, редактируем под свои нужды самостоятельно user nobody; worker_processes 1; #error_log /opt/var/log/nginx/error.log; #error_log /opt/var/log/nginx/error.log notice; #error_log /opt/var/log/nginx/error.log info; pid /opt/var/run/nginx.pid; events { worker_connections 1024; } http { include mime.types; default_type application/octet-stream; index index.php index.html index.htm; sendfile on; keepalive_timeout 65; gzip on; server { listen 88; root /opt/share/www; location ~ [^/]\.php(/|$) { fastcgi_split_path_info ^(.+?\.php)(/.*)$; if (!-f $document_root$fastcgi_script_name) { return 404; } root /opt/share/www; fastcgi_pass unix:/opt/var/run/php7-fcgi.sock; fastcgi_index index.php; include fastcgi_params; } location ~ ^/nagios/cgi-bin/.*\.cgi$ { gzip off; root /opt/share/www; fastcgi_pass unix:/opt/var/run/fcgiwrap.sock; include fastcgi_params; } } } подразумевается, что nagios (со всем содержимым) помещён по следующему пути: /opt/share/www/nagios *.cgi скопированы/перемещены из /opt/sbin в /opt/share/www/nagios/cgi-bin/ где-нибудь (в примере это - /opt/etc/nginx/) создать файл fcgiwrap, со следующим содержимым Скрытый текст файл приведён полностью (добавлено изменение прав) #!/opt/bin/perl use strict; use warnings FATAL => qw( all ); use IO::Socket::UNIX; my $bin_path = '/opt/sbin/fcgiwrap'; my $socket_path = $ARGV[0] || '/opt/var/run/fcgiwrap.sock'; my $num_children = $ARGV[1] || 1; close STDIN; unlink $socket_path; my $socket = IO::Socket::UNIX->new( Local => $socket_path, Listen => 100, ); chmod 0777, $socket_path; die "Cannot create socket at $socket_path: $!\n" unless $socket; for (1 .. $num_children) { my $pid = fork; die "Cannot fork: $!" unless defined $pid; next if $pid; exec $bin_path; die "Failed to exec $bin_path: $!\n"; } создадим скрипт автозапуска Скрытый текст #!/opt/bin/sh ENABLED=yes PROCS=perl ARGS="/opt/etc/nginx/fcgiwrap" PREARGS="" DESC=$PROCS PATH=/opt/sbin:/opt/bin:/opt/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin . /opt/etc/init.d/rc.func не забываем сделать его исполняемым chmod +x /opt/etc/init.d/S99fcgiwrap в связи с переходом на php7 ловим ошибки устаревших функций ))) (для nagios подправить 2-а файла) 1 /opt/share/www/nagios/includes/rss/rss_cache.inc найти `function RSSCache` и заменить на `function __construct` 2 /opt/share/www/nagios/includes/rss/rss_parse.inc найти `function MagpieRSS` и заменить на `function __construct` настраиваем и запускаем Скрытый текст либа для врапера fcgi_2.4.0-1_mipsel-3x.ipk и врапер fcgiwrap_1.1.0-1_mipsel-3x.ipk added chmod сокет создаётся с правами 755 и создаёт "проблемы доступа", для "исправления" ситуации, надо добавить в файл fcgiwrap строку my $socket = IO::Socket::UNIX->new( Local => $socket_path, Listen => 100, ); chmod 0777, $socket_path; ### <-- задание прав die "Cannot create socket at $socket_path: $!\n" unless $socket; Edited November 29, 2016 by TheBB added chmod 1 Quote Link to comment Share on other sites More sharing options...
Cosmit Posted November 20, 2016 Author Share Posted November 20, 2016 (edited) TheBB Большое спасибо - очень помог ваш ответ Я также от себя добавлю инструкцию Nagios on Lighttpd opkg install nagios nagios-plugins потом в /opt/share/www - переименовуем в /opt/share/www/nagios opkg install ext-ui-lighttpd потом правим конфиг /opt/etc/lighttpd/lighttpd.conf Spoiler server.modules = ( "mod_access", "mod_accesslog", "mod_alias", "mod_auth", "mod_cgi", "mod_fastcgi", "mod_rewrite", "mod_redirect" ) server.document-root = "/opt/share/www" server.upload-dirs = ( "/opt/tmp" ) server.errorlog = "/opt/var/log/lighttpd/error.log" server.pid-file = "/opt/var/run/lighttpd.pid" #server.username = "root" #server.groupname = "root" index-file.names = ( "index.php", "index.html", "index.htm", "default.htm", "index.lighttpd.html" ) static-file.exclude-extensions = ( ".php", ".pl", ".fcgi" ) ### Options that are useful but not always necessary: #server.chroot = "/" server.port = 8765 #server.bind = "localhost" #server.tag = "lighttpd" #server.errorlog-use-syslog = "enable" server.network-backend = "write" ### Use IPv6 if available #include_shell "/opt/share/lighttpd/use-ipv6.pl" #dir-listing.encoding = "utf-8" #server.dir-listing = "enable" include "/opt/etc/lighttpd/mime.conf" include_shell "cat /opt/etc/lighttpd/conf.d/*.conf" $HTTP["url"] =~ "\.pdf$" { server.range-requests = "disable" } $HTTP["url"] =~ "nagios" { alias.url += ( "/nagios/cgi-bin" => "/opt/sbin", "/nagios" => "/opt/share/www/nagios" ) $HTTP["url"] =~ "^/nagios/cgi-bin" { cgi.assign = ( "" => "" ) } auth.backend = "plain" auth.backend.plain.userfile = "/opt/etc/lighttpd/lig_user" auth.require = ( "/nagios" => ( "method" => "basic", "realm" => "nagios", "require" => "user=root" ) ) } #debug.log-request-handling = "enable" конфиг /opt/etc/lighttpd/lig_user - это пользователь и пароль Spoiler root:zyxel конфиг /opt/etc/nagios/cgi.cfg - заменяем везде nagiosadmin на root скрип автозапуска Nagios /opt/etc/init.d/S82nagios Spoiler #!/bin/sh ENABLED=yes PROCS=nagios ARGS="-d /opt/etc/nagios/nagios.cfg" PREARGS="" DESC=$PROCS PATH=/opt/sbin:/opt/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin . /opt/etc/init.d/rc.func Проверка конфигов nagios -v /opt/etc/nagios/nagios.cfg lighttpd -f /opt/etc/lighttpd/lighttpd.conf -t Edited November 20, 2016 by Cosmit 1 Quote Link to comment Share on other sites More sharing options...
Cosmit Posted November 20, 2016 Author Share Posted November 20, 2016 check_ping 8.8.8.8 -w 5000,100% -c 5000,100% /bin/ping -w 30 -c 5 8.8.8.8 CRITICAL - Could not interpret output from ping command Не работает команда check_ping, как подправить ??? или надо перекомпелировать nagios-plugins ??? 1 Quote Link to comment Share on other sites More sharing options...
TheBB Posted November 20, 2016 Share Posted November 20, 2016 (edited) да, надо пересобирать пакет, правка конфига (указание правильного пути) ничего не даёт. и... в свете отказа owrt от использования php5, будем, постепенно, переходить на php7. для ext-ui-* это - ext-ui-nginx-7 || ext-ui-lighttpd-7 added nginx был выбран потому, что: a) уже стоял (для "прогона" wordpress) б) не имел решения "из коробки" с lighttpd (да и "индейцем" (apache)) всё просто (установку модулей и правку конфигов никто не отменял )))), а для для nginx, на сайте debian и сайте сервера, предложено использовать fcgiwrap Edited November 20, 2016 by TheBB added 1 Quote Link to comment Share on other sites More sharing options...
Cosmit Posted November 20, 2016 Author Share Posted November 20, 2016 TheBB Про php7 - полностью согласен. Где взять исходники для компиляции, где почитать про сборку пакетов??? По поводу check_ping - может проще сделать жёсткую ссылку в каталог /bin утилиты ping при сборке прошивки разработчиками ?? Quote Link to comment Share on other sites More sharing options...
zyxmon Posted November 20, 2016 Share Posted November 20, 2016 1 час назад, Cosmit сказал: Где взять исходники для компиляции, где почитать про сборку пакетов??? Создайте отдельную тему с этим вопросом. 1 Quote Link to comment Share on other sites More sharing options...
gvan Posted November 22, 2016 Share Posted November 22, 2016 22 минуты назад, Cosmit сказал: Ещё мона конешно добавить скипт запуска Nagios в /opt/etc/init.d/ Еще бы добавить информацию по первичной настройке, показать на примерах, что в итоге мы можем получить и после этого вынести статью в каталог готовых решений. Графики, насколько я понимаю, также можно строить на самом entware? Quote Link to comment Share on other sites More sharing options...
TheBB Posted November 22, 2016 Share Posted November 22, 2016 28 минут назад, gvan сказал: Еще бы добавить информацию по первичной настройке... сборка пакетов и настройка пакетов - разные темы. вопросы по настройке задавайте здесь. 27 минут назад, gvan сказал: ... Графики, насколько я понимаю, также можно строить на самом entware? наверное, можно... поинтересуемся у @Cosmit ))) пакет графики рисует? Скрытый текст Quote Link to comment Share on other sites More sharing options...
Cosmit Posted November 22, 2016 Author Share Posted November 22, 2016 (edited) @TheBB В пакете отсудствуют файлы statusmap.cgi - строит карту trends.cgi - графики histogram.cgi - гистораммы Если знать где лежать исходники и куда их положить для компиляции то могу пересобрать Edited November 22, 2016 by Cosmit Quote Link to comment Share on other sites More sharing options...
Cosmit Posted December 6, 2017 Author Share Posted December 6, 2017 (edited) в связи с переходом на php 7.0 в файле .../share/www/nagios/includes/rss/rss_parse.inc заменить строку 153 list($ns, $el) = split( ':', $element, 2); на 153 list($ns, $el) = explode( ':', $element, 2); Edited December 6, 2017 by Cosmit Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.