Cacti安装与配置
安装Cacti之前安装系统初始话库文件
yum -y install gcc gcc gcc-c++ autoconf libjpeg libjpeg-devel libpnglibpng-devel freetype freetype-devel libxml2zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-develncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devellibidn libidn-devel openssl openssl-devel openldap openldap-devel nss_ldapopenldap-clients openldap-serversgdgd-devel libxml2-devel pangopango-devel cgil iblibart_lgpl-devel pango-devel*cairo-devel*zlib libpngfreetypelibart_lgpllibart_lgpl-devel libxml* pango*perl-Time-HiRes
安装Cacti的所需LAMP环境设置为开机自起并启动相应的服务
yum -y install httpd httpd-manual mysql mysql-devel mysql-server phpphp-devel php-mysql php-common php-pdo php-gd lm_sensors net-snmp php-snmpnet-snmp-utilsperl-CPAN glibcglibc-common openssl-devel httpdmysql-server perl-DBI perl-DBD-MySQL phpphp-devel php-snmp php-pdophp-gd lm_sensors net-snmp net-snmp-libsnet-snmp-utils net-snmp-devel
chkconfigmysqldon
chkconfighttpdon
chkconfigsnmpdon
servicehttpdstart
servicemysqld start
servicesnmpd start
编写PHP环境测试页验证LAMP环境并测试snmp服务是否正常
[root@cnetos32~]# vi /var/www/html/index.php编写内容如下
<?php
Phpinfo();
?>(保存退出http://IP/index.php出现下图表示LAMP环境搭建成功!)
snmpwalk -v 2c -c public localhost 测试SNMP服务是否工作正常
安装Cacti
安装rrdtool并安装所需软件支持包
Rrdtool安装需要cairo、libxml2、pango库支持,可通过yum安装
[root@cacti~]# yum -y install cairo-devel libxml2-devel pango-devel
[root@cacti~]# tar zxvf rrdtool-1.4.7.tar.tar
[root@cacti~]# cd rrdtool-1.4.7
[[email protected]]# ./configure --prefix=/usr/local
[[email protected]]# make && make install
安装Cacti-0.8.7e
[root@cnetos32wang]#tar zxvf 090815172648.gz -C/var/www/html
[root@cnetos32wang]# cd /var/www/html
[root@cnetos32html]# mv cacti-0.8.7e-cn-utf8/ cacti //将cacti-0.8.7e改名为cacti
[root@localhosthtml]# useradd cactiuser//创建用户
[root@localhosthtml]# chmod -R 777/var/www/html/cacti/ //给cacti目录所有全限
[root@localhosthtml]# chown -R cactiuser.cactiuser /cacti/rra/cacti/log/ //递归修权限
导入数据库的3种方法
第一种如下:(这个实验我用的是第二种方法)
给root数据库用户修改密码mysqladmin-urootpassword ‘123.com’
mysql -uroot//用root用户进入数据库
mysql>create database cactidb default character set utf8; //创建数据库cactidb默认字utf8
Query OK, 1row affected (0.00 sec)
mysql>grant all on *.* to cactiuser@'%' identifiedby 'cactiuser';
Query OK, 0rows affected (0.00 sec)
mysql>flush privileges;//刷新
Query OK, 0rows affected (0.00 sec)
用cactiuser这个用户向cactidb数据库里边导入数据表(看清楚导数据库的目录所在位)
[root@localhosthtml]# mysql -u cactiuser -p cactidb < cacti/cacti.sql
[root@localhosthtml]# mysql -u root
mysql>use cactidb;
Databasechanged
mysql>show tables; 到cactidb数据库查看表里边有以下数据就代表导入成功了!
+---------------------------+
| Tables_in_cactidb|
+---------------------------+
| cdef|
| cdef_items|
| colors|
| data_input|
| data_input_data |
| data_input_fields|
| data_local|
| data_template|
| data_template_data|
| data_template_data_rra|
| data_template_rrd|
| graph_local|
| graph_template_input|
| graph_template_input_defs |
| graph_templates|
| graph_templates_gprint|
| graph_templates_graph|
| graph_templates_item|
| graph_tree|
| graph_tree_items|
| host|
| host_graph|
| host_snmp_cache|
| host_snmp_query|
| host_template|
| host_template_graph|
| host_template_snmp_query|
| poller|
| poller_command|
| poller_item|
| poller_output|
| poller_reindex|
| poller_time|
| rra|
| rra_cf|
| settings|
| settings_graphs|
| settings_tree|
| snmp_query|
| snmp_query_graph|
| snmp_query_graph_rrd|
| snmp_query_graph_rrd_sv|
|snmp_query_graph_sv|
| user_auth|
| user_auth_perms|
| user_auth_realm|
| user_log|
version|
+---------------------------+
48 rows in set (0.00 sec)
第二种方法:
[root@cnetos32wang]#mysql -u root -p
:输入密码
mysql>create database cactidb default character set utf8;
Query OK, 1row affected (0.00 sec)
mysql>grant all on cactidb.* to cactiuser@localhost identified by 'cactiuser';
Query OK, 0rows affected (0.01 sec)
mysql>flush privileges;
Query OK, 0rows affected (0.00 sec)
[root@localhosthtml]# Mysql �Cu cactuser �Cp cacti < /var/www/html/cacti/cacti.sql
第三种方法:
mysqladmincreatecactidb
mysqlcactidb < /var/www/html/cacti/cacti.sql
[root@node1cacti]# mysql -e "GRANT ALL ON cactidb.* TO cactiuser@localhost IDENTIFIEDBY ‘cactiuser’
[root@node1cacti]# mysqladmin flush-privileges
修改配置文件连接数据库
[root@cnetos32~]# vi /var/www/html/cacti/include/config.php编辑如下内容
$database_type= "mysql";
$database_default= "cactidb"; //这个数据库的名字是你在上面创建的是什么这就写什
$database_hostname= "localhost"; //本地
$database_username= "cactiuser"; //这是你在上面创建的数据库的名字是什么就是什
$database_password= "cactiuser";//这是cactiuser用户的密码
$database_port= "3306";//数据库的默认端口号
$database_ssl= false;
$config['url_path']= "/Cacti";//这一行非常重要设置cacti程序访问路径的
安装plugin插件
Cacti中Pluginplugin-0.8.7e-PA-v2.6-cn-utf8.diff插件的安装方法
1、mv 090818213852.gzcacti-plugin-0.8.7e-PA-v2.5-cn-utf8.diff.gz
(这个是将下载下来的压缩包改名)
2、gunzipcacti-plugin-0.8.7e-PA-v2.5-cn-utf8.diff.gz
(将这个文件进行解压)
3、cpcacti-plugin-0.8.7e-PA-v2.5-cn-utf8.diff /var/www/html/cacti/
(将解压后的文件移到/var/www/html/cacti/下)
4、cd /var/www/html/cacti/
(到cacti目录下进行打补丁目录必须在cacti目录下不能错)
(6)打补丁将pa.sql导入cactidb数据库
patch -p1 -N<cacti-plugin-0.8.7e-PA-v2.5-cn-utf8.diff
(打补丁的命令如5所示补丁成功如下否则不对)
mysql -u cactiuser -p cactiusercactidb < pa.sql (我这里是在pa.sql所在的目录所以没有
绝对路径如果你不再pa.sql的所在目录就需要加上路径)
如果数据库导入成功会显示如下:
(7)修改配置文件内容
如果想通过ip/cacti来访问我们需要修改两个地方如下图:
[root@centos-32 ~]# vi/var/www/html/cacti/include/config.php
[root@centos-32 ~]# vi/var/www/html/cacti/include/global.php
修改完这两个地方然后重新启动httpd服务关闭防火墙使用浏览器输入http://IP/install会看到安装向导如下:
点击完成会看到cacti的登陆界面默认的用户名、密码全是admin
登录以后页面设置控制面板―用户管理―admin点击完admin后会出现下面的图
然后给plugin Management窗体顶端
画上勾然后在左侧就会看见多了一个选项是插件管理这个选项如下图
窗体底端
我想在这特别的说一下这也是我犯得一个错误,我搭建的cacti的版本是0.8.7e而且还是中文版的所以在你安装plugin这个插件的时候你要对应的下载你的版本如果你是中文的下载就下载中文版本的插件plugins是英文的就下载plugins英文版的,下载的plugins必须要和cacti的版本一样例如cacti0.8.7e下载plugins也得下载0.8.7eplugins版本的否则会报错,这次我搭建plugins就因为cacti是中文版本的而我下载的plugins是英文版本的所有操作做完以后当用http://IP/cacti访问cacti时页面一片空白什么都没有这就是因为安装plugins的版本不对造成的。如果你是中文的cacti,就执行下面的命令(需要下载)
patch -p1 -N <cacti-plugin-0.8.7e-PA-v2.6-cn-utf8.diff
如果你是英文的,就下载原来的
patch -p1 -N <cacti-plugin-0.8.7e-PA-v2.6.diff
viminclude/global.php
$config['url_path'] =‘/cacti/’;
进入"用户管理"->点admin->区域权限->PluginManagement
其它的插件下载后放到plugin目录就可以了。
(http://blog.chinaunix.net/uid-220350-id-149224.html这个是0.8.7eplugin中文版的下载地址下载完后需要用mv来进行改名)。
(8) Cacti中添加settings插件
tar zxvf settings-v0.71-1.tgz
mv settings /var/www/html/cacti/plugins
vi /var/www/html/cacti/include/config.php 在这个配置文件中添加下面一行内容
$plugins[] = 'settings';
到cacti web 界面点击控制面板---插件管理----安装----启用
ervice httpd restart启动httpd服务在点击控制面板----设置-----我们会发现多个mail/dns
项卡。
(9) Cacti中monitor的安装:
tar zxvf monitor-v1.3-1.tgz
mv monitor /var/www/html/cacti/plugins/
cd /var/www/html/cacti/plugins/monitor/
mysql -u cactiuser -p cactidb < monitor.sql
vi /var/www/html/cacti/include/config.php
添加这行内容$plugins[] =‘monitor’保存退出
登录cacti界面---控制面板----插件管理-----安装启用
(10)Cacti中thold的安装:
tar zxvf thold-v0.5.0.tgz
mv thold /var/www/html/cacti/plugins/
登录cacti界面---控制面板----插件管理-----安装启用我们安装的插件如下.
(11)添加计划任务启动crond服务。
crontab-e
*/5* * * * /usr/bin/php /var/www/html/cacti/poller.php
servicecrond restart
(12)启动mysql、httpd服务关闭防火墙
Servicemysqld restartservice httpdrestartserviceiptables stop
(13)浏览器访问cacti
http://IP/cacti界面如下:
Cacti到此安装完毕了!
Nagios安装与配置
Nagios安装部署步骤
(1)安装基础支持套件和添加用户
yum -y install gcc glibc-common gd gd-develglibc (这个我在这提一下因为在安装cacti时我已经安装过了这只是提一下)
useraddnagios//-M不要自动建立用户的登入目录
usermod -a -G nagios nagios//将nagios加入到nagios组
usermod -a -G nagios apache//将apache加入到nagios组
mkdir -p /usr/local/nagios//创建nagios目录
chmod �CR 755 /usr/local/nagios/ //将nagios目录权限设置为755
chown -R nagios:nagios /usr/local/nagios//将nagios的目录属组主修改为nagio
(2)编译安装nagios
tarjxvf nagios-cn-3.2.3.tar.bz2//如果是bz2结尾的用jxvf进行解压
cd nagios-cn-3.2.3
./configure --prefix=/usr/local/nagios/
make all
make install//安装nagios 主程序、CGI 和HTML 文件
make install-init//安装nagios 的启动脚本
make install-commandmode//安装外部命令使用的目录,并配置目录权限
make install-config//安装模板配置文件
make install-webconf//安装apache 配置文件,以便能够通过web 页面访问
(3)验证Nagios程序安装是否正确
到/usr/local/nagios是否有以下几个目录如果存在代表成功了!
Bin Nagios 可执行程序所在目录
Etc Nagios 配置文件所在目录
Sbin Nagios CGI 文件所在目录,也就是执行外部命令所需文件所在的目录
shareNagios网页文件所在的目录
libexec Nagios 外部插件所在目录
var Nagios 日志文件、lock 等文件所在的目录
(4)将Nagios添加系统服务并设置为开机自动启动
chkconfig --add nagios
chkconfig nagios on
(5)修改Apache配置文件以及CGI.cfg配置文件(这里我提下但是次试验我没有这步)
vi /etc/httpd/conf/httpd.conf末行添加:
DirectoryIndex index.phpindex.htmlindex.html.var
ScriptAlias/nagios/cgi-bin"/usr/local/nagios/sbin"
<Directory"/usr/local/nagios/sbin">
AuthType Basic
Options ExecCGI
AllowOverride None
Order allow,deny
Allow from all
AuthName "Nagions Access"
AuthUserFile/usr/local/nagios/etc/htpasswd
Require valid-user
</Directory>
Alias /nagios "/usr/local/nagios/share"
<Directory"/usr/local/nagios/share">
AuthType Basic
Options None
AllowOverride None
Order allow,deny
Allow from all
AuthName "Nagios Access"
AuthUserFile/usr/local/nagios/etc/htpasswd
Require valid-user
</Directory>
(如果安装nagios时,执行过make install-webcof命令,此步骤可以省略!)
创建认证用户:
htpasswd -c/usr/local/nagios/etc/htpasswd.users nagiosadmin
输入密码再次输入密码
此处用户名尽量使用默认nagiosadmin,否则就需要修改cgi.cfg文件中所有关于认证选项的用户.例如你在这里创建的用户是nagios就需要在cgi.cfg中修改如下内容。
vi /usr/local/nagios/etc/cgi.cfg
default_user_name=nagios
authorized_for_all_hosts=nagiosadmin,nagios
authorized_for_all_services=nagiosadmin,nagios
authorized_for_system_commands=nagiosadmin,nagios
authorized_for_all_host_commands=nagiosadmin,nagios
authorized_for_system_information=nagiosadmin,nagios
authorized_for_all_service_commands=nagiosadmin,nagios
authorized_for_configuration_information=nagiosadmin,nagios保存退出!
(6)安装Nagios-Plugins插件
tar zxvf nagios-plugins-1.4.15.tar.gz
cd nagios-plugins-1.4.15
./configure--prefix=/usr/local/nagios
make;make install
(7)安装Nrpe插件
tar zxvf nrpe-2.12.tar.gz
cd nrpe-2.12
./configure --with-nrpe-user=nagios--with-nrpe-group=nagios --with-nagios-user=nagios --with-nagios-group=nagios--enable-command-args --enable-ssl
make all
make install-plugin
(8)检查配置文件启动Nagios和httpd服务访问Nagios
/usr/local/nagios/bin/nagios-v /usr/local/nagios/etc/nagios.cfg
chkconfig httpd on
chkconfig mysqld on
chkconfig nagios on
启动apache: service httpd start
启动mysqld: service mysqldstart
启动nagios: service nagiosstart
http://IP/nagios
Nagios的配置
(1)Nagios的默认配置文件介绍
Nagios 安装完毕后,默认的配置文件在/usr/local/nagios/etc目录下,而所有安装完毕的插件的所在目录是/usr/local/naiogs/libexec下。
(2)Nagios配置文件之间的关系以及nagios主配置文件的介绍
配置文件之间的关系
在nagios的配置过程中涉及到的几个定义有:主机、主机组,服务、服务组,联系人、联系人组,监控时间,监控命令等,从这些定义可以看出,nagios各个配置文件之间是互为关联,彼此引用的。
成功配置出一台nagios监控系统,必须要弄清楚每个配置文件之间依赖与被依赖的关系,最重要的有四点:
第一:定义监控哪些主机、主机组、服务和服务组;
第二:定义这个监控要用什么命令实现;
第三:定义监控的时间段;
第四:定义主机或服务出现问题时要通知的联系人和联系人组
Nagios的主配置文件在cd /usr/local/nagios/etc/下nagios.cfg cgi.cfg resource.cfg
Nagios监控windows配置
(1)在被监控端安装Nsclient
nagios监控windows客户端的方式有通过SNMP、Nsclient、nrpe、本实验我们用的是Nsclient,是通过服务端的Check_nt命令来监控的,而nrpe是通过check_nrpe来监控的5666是nrpe的通信端口, 12489是Check_nt和Nsclient通信的端口号。
http://nsclient.org/nscp/downloads下载地址系统是多少位就下载多少位
安装Nsclient过程:
Nsclient安装完毕了!我们在被监控端查看Nsclient的端口是否存在用netstat �Cna查看如下:12489是Nsclient和Check通信的端口号。
(2)服务通过check_nt命令来测试被监控端
在监控端的/usr/local/nagios/libexec/目录下通过check_nt命令来测试下看是否可以监控到。
./check_nt -H 192.168.10.1 -p 12489 -v CPULOAD -w 80 -c 90 -l5,80,90-H是被监控端的ip地址,-p是被监控端的Nsclient的端口号-w 80%为警告 -c 90%为紧急过去5分钟的平均值。
./check_nt -H 192.168.10.1 -p12489 -v USEDDISKSPACE -w 80 -c 90 -lc
定义的是192.168.10.1这个物理服务器的c盘空间使用情况80为警告90为紧急以上是通过check_nt命令来直接测试的现在我们要要定义了!
(3)定义check_nt命令,定义被监控的主机,定义被监控的主机服务
预备知识:
A.定义check_nt命令
B.定义被监控的主机也就是192.168.10.1
C.定义192.168.10.1这个主机中要监控的服务
A .我们要通过check_nt这个命令来监控首先我们应该先定义这个命令到
vi /usr/local/nagios/etc/objects/commands.cfg添加如下内容:
define command{
command_name check_nt//定义命令的名字
command_line $USER1$/check_nt -H $HOSTADDRESS$ -p 12489 -v $ARG1$ $ARG2$
}
到配置文件的末尾添加-H 主机地址�CP被监控端的Nsclient端口�Cv 传
送参数�Cs是密码刚才我们在安装Nsclient的时候有项设置密码的我们默
的没有设置密码所以不用写如果在那里设置密码了我们在这就需要指定上。
B.定义被监控主机192.168.10.1
vi /usr/local/nagios/etc/objects/windows.cfg配置如下内容:
define host{
usewindows-server//模版名字
host_namewinhost//主机的名字这个可以随意
aliasMy Windows host //主机别名随意
address192.168.10.1//被监控的主机ip地址
}
C.定义192.168.10.1这个主机的一些服务
vi /usr/local/nagios/etc/objects/windows.cfg配置如下内容:
define service{
usegeneric-service //模版名字
host_namewinhost //这个名字必须和定义主机名相
service_descriptionNSClient++Version //版本
check_commandcheck_nt!CLIENTVERSION
}
define service{
usegeneric-service
host_namewinhost
service_descriptionUptime//监控系统运行时间
check_commandcheck_nt!UPTIME
}
define service{
usegeneric-service
host_namewinhost
service_descriptionCPU Load//监控cpu负载
check_commandcheck_nt!CPULOAD!-l 5,80,90
}
define service{
usegeneric-service
host_namewinhost
service_descriptionMemoryUsage//监控主机的内存
check_commandcheck_nt!MEMUSE!-w 80 -c 90
}
define service{
usegeneric-service
host_namewinhost
service_descriptionC:\ DriveSpace //监控C盘使用率
check_commandcheck_nt!USEDDISKSPACE!-l c -w 80 -c 90
}
define service{
usegeneric-service
host_namewinhost
service_descriptionExplorer//监控进程
check_commandcheck_nt!PROCSTATE!-dSHOWALL -l Explorer.exe
}
(3)启动windows.cfg配置文件,并将其添加到nagios.cfg配置文件里边。
vi/usr/local/nagios/etc/nagios.cfg添加如下内容
cfg_file=/usr/local/nagios//etc/objects/windows.cfg
(4)检查nagios的配置文件是否有错误
/usr/local/nagios/bin/nagios-v /usr/local/nagios/etc/nagios.cfg
以上报错是说check_nt这个命令这个文件中有现在是重复了找到原来的那个注释掉或则删掉再次查看就好了!nagios默认搭建完后在web界面有许多本地主机我们要想不让他在前台页面显示以下这是默认的要取消看结果
vi/usr/local/nagios/etc/nagios.cfg注释掉以下一行内容:
#cfg_file=/usr/local/nagios//etc/objects/localhost.cfg保存退出启动nagios服务查看我们监控的192.168.10.1主机的服务如下图:
(5)Nagios通过SNMP来监控windows主机步骤客户端安装SNMP服务
开始-----运行appwiz.cpl-----添加删除程序-----添加删除windows组件
点击开始---运行----输入services.msc----回车,打开服务面板,选择SNMP service---- 右键---属性----选择安全选项卡,添加接受团体名称:只读和读写,根据自己的团体名称填写我这里是eayunnet,IP地址是监控端的ip地址。安装snmp包之前先下载SNMP包(115网盘上有)。
到此为止nagios监控windows主机通过Nsclient配置完成了!
四、Nagios监控linux主机配置
(1) 监控端192.168.10.103被监控端192.168.10.102
Linux监控端通过Check_nrpe方式来和被监控端linux主机nrpe来进行通信默情况
下nrpe监听在5666端口上,被监控端应安装nagios-plugins、nrpe而nrpe的某些
机制依懒与nagios-plugins,启动nrpe服务。服务端默认只安装了nagiosnagios-plugins,
当然了方便之前我已经安装了nrpe如果你之前不安装的话在这里就需要在监控端安装
Nrpe插件了但是在服务端安装nrpe不用启动nrpe服务只要安装就可以了!
(2) 被监控端创建nagios用户设置密码
useradd nagiospasswd nagios
(3) nrpe依懒nagios-plugin插件先安装nagios-plugin插件
yum -y install gd gd-devel*openssl*先安装这些包否则会报错
tar zxvfnagios-plugins-1.4.16.tar.gz
cd nagios-plugins-1.4.16
./configure--with-nagios-user-nagios --with-nagios-group-nagios --prefix=/usr/local/nagios
Make
执行make时提示如下:
安装nagios-plugin时执行make时提示如下:
check_http.c: In function ‘process_arguments’:
check_http.c:312: error: ‘ssl_version’ undeclared (first use in thisfunction)
check_http.c:312: error: (Each undeclared identifier is reportedonly once
check_http.c:312: error: for each function it appears in.)
make[2]: *** [check_http.o] Error 1
make[2]: Leaving directory `/root/nagios-plugins-1.4.16/plugins'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/root/nagios-plugins-1.4.16'
make: *** [all] Error 2
解决办法如下:
根据错误内容能看出是缺少了ssl这么个东西!
yum -y install gd gd-devel *openssl*
make clean 清除掉之前make的残余信息
./configure--with-nagios-user-nagios--with-nagios-group-nagios --prefix=/usr/local/nagios
# make
make install
这一步完成后会在/usr/local/nagios/下生成三个目录include、libexec和share。
修改目录权限
chown nagios.nagios/usr/local/nagios
chown -R nagios.nagios/usr/local/nagios/libexec
(4) 被监控端安装nrpe插件
tar zxvf nrpe-2.12.tar.gz
cd nrpe-2.12
./configure --with-nrpe-user=nagios--with-nrpe-group=nagios --with-nagios-user=nagios --with-nagios-group=nagios--enable-command-args --enable-ssl
make all
make install-plugin
make install-daemon
make install-daemon-config
make install-xinetd(这个可以不安装因为这是一个脚本如果你用的话可以安装这里我用的不是这个脚本所以没安装)
(5) 被监控端配置nrpe
vi /usr/local/nagios/etc/nrpe.cfg
log_facility=daemon//用于帮助记录的日志文件
pid_file=/var/run/nrpe.pid//pid所写的路径默认的就可以
server_address=127.0.0.1//服务监听的地址默认的是127.0.0.1
server_port=5666//nrpe服务的监听端口
nrpe_user=nagios//nagios用户
nrpe_group=nagios//nagios组
allowed_hosts=192.168.10.103//监控端的ip地址
command_timeout=60//命令执行时间
connection_timeout=300//连接超时时间
command[check_users]=/usr/local/nagios/libexec/check_users-w 5 -c 10
//这是被监控端定义的要监控的服务
command[check_load]=/usr/local/nagios/libexec/check_load-w 15,10,5 -c 30,25,20
command[check_hda1]=/usr/local/nagios/libexec/check_disk-w 20% -c 10% -p /dev/hda1
//硬盘的使用率
command[check_zombie_procs]=/usr/local/nagios/libexec/check_procs-w 5 -c 10 -s Z
//僵死的进程数
command[check_total_procs]=/usr/local/nagios/libexec/check_procs-w 150 -c 200
//总进程数
(中括号中的名字是随意的但是不能一样,后面的像check_disk这些都是本地的命令插
件不能乱写的)
启动nrpe服务/usr/local/nagios/bin/nrpe-c /usr/local/nagios/etc/nrpe.cfg -d 启动的守
进程这样启动不能开机自动启动所以做了以下操作。
(6) 开机自动启动nrpe服务的2中脚本编写方法
第一种方法:
vi /etc/init.d/nrped
#!/bin/bash
#chkconfig: 2345 88 12
#description: NRPE DAEMON
NRPE=/usr/local/nagios/bin/nrpe
NRPECONF=/usr/local/nagios/etc/nrpe.cfg
case "$1" in
start)
echo -n "Starting NRPEdaemon...."
$NRPE -c $NRPECONF -d
echo" done."
;;
stop)
echo -n "Starting NRPEdaemon...."
pkill -unagios nrpe
echo" done."
;;
restart)
$0 stop
sleep 2
$0 start
;;
*)
echo "Usage: $0start|stop|restart"
;;
esac
保存退出!!!
第二中脚本的编写方法:
编写这个脚本的前提条件是你在编译安装nrpe时得加上这条命令make install-xinetd
Vi/etc/xinetd.d/nrpe 脚本内容如下:
(6) nrpe脚本权限添加为系统服务开机自启查看监听端口是否是5666
chmod +x/etc/init.d/nrped//给这个脚本执行权限
chkconfig --addnrped//添加nrpe服务
chkconfig �C-level2345 nrpedon//启动2345服务
chkconfig --list nrped//查看启动的服务
service nrpedrestart//启动nrpe服务第一个脚本启动的命令
service xinetd.drestart//启动nrpe服务第二个脚本的启动命令
netstat-tnlp//查看监听的是否是5666端口
客户端配置完毕!!
(7) 监控端安装nrpe
tarzxvf nrpe-2.12.tar.gz
cdnrpe-2.12
./configure--with-nrpe-user=nagios --with-nrpe-group=nagios --with-nagios-user=nagios--with-nagios-group=nagios --enable-command-args --enable-ssl
makeall
makeinstall-plugin
以上步骤执行完以后在/usr/local/nagios/libexec/下面会多出check_nrpe的一个插件我
们用以下命令的方法测试下看能否通必须是在libexec目录下执行这个命令
./check_nrpe -H 192.168.10.102这个是被监控端的ip地址能显示出nrpe的版本号就对
被监控端必须把防火墙关掉负责无法通信出现NRPE版本号就证明监控端和被监控端可以
通信了。
首先定义check_nrpe命令
定义被监控主机
定义被监控主机要监控的服务
将定义主机的配置文件这里定义主机配置文件名字是linhost.cfg添加到nagios.cfg中重新启动nagios服务到web页面查看结果!
我们在监控端定义check_nrpe这个命令
Vi/usr/local/nagios/etc/objects/commands.cfg在最后面添加就可以了!
define command{
command_namecheck_nrpe
command_line$USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$
}
我们监控端定义被监控主机
vi /usr/local/nagios/etc/objects这个目录下我们直接复制
windows.cfg改名为linhost.cfg
vilinhost.cfg
define host{
uselinux-server//模版名字
host_namebeijing//主机名字
aliasMy linux-host//别名
address192.168.10.102//被监控端的ip地址
}
#define hostgroup{
#hostgroup_namewindows-servers ;The name of the hostgroup//这个组的配置文件全部注释掉否则在启动nagios的时候启动不了
#aliasWindows Servers ; Long name of the group
#}
C.我们在监控端定义被监控主机的服务
Vi/usr/local/nagios/etc/objects/linhost.cfg
define service{
usegeneric-service//模版名字
host_namebeijing//主机名字必须和上面的一样
service_descriptionCHECK_USERS//这个可以随意
check_commandcheck_nrpe!check_users
//这个是执行的命令是check_nrpe执行的参数必须和被监控端的
vi/usr/local/nagios/etc/nrpe.cfg这个文件中的中扩号中的名字是什么就在
check_nrpe!后面写什么这千万不能错
}
这个就是被监控端vi/usr/local/nagios/etc/nrpe.cfg这个文件中的中扩号中的名字是什
么就在check_nrpe!后面写什么这千万不能错
command[check_users]=/usr/local/nagios/libexec/check_users-w 5 -c 10
//这是被监控端定义的要监控登录的用户数
command[check_load]=/usr/local/nagios/libexec/check_load-w 15,10,5 -c 30,25,20
//CPU负载
command[check_hda1]=/usr/local/nagios/libexec/check_disk-w 20% -c 10% -p
/dev/hda1 //硬盘的使用率
command[check_zombie_procs]=/usr/local/nagios/libexec/check_procs-w 5 -c 10 -s
Z//僵死的进程数
command[check_total_procs]=/usr/local/nagios/libexec/check_procs-w 150 -c 200
//总进程数
define service{
usegeneric-service
host_namebeijing
service_descriptionload
check_commandcheck_nrpe!check_load
}
define service{
usegeneric-service
host_namebeijing
service_descriptioncheck_hda1磁盘
check_commandcheck_nrpe!check_hda1
}
define service{
usegeneric-service
host_namebeijing
service_descriptioncheck_zombie_procs 僵死进程
check_commandcheck_nrpe!check_zombie_procs
}
define service{
usegeneric-service
host_namebeijing
service_descriptioncheck_total_procs总进程
check_commandcheck_nrpe!check_total_procs
}
服务主机定义完成保存退出!!
将定义好的主机配置文件也就是linhos.cfg加入到nagios.cfg中文件并启动nagios服
web页面查看结果。
vi /usr/local/nagios/etc/nagios.cfg中添加以下内容:
cfg_file=/usr/local/nagios/etc/objects/linhost.cfg这个是定义主机的那个文件名字
检查是否有错误用后面这个命令如果没有错误重新启动nagios服务
/usr/local/nagios/bin/nagios -v/usr/local/nagios/etc/nagios.cfg
service nagios restart
五、Nagios监控交换机端口状态及流量
(1) 安装perl的5个模块
tar zxvfCrypt-DES-2.05.tar.gz
cd Crypt-DES-2.05
perl Makefile.PL
make;make install
执行make时提示如下:
Can't locate ExtUtils/MakeMaker.pm in @INC (@INC contains:/usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl/usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .) atMakefile.PL line 3.
BEGIN failed--compilation aborted at Makefile.PL line 3.
解决办法是yum -yinstall perl-develyum -y installperl-CPAN
gunzipDigest-HMAC-1.03.tar.gz
tar xvfDigest-HMAC-1.03.tar
cd Digest-HMAC-1.03
perl Makefile.PL
make;make install
tar zxvf Digest-MD5-2.51.tar.gz
cd Digest-MD5-2.51
perl Makefile.PL
make ;make install
tar zxvfDigest-SHA1-2.13.tar.gz
cd Digest-SHA1-2.13
perl Makefile.PL
make;make install
gunzipNet-SNMP-v6.0.1.tar.gz
tar xvfNet-SNMP-v6.0.1.tar
cd Net-SNMP-v6.0.1
perl Makefile.PL
make;make install
(2) 安装nagios-plugins插件
tarzxvf nagios-snmp-plugins.1.1.1.tgz
cd nagios_plugins
./install.sh运行后一路回车这个插件必须在以上5个模块的后面安装
(3)下载check_iftraffic.pl插件及配置
下载check_iftraffic.pl插件,并给这个插件777权限,属主属组改为nagios将check_iftraffic.pl移动到mv check_iftraffic.pl /usr/local/nagios/libexec/这个目录下
上传的路径
测试结果如下我机房的交换机团体名称PUBLIC根据实际情况填写
A.定义check_iftraffic.pl命令
vi/usr/local/nagios/etc/objects/commands.cfg
define command{
command_namecheck_iftraffic.pl
command_line$USER1$/check_iftraffic.pl -H $HOSTADDRESS$-C $ARG1$ -i $ARG2$ -b $ARG3$ -u $ARG4$
}
B.定义被监控的交换机
vi/usr/local/nagios/etc/objects/huawei5328这里的huawei5328是我自己键的
define host{
usegeneric-switch//模版名字
host_nameHW-5328//主机名字
aliasHW-5328-01//别名
address192.168.100.1 //被监控交换机的ip地址
}
C.定义被监控交换机要监控的服务
vi /usr/local/nagios/etc/objects/huawei5328服务和主机定义在一个配置文件里
define service{//以下这1、2、3、是监控的交换机的端口流量
usegeneric-service //模版名字
host_nameHW-5328//这里的名字必须和定义主机的名字一样
service_description5328-1//随意
check_commandcheck_iftraffic.pl!eayunnet!GigabitEthernet0/0/1!17!m
}
defineservice{
usegeneric-service
host_nameHW-5328
service_description5328-2
check_commandcheck_iftraffic.pl!eayunnet!GigabitEthernet0/0/2!17!m
}
defineservice{
usegeneric-service
host_nameHW-5328
service_description5328-3
check_commandcheck_iftraffic.pl!eayunnet!GigabitEthernet0/0/3!17!m
}
defineservice{这个是定义交换机的丢包率
usegeneric-service
host_nameHW-5328
service_descriptionPING-252
check_commandcheck_ping!200.0,20%!600.0,60%
}
defineservice{下面这3个定义的是交换机的端口状态
usegeneric-service
host_nameHW-5328
service_descriptionPort 1 Link Status
check_commandcheck_snmp!-C eayunnet -oifOperStatus.18 -m
RFC1213-MIB -w 1
}
defineservice{
usegeneric-service
host_nameHW-5328
service_descriptionPort 2 Link Status
check_commandcheck_snmp!-C eayunnet -oifOperStatus.19 -m
RFC1213-MIB -w 1
}
defineservice{
usegeneric-service
host_nameHW-5328
service_descriptionPort 3 Link Status
check_commandcheck_snmp!-C eayunnet -oifOperStatus.20 -m
RFC1213-MIB -w 1
}
在nagios的nagios.cfg主配置文件中添加huawei5328.cfg
vi /usr/local/nagios/etc/nagios.cfg添加如下一行
cfg_file=/usr/local/nagios//etc/objects/huawei5328.cfg
检查配置文件是否有错
/usr/local/nagios/bin/nagios-v /usr/local/nagios/etc/nagios.cfg
F.启动nagios服务观察web界面的结果
Service nagios restart
Nagios+Cacti整合配置教程
安装php-json扩展
整合cacti和nagios是利用了cacti的一个插件nagiosfor cacti,它的原理是将nagios的数据通过ndo2db导入到mysql数据库(cacti的库中),然后cacti读取数据库信息将nagios的结果展示出来。安装php-json扩展,因为NPC使用了ExtJS,如过没有json的扩展NPC界面无法出来如果
安装php-json
tar jxvf php-json-ext-1.2.1.tar.bz2
cd php-json-ext-1.2.1
phpize
./configure
Make
Make instal
新建文件,添加信息如下
vi /etc/php.d/json.ini添加以下内容
extension=json.so
测试php是否支持json、sockets、pdo_msql
测试的第一种方法用命令测试
测试的第二种方法直接在vi /var/www/html/index.php编写一个php页面内容如
<?php
phpinfo();
?>
然后重新启动httpd服务浏览器中输入http://IP/index.php查看web界面是否加载了那3个模块
安装ndoutils插件
安装ndoutils,需要安装mysql-devel前面已经装过这里就不用再装了
tar xvf ndoutils-1.4b9.tar.gz
cd ndoutils-1.4b9
若安装的Centos6.4是64位系统,则要将/usr/lib64/mysql拷贝到/usr/lib目录
./configure --prefix=/usr/local/nagios/--with-mysql-lib=/usr/lib/mysql --with-mysql-inc=/usr/include/mysql --with-ndo2db-user=nagios--with-ndo2db-group=nagios --with-ssl --with-ssl-lib --enable-mysql--enable-ssl disabled-pgsql
make
复制文件
[[email protected]]# cd src
[root@localhostsrc]#cp ndomod-3x.o ndo2db-3x log2ndo file2sock /usr/local/nagios/bin/
[[email protected]]#cpconfig/ndo2db.cfg-sample/usr/local/nagios/etc/ndo2db.cfg
[[email protected]]#cpconfig/ndomod.cfg-sample/usr/local/nagios/etc/ndomod.cfg
[[email protected]]#chmod 644/usr/local/nagios/etc/ndo*
修复配置文件信息,连接数据库
vim/usr/local/nagios/etc/ndo2db.cfg //红色数字为行号
13 lock_file=/usr/local/nagios/var/ndo2db.lock
21 ndo2db_user=nagios
22 ndo2db_group=nagios
34 socket_type=tcp //将此行#号去掉,#socket_type=unix前面加上#号
44 socket_name=/usr/local/nagios/var/ndo.sock
102 db_name=cactidb //创建的数据库的名字
111 db_prefix=npc_
120 db_user=cactiuser //cacti数据库登陆用户名
121 db_pass=cactiuser //cacti数据库登陆密码
180debug_file=/usr/local/nagios/var/ndo2db.debug
vim /usr/local/nagios/etc/ndomod.cfg
25 output_type=tcpsocket //将此行#号去掉,#output_type=unixsocket前面加上#号
39 output=127.0.0.1 //将此行#去掉,#output=/usr/local/nagios//var/ndo.sock前面加
uffer_file=/usr/local/nagios/var/ndomod.tmp
启动ndo2db,查看进程是否启动
/usr/local/nagios/bin/ndo2db-3x-c/usr/local/nagios/etc/ndo2db.cfg
ps �Celf |grep ndo2db
修改nagios添加信息
vim /usr/local/nagios/etc/nagios.cfg //在最后添加如下行
修改相应目录的权限
chmod644 /usr/local/nagios/etc/ndo*
chown nagios:nagios /usr/local/nagios/etc/*
chown nagios:nagios /usr/local/nagios/bin/*
安装npc插件
(1)安装npc插件
tar zxvfnpc-2.0.4.tar.gz
mv npc/var/www/html/cacti/plugins/
vim/var/www/html/cacti/include/config.php
vim/var/www/html/cacti/include/cofnig.php
$plugins[] ='npc';
(2)访问cacti的web管理界面http://IP/cacti
控制面板--------用户管理--------选择admin------给npc插件勾上勾--------保存-------插件管理-------安装--------启用--------设置-------选择npc------填写下边内容保存即可!
(3) 重新启动mysql httpd ndonagios
servicemysqld restart
servicehttpd restart
servicenagios restart
/usr/local/nagios/bin/ndo2db-3x-c /usr/local/nagios/etc/ndo2db.cfg
如果ndo2db已经启动,则按下面的方法重启ndo2db
执行tail -20 /var/log/messages 查看其中是否有错误出现。如无报错请继续
访问http://IP/cacti/
安装PNP
http://weiliang.156.blog.163.com/blog/static/44474425201265105331555/安装pnp网址介绍。
安装pnp安装的必要插件
yum �Cyinstall libxml2-devel pangopango-devel cgil iblibart_lgpl-devel pango-devel*cairo-devel* zlib libpng freetypelibart_lgpllibart_lgpl-devel libxml*pango*perl-Time-HiRes
编译安装pnp4nagiosPNP绘图有两种方法2-7是第一种方法,第2种方法是从8开始第一种方法是你当太阳的图标的时候会在新窗口中打开图形查看,第二种方法是你只需要把鼠标移动到太阳图标上面就会自动弹出图形出来,以下两种方法你可以根据自己喜好选其中一种即可。
tar zxvf pnp4nagios-0.6.15.tar.gz
cd pnp4nagios-0.6.15
./configure
make all
make install
make install-config
make install-init
make install-webconf
cd /usr/local/pnp4nagios/etc
mv misccommands.cfg-sample misccommands.cfg
mv nagios.cfg-sample nagios.cfg
mv rra.cfg-sample rra.cfg
cd pages/
mv web_traffic.cfg-sample web_traffic.cfg
cd ../check_commands/
mv check_all_local_disks.cfg-samplecheck_all_local_disks.cfg
mv check_nrpe.cfg-sample check_nrpe.cfg
mv check_nwstat.cfg-sample check_nwstat.cfg
vi /usr/local/nagios/etc/nagios.cfg修改如下内容
1243 enable_environment_macros=1
832 process_performance_data=1
844host_perfdata_command=process-host-perfdata
845service_perfdata_command=process-service-perfdata
这里先把pnp4nagios执行数据收集的文件拷贝到nagios的libexec下,方便统一命令的执行路径.
cd /usr/local/nagios/etc/objects/
cp/usr/local/pnp4nagios/libexec/process_perfdata.pl/usr/local/nagios/libexec/
同步模式设定方法添加到末尾就可以,记住在上面这个配置文件里有这两个配置然后将上面的配置注释掉否则在你检查nagios的配置文件的时候会报错
vi/usr/local/nagios/etc/objects/commands.cfg
#process-host-perfdata'command definition
definecommand{
command_nameprocess-host-perfdata
command_line$USER1$/process_perfdata.pl -d HOSTPERFDATA
}
#process-service-perfdata'command definition
definecommand{
command_nameprocess-service-perfdata
command_line$USER1$/process_perfdata.pl
}
定义pnp的主机和服务两个模版
define host{
namehost-pnp
action_url/pnp4nagios/index.php/graph?host=$HOSTNAME$&srv=_HOST_
register0
}
defineservice {
nameservice-pnp
action_url/pnp4nagios/index.php/graph?host=$HOSTNAME$&srv=$SERVICEDESC$
register0
}
给添加的主机和服务添加小太阳图标在这个实验中我定义的有linux.cfg、windows.cfg、huawei5328.cfg分别是linux系统、windows系统、交换机等。
vi /usr/local/nagios/etc/objects/linux.cfg以下这两个是linux系统的
linux主机的下太阳图
Linux主机总进程服务的小太阳我只在这里截了这个服务其它服务设置相同
vi /usr/local/nagios/etc/objects/windows.cfg以下这两个是windwos系统的
这个是windows主机的下太阳
Windows磁盘利用率程服务的小太阳我只在这里截了这个服务其它服务设置相
vi/usr/local/nagios/etc/objects/huawei5328.cfg以下这两个是定义的交换机的
这个是定义交换机主机的下太阳
这个是定义交换机的0/0/1端口的流量的下太阳
这个是定义交换机的0/0/8端口的活动状态
先做一下pnp4nagios环境测试,发现php-gd模块无效,用命令yum install php-gd安装成功以后还是不行,后来经老男孩指点用yum install php* -y安装然后重启系统成功通过. http://IP/pnp4nagios用这个网址访问测试访问页面时提示not found解决办法如下:
vi /etc/httpd/conf/httpd.conf
Alias/pnp4nagios "/usr/local/pnp4nagios/share"
<Directory"/usr/local/pnp4nagios/share">
AllowOverride None
Order allow,deny
Allow from all
AuthName "Nagios Access"
AuthType Basic
AuthUserFile /usr/local/nagios/etc/htpasswd.users
Require valid-user
</Directory>
<IFModule mode_rewrite.c>
RewirteEngine On
Options FollowSymLinks
RewirteBase /pnp4nagios
RewirteRule ^(application|modules|system) -[F,L]
RewirteCond %{REQUEST_FILENAME} !-f
RewirteCond %{REQUEST_FILENAME} !-d
RewirteRule .* index.php/$0 [PT,L]
</IfModule>
然后启动httpd服务在次用http:/ip/pnp4nagios就饿可以了!
出现这个界面就成功了!
[root@localhost etc]# cd/usr/local/pnp4nagios/share/
mv install.php install.php.bak 进行改名如果不做这一步当你在web管理界面点击下太阳的时候会直接访问到这个页面。(这一步千万不能少)
设置小太阳的弟2种方法
拷贝status-header.ssi到/usr/local/nagios/share/ssi/目录下面来(这一步很重要,要不然移动到太阳标记上出不来图)我的解压目录是根据情况而定。
cd /wang/wang/pnp4nagios-0.6.15/contrib/ssi
cp status-header.ssi /usr/local/nagios/share/ssi/
vi/usr/local/nagios/etc/objects/templates.cfg 在模版里填写如下内容
define host {
namehost-pnp
action_url /pnp4nagios/index.php/graph?host=$HOSTNAME$&srv=_HOST_'class='tips' rel='/pnp4nagios/index.php/popup?host=$HOSTNAME$&srv=_HOST_
register0
}
define service {
nameservice-pnp
action_url/pnp4nagios/index.php/graph?host=$HOSTNAME$&srv=$SERVICEDESC$'rel='/pnp4nagios/index.php/popup?host=$HOSTNAME$&srv=$SERVICEDESC$
register0
}
检查配置文件是否有误
/usr/local/nagios/bin/nagios -v/usr/local/nagios/etc/nagios.cfg
service nagios restart 启动nagios服务查看结果如下:
安装Nagiosweb管理工具NagiosQL
NagiosQL介绍
NagiosQL是一个基于Web方式的Nagios配置管理工具,它使用PHP语言开发,可运行在Apache下,后台使用Mysql数据库。同时,NagiosQL也是一个开源软件。如果你使用过Nagios,那么你一定感知到了它的强大监控功能,以及它的可扩展性。然而,它的监控配置信息都存放于文件中,配置和修改都需要手工编辑文件,这样十分不便,尤其当监控的内容增多时,问题就更加明显。NagiosQL就是一款解决此类问题的软件,它提供了可视化的配置环境(基于Web方式)。
(2)编译安装NagiosQL NagiosQL是一个WEB管理工具,只要把其放到下Apache即可。因为这里它要和Nagios整合到一起,为了方便管理,把其放在Nagios目录
[root@localhost wang]# tar zxvf nagiosql_311.tar.gz
[root@localhost wang]# mv nagiosql/usr/local/nagios/
(3)建立nagiosQL导出nagios配置文件的目录,并修改权限
mkdir-p/etc/nagiosql/{hosts,services,backup/{,hosts,services},import}
[root@localhost wang]# chown -R apache:nagios /etc/nagiosql/
[root@localhost wang]# chmod -R 755/etc/nagiosql
[root@localhost wang]# chmod 777/usr/local/nagios/nagiosql/config
(4) Nagios相关文件权限的设定
[root@localhost wang]# chown nagios:apache/usr/local/nagios/etc
[root@localhostwang]#chownnagios:apache/usr/local/nagios/etc/{nagios.cfg,cgi.cfg}
[root@localhost wang]# chown nagios:apache/usr/local/nagios/etc/*
[root@localhostwang]#chmod664/usr/local/nagios/etc/{nagios.cfg,cgi.cfg}
[root@localhost wang]# chmod 775 /usr/local/nagios/etc
(5)设定nagios二进制文件的权限,以便其能够通过Web程序执行
[root@localhost wang]#chown nagios:apache /usr/local/nagios/bin/nagios
[root@localhost wang]#chmod 750 /usr/local/nagios/bin/nagios
[root@localhost wang]#chown -R apache.nagios /usr/local/nagios/var/spool/
[root@localhost wang]#chown nagios:apache /usr/local/nagios/var/rw/nagiosNaNd
[root@localhost wang]#chmod 660 /usr/local/nagios/var/rw/nagiosNaNd
(6)为apache添加nagiosQL虚拟目录
[root@localhost wang]# vi/etc/httpd/conf/httpd.conf将以下内容添加到末尾
Alias /nagiosQL"/usr/local/nagios/nagiosql"
<Directory"/usr/local/nagios/nagiosql">
# SSLRequireSSL
Options None
AllowOverride None
Order allow,deny
Allow from all
</Directory>保存退出!
重新启动httpd、mysqld服务
[root@localhostwang]# service httpd restart
Stopping httpd:[OK]
Starting httpd:[OK]
[root@localhost wang]#service mysqld restart
Stopping mysqld:[OK]
Starting mysqld:[OK]
建立nagiosql安装文件关闭防火墙和selinux
[root@localhostwang]# touch /usr/local/nagios/nagiosql/install/ENABLE_INSTALLER
[root@localhost wang]#setenforce 0
[root@localhost wang]#serviceiptables stop
访问http://ip/nagiosQL进行安装
测试所需环境通过,直接按下一步即可
设置nagiosQL初始密码点下一步安装我的密码是admin
初始nagiosQL密码是admin,点击下一步提示提示MySQL服务器连接(授权用户) 失败 invalid如下图:
登录物理服务器mysqladmin �Cu root �Cp password “123”在物理服务器
用mysql �Cu root �Cp 123登进数据库了但是在nagiosQL安装界面还是提
示以上信息解决办法是然后在点下一步就可以了!
提示删除安装目录这里用这里使用改权限登录192.168.100.1物理服务器执
行一下命令或则直接删除两种方法任选其一。
rm -rf /usr/local/nagios/nagiosql/install/
chmod 000/usr/local/nagios/nagiosql/install
到这里安装步骤总算结束了,下面我们还需要进行相关配置工作.
左边菜单选择管理-域,在右边域管理中点击localhost功能中的图标进行修改下面请按如图所示更改相应的路径即可:
Nagios基目录* /usr/local/nagios/etc/
导入路径 /etc/nagiosql/import/
Nagios命令文件 /usr/local/nagios/var/rw/nagiosNaNd
Nagios执行文件 /usr/local/nagios/bin/nagios
Nagios进程文件 /usr/local/nagios/var/nagios.lock
Nagios配置文件 /usr/local/nagios/etc/nagios.cfg
单击保存工具-导入数据右边会列出一些配置文件,按ctrl键全部选择右边的.cfg文件--导入
导入只是把配置文件内容导入到Mysql数据库,而使用其配置文件时,是一个个cfg文件,所以下面要进行写入过程工具--Nagios控制--写入检测数据和写入其他数据依次顺序执行工具--Nagios控制--写入检测数据和写入其他数据依次顺序执行
写入之后就可以看到相应的cfg文件了,查看写入是否成功,由下面的输出可以看出写入是成功的
修改nagios的配置文件,将原有以cfg_file开头项全部注释掉,加入上面新写入的配置文件有关在nagios.cfg文件注释原有以cfg_file开头项可以在nagiosql页面选择“工具”―“nagios配置”将原有以cfg_file开头项用#注释,如下图所示:
加入新的配置文件路径
cfg_dir=/etc/nagiosql/hosts/
cfg_dir=/etc/nagiosql/services/
cfg_file=/etc/nagiosql/commands.cfg
cfg_file=/etc/nagiosql/contactgroups.cfg
cfg_file=/etc/nagiosql/contacts.cfg
cfg_file=/etc/nagiosql/contacttemplates.cfg
cfg_file=/etc/nagiosql/hostdependencies.cfg
cfg_file=/etc/nagiosql/hostescalations.cfg
cfg_file=/etc/nagiosql/hostextinfo.cfg
cfg_file=/etc/nagiosql/hostgroups.cfg
cfg_file=/etc/nagiosql/hosttemplates.cfg
cfg_file=/etc/nagiosql/servicedependencies.cfg
cfg_file=/etc/nagiosql/serviceescalations.cfg
cfg_file=/etc/nagiosql/serviceextinfo.cfg
cfg_file=/etc/nagiosql/servicegroups.cfg
cfg_file=/etc/nagiosql/servicetemplates.cfg
cfg_file=/etc/nagiosql/timeperiods.cfg
在nagiosql页面选择“工具”―“nagios配置”将上面的内容复制到nagios.cfg文件中,如下图所示:
单击“保存”按钮,保存nagios.cfg文件的修改。然后单击工具--Nagios控制,在右侧单击检查配置文件后面的“执行”,进行文件的检查。
检查nagios配置文件是否有问题重新启动nagios服务。
/usr/local/nagios/bin/nagios-v /usr/local/nagios/etc/nagios.cfg
Service nagios restar