CentOS6下实现企业内部网络监控诊断报警¬一网络监控软件详细安装教程
Cacti+NTOP+Nagios+nagiosQL全中文版安装详解 最近学习了Allanhi的BLOG实战CentOS 6.0+Nagios中文版+PNP+Nagios..,神de信仰 的BLOG实现企业级开源监控软件cacti+nagios+ntop,网管的BLOG cacti+ntop+飞信机器人, CactiEZ中文版官方论坛 等文章后自己动手实践,成功安装配置了中文版的Cacti、NTOP、Nagios、nagiosQL。我原本想将其都整合到一起,后来发现Nagios Plugin for Cacti(NPC)插件没有中文的,所以就没将nagios整合到cacti中(个人观点:中英结合的软件不太美观 -_-~!)在此感谢你们的无私奉献精神...愿伏羲与你们同在~~~阿门! 下面是软件主要功能: Cacti:一套基于PHP,MySQL,SNMP及RRDTool开发的网络流量监测图形分析工具。它通过snmp来获取数据,使用 RRDtool绘画图形。 NTOP: 开源网络流量分析软件。是一种网络嗅探器,工作在第二层和第三层,嗅探器在协助监测网络数据传输、排除网络故障等方面有着不可替代的作用。可以通过分析网络流量来确定网络上存在的各种问题,如瓶颈效应或性能下降;也可以用来判断是否有***正在***网络系统。如果怀疑网络正在遭受***,通过嗅探器截获的数据包可以确定正在***系统的是什么类型的数据包,以及它们的源头,从而可以及时地做出响应,或者对网络进行相应的调整,以保证网络运行的效率和安全。 Nagios: 监控网络服务(SMTP、POP3、HTTP、NNTP、PING等);主机资源(处理器负荷、磁盘利用率等);当服务或主机问题产生与解决时将告警发送给联系人(通过EMail、手机短信、用户定义方式);可以支持并实现对主机的冗余监控;可选的WEB界面用于查看当前的网络状态、通知和故障历史、日志文件等。nagiosQL: nagios的web管理模块,此模块能方便的为Nagios和lcinga创建,修改和删除配置文件。这些数据存储在MySQL数据库中并且能在任何时候写入标准文件。
下面是CactiEZ提供的CentOS6 + CactiEZ 的ISO镜像文件,可制作成光盘引导启动,本文是在vmware下实现的。 CactiEZ中文版10.1: CactiEZ-10.1-i386.iso 32位:下载地址:下载链接:
115网盘: # 115网盘: # 64位:下载地址: 115网盘:http://115.com/file/dptirxso# CactiEZ中文版是最简单有效的Cacti中文解决方案,整合Spine,RRDTool和美化字体。集成Thold,Monitor,Syslog,Weathermap,Realtime,Errorp_w_picpath,Mobile,Aggregate以及Apache,Squid,F5,Nginx,MySQL等模板。支持多种硬盘控制器和阵列卡,基于CentOS6,启动速度更快,支持EXT4文件系统,原生rsyslog更稳定。全中文页面,中文图形,支持邮件报警,支持声音报警,安装方便使用简单。 本文采用VMware Workstion来实现虚拟化主机的应用 在这里我选择了安装盘镜像文件CactiEZ-10.1-i386.iso 一. 安装Cacti中文版 CactiEZ-10.1-i386.iso镜像文件是捆绑cacti中文版的CentOS6操作系统安装软件
到这里CentOS6+cactiEZ已经安装完成了。Reboot重新启动
系统默认的用户名 root 密码 CactiEZ 注意大小写
更改虚拟机设置-网络适配器-桥接:直接连接到物理网络
首先修改你的网卡配置,使其能连入Internet网络
[root@CactiEZ ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0 #进入网卡配置文件修改按“i”键进入编辑模式 DEVICE=eth0 BOOTPROTO=staticDNS1=202.96.64.68 #填写自己当地的DNSGATEWAY=10.10.10.1 #填写本地网关 HOSTNAME="CactiEZ.local" HWADDR=00:30:16:8F:6D:0D IPADDR=10.10.10.221 #填写IP地址 MTU=1500NETMASK=255.255.255.0 #填写子网掩码 NM_CONTROLLED=yes ONBOOT=yes然后按“ESC” 输入 :wq 保存退出
service network restart #重启网络服务 passwd root #修改root口令为自己常用的口令由于后面有大量的命令行操作,建议使用SecureCRT软件登陆操作,可以复制粘贴节省时间。
现在你可以打开你的浏览器http://yourIP/ 来登陆CactiEZ中文版界面。
Cacti默认管理员:admin Cacti管理员密码:admin 第一次登陆要求修改管理员密码
二.安装NTOP中文版
yum -y install lrzsz wget http://dl.fedoraproject.org/pub/epel/6/i386/libnet-1.1.5-1.el6.i686.rpm #在线下载数据包 wget http://dl.fedoraproject.org/pub/epel/6/i386/libnet-devel-1.1.5-1.el6.i686.rpm rpm -ivh libnet*.rpm #安装libnet wget http://dl.fedoraproject.org/pub/epel/6/i386/ettercap-0.7.4-3.el6.i686.rpm wget http://dl.fedoraproject.org/pub/epel/6/i386/ettercap-common-0.7.4-3.el6.i686.rpm wget http://dl.fedoraproject.org/pub/epel/6/i386/ettercap-gtk-0.7.4-3.el6.i686.rpm yum -y --nogpgcheck localinstall ettercap-*.rpm #安装ettercap yum install libpcap libpcap-devel gdbm gdbm-devel zlib zlib-devel #yum安装所需的rpm包组 yum -y install make yum -y install libtool libtool-devel libevent libevent-devel libxml2 libxml2-devel libpng libpng-devel pango pango-devel yum -y install dos2unix #安装 dos2unix转换工具 yum -y install unzip wget http://www.netexpert.cn/ntop/ntopchs.zip #下载ntop中文版 useradd -M -s /sbin/nologin -r ntop unzip ntopchs.zip -d ntopchs/ #解压ntopchs.zip到ntopchs目录下 cd ntopchs chmod +x autogen.sh #给autogen.sh 加执行权限 rm -f config.sub cp /usr/share/libtool/config/config.sub ./ cp /usr/share/libtool/config/config.guess ./ dos2unix autogen.sh #转换格式 ./autogen.sh dos2unix Makefile.in dos2unix config.h.in dos2unix address.c dos2unix Makefile dos2unix depcomp dos2unix mkinstalldirs cd GeoIP-1.4.8/libGeoIP/ dos2unix Makefile cd .. cd .. vi Makefile #编辑文件查找lua.lo然后把lua.lo删掉并保存退出 make chmod +x mkinstalldirs make install chown -R ntop:ntop /usr/local/share/ntop chown -R ntop:root /usr/local/var/ntop ntop -A #为ntop的admin用户设置密码: ntop -i eth0 -d -L -u ntop #启动ntop# 每次启动都会报错,显示 Error Opening file ./GeoLiteCity.dat Error Opening file ./GeoIPASNum.dat看了好多文章,似乎是bug,期待解决。
echo 'ntop -i eth0 -d -L -u ntop &> /dev/null' >> /etc/rc.d/rc.local #设置开机自动启动cd ~
NTOP安装完成,用web页面访问http://yourIP:3000三.将NTOP整合到CactiEZ中
wget http://jaist.dl.sourceforge.net/project/cactiundip/ntop-v0.2-1.tar tar -xvf ntop-v0.2-1.tar -C /var/www/html/plugins/ cd /var/www/html/ vi include/config.php #编辑配置文件,添加ntop模块(红字部分) $database_type = "mysql"; $database_default = "cacti"; $database_hostname = "localhost"; $database_username = "cactiuser"; $database_password = "cactiuser"; $database_port = "3306"; $plugins[] = 'ntop'; # #添加ntop模块支持 保存退出 进入cactiez网页的控制台--插件管理-点击右面的Ntop前的蓝×××标安装插件点击绿×××标启动插件
进入用户管理-点击右面的admin 在下面的功能权限中把最后一项View NTop勾选上并保存 这个时候就可以看到网页最上面的标签处多出了ntop标签,至此cacti+ntop整合完毕。四.安装Nagios中文版+ Nagios Web管理工具nagiosQL
yum -y install httpd gettext mysql mysql-server mysql-devel php php-mysql php-pear yum install php-mysql mysql perl mysql-server perl-DBI perl-DBD-MySQL httpd gcc glibc glibc-common gd gd-devel php #注意:不想安装NTOP的朋友,也要安装libnet和libnet-devel wget http://prdownloads.sourceforge.net/sourceforge/nagiosplug/nagios-plugins-1.4.15.tar.gz wget http://sourceforge.net/projects/nagios-cn/files/sourcecode/zh_CN%203.2.3/nagios-cn-3.2.3.tar.bz2/download #下载nagios中文版 useradd nagios #添加nagios用户 passwd nagios groupadd nagcmd usermod -G nagcmd nagios usermod -G nagcmd apache tar -jxvf nagios-cn-3.2.3.tar.bz2 cd nagios-cn-3.2.3 ./configure --prefix=/usr/local/nagios --with-nagios-user=nagios --with-nagios-group=nagios --with-command-group=nagcmd make all #报错make[1]: *** [cmd.cgi] Error 1,解决方法如下: 下面把英文版本的nagios里面的cgi/cmd.c复制过去,否则会报错make[1]: *** [cmd.cgi] Error 1,如果找不到英文版本的,可以点这里下载 然后通过rz上传 mv cmd.c cgi/cmd.c #注意:我的当前路径为/root/nagios-cn-3.2.3/ ,自行下载英文版nagios的朋友只要将cmd.c复制到 nagios-cn-3.2.3/cgi/ 就可以了。 make clean #清除之前编译的可执行文件及配置文件 make all make install make install-init make install-commandmode make install-config make install-webconf cd .. tar -zxvf nagios-plugins-1.4.15.tar.gz cd nagios-plugins-1.4.15 ./configure --with-nagios-user=nagios --with-nagios-group=nagios make make install htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin #创建用户nagiosadmin并设置登陆口令用于web访问 chkconfig --add nagios chkconfig nagios on #加入开机启动项 chkconfig httpd on chkconfig mysqld on service nagios start #启动服务 service httpd restart #注意这里是restart重启服务 service mysqld start /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg #检查配置文件正确性 vi /root/.bashrc #编辑 .bashrc这个文件,在里面用alias 来自定义一个命令check来代替上面的命令行(当然也可以不用,因为后面有nagiosQL管理中有检查配置按钮) 添加 alias check='/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg' 保存退出 source /root/.bashrc check 现在就可以用http://yourIP/nagios 方式访问nagios web访问控制台了. 安装nrpe_plugins指标采集插件,其主要是用来分析nrpe客户端的plugin脚本采集性能指标数据。主控端和受控端都要安装nrpe,这个插件需要openssl的支持,如果没有请运行 yum install openssl-devel 。 cd .. wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.12.tar.gz #下载nrpe tar zxvf nrpe-2.12.tar.gz cd nrpe-2.12 ./configure make all make install 完成以后没有出错就可以看到以下生成的文件了 至此nagios安装完成,但由于nagios配置需要建立、更改配置文件,这样比较烦琐且容易出错,因此我们还要再安装nagiosQL用以方便管理。 五.安装nagios的WEB管理工具nagiosQL cd .. wget http://sourceforge.net/projects/nagiosql/files/nagiosql/NagiosQL%203.1.1/nagiosql_311.tar.gz/download tar zxvf nagiosql_311.tar.gz mv nagiosql /usr/local/nagios/ 建立nagiosQL导出nagios配置文件的目录,并修改权限 mkdir -p /etc/nagiosql/{hosts,services,backup/{,hosts,services},import} #创建需要的目录 chown -R apache:nagios /etc/nagiosql/ chmod -R 755 /etc/nagiosql chmod 777 /usr/local/nagios/nagiosql/config chown nagios:apache /usr/local/nagios/etc chown nagios:apache /usr/local/nagios/etc/{nagios.cfg,cgi.cfg} chown nagios:apache /usr/local/nagios/etc/* chmod 664 /usr/local/nagios/etc/{nagios.cfg,cgi.cfg} chmod 775 /usr/local/nagios/etc chown nagios:apache /usr/local/nagios/bin/nagios chmod 750 /usr/local/nagios/bin/nagios chown -R apache.nagios /usr/local/nagios/var/spool/ chown nagios:apache /usr/local/nagios/var/rw/nagios.cmd chmod 660 /usr/local/nagios/var/rw/nagios.cmd vi /etc/httpd/conf.d/nagios.conf #为apache添加nagiosQL虚拟目录,在后面添加如下代码 #add virture directory for nagiosQL Alias /nagiosQL "/usr/local/nagios/nagiosql" <Directory "/usr/local/nagios/nagiosql"> # SSLRequireSSL Options None AllowOverride None Order allow,deny Allow from all </Directory>保存退出 service httpd restart #重启服务 service mysqld start touch /usr/local/nagios/nagiosql/install/ENABLE_INSTALLER #建立nagiosql安装文件 访问http://yourIP/nagiosQL进行安装 #注意是大写的QL 选择中文后开始安装
下面要求删除安装目录,需要进行 rm -rf /usr/local/nagios/nagiosql/install/ 创建数据库后都显示通过、完成,则你已经顺利安装了nagiosQL,点击右下角-完成
左边菜单选择管理-域,在右边域管理中点击localhost-功能中的 图标进行修改
下面请按如图所示更改相应的路径即可
Nagios基目录* /usr/local/nagios/etc/ 导入路径 /etc/nagiosql/import/ Nagios命令文件 /usr/local/nagios/var/rw/nagios.cmd 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控制 –写入检测数据和写入其他数据----顺序执行 检查配置文件 等同于/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg 点击-重新启动Nagios-执行
写入之后就可以看到相应的cfg文件了,查看写入是否成功,由下面的输出可以看出写入是成功的。
修改nagios的配置文件,将原有以cfg_file开头项全部注释掉,加入上面新写入的配置文件 vi /usr/local/nagios/etc/nagios.cfg #下图中每行前加“#”,都注释掉
加入新的配置文件路径
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.cfgcheck #检查nagios配置文件是否有问题 service nagios restart #重启nagios服务 至此整个搭建过程终于完成了。下一节我会分别详细介绍cacti、ntop、nagios的配置和应用实例,至于nagiosQL的配置我会转载Allan Fan的NagiosQL添加监控主机及Nagios上启用报警机制。
写的很匆忙,希望大家能批评纠错、回贴补充,我先在此谢过!小人感激不尽!(-_-)哈哈~~~ciywind