设为首页 收藏本站
查看: 1628|回复: 0

在CentOS6.3上搭建nagios+cacti+ntop+pnp

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2015-11-23 03:56:22 | 显示全部楼层 |阅读模式
  CentOS版本: centos-x64 2.6.32-279.el6.x86_64
  nagios版本:Nagios  Core 3.4.2
  Cacti版本: cacti-0.8.8a
  Ntop:ntop-5.0.1
  pnp:pnp4nagios-0.6.19
  

  
  一、配置yum, 更换为163的源
  
  1. 首先备份/etc/yum.repos.d/CentOS-Base.repo
  #mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
  
  2. 下载对应版本repo文件, 放入/etc/yum.repos.d/(操作前请做好相应备份)
  #http://mirrors.163.com/.help/CentOS6-Base-163.repo
  
  3. 修改repo文件名称
  #mv /etc/yum.repos.d/CentOS6-Base-163.repo /etc/yum.repos.d/CentOS-Base.repo      
  
  4. 运行yum makecache生成缓存
  
  5. 安装rpmforge
  #rpm -ivh rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm

  二、安装包及相关软件
  1. 每个人机器的环境不一样,我是用最小安装模式安装的centos,需要安装以上的包,如果还安装过程中提示缺少依赖包,请自行安装吧。
  yum install httpd -y
  yum install php php-mysql php-snmp php-gd -y
  yum install mysql mysql-server mysql-devel -y
  yum install net-snmp-utils -y
  yum install rrdtool* -y
  yum install gcc* -y
  
  yum install gd gd-devel -y
  yum install glibc* -y
  yum install make.x86_64 automake -y
  yum install openssl* -y
  yum install perl-devel -y
  
  
  yum install GeoIP GeoIP-devel -y
  yum install ettercap  -y
  yum install libpcap libpcap-devel -y
  yum install gdbm gdbm-devel -y
  yum install python python-libspython-devel -y
  
  yum install wget  -y
  yum install automake* -y
  yum install libtool -y
  yum install subversion -y
  yum install libdbi libdbi-devel -y
  yum install libdbi-dbd-mysql –y
  

  
  2. 配置apache
   #vi/etc/httpd/conf/httpd.conf,确保有“LoadModule status_module modules/mod_status.so”这行并没有被注释,标示已经支持检测模块,然后启动apache:
  #servicehttpd start
   #chkconfig --level 35 httpd on  开机启动
  
  3. 配置php
  #vi/var/www/html/index.php
  <?php
  phpinfo();
  ?>
  访问http://localhost,验证php能够正常工作
  
  4. 配置mysql
  #servicemysqld start    启动mysql
  #chkconfig--level 35 mysqld on    设置mysql开机启动
  #mysqladmin-u root password 'password'    设置root账号登陆密码
  
   #mysql-u root -p  使用root账号登陆
  mysql>create database cactidb;             创建数据库cactidb,并创建管理账号cactier
  mysql>GRANT all Privileges ON cactidb.* TO cactier@localhost IDENTIFIED BY 'password';        
  mysql>GRANT all Privileges ON cactidb.* TO cactier@127.0.0.1 IDENTIFIED BY 'password';
  mysql>flush privileges;                               更新权限设置
  
  创建mysql.php验证mysql数据库连接
  <?php
  $link=mysql_connect(&quot;localhost&quot;,&quot;root&quot;,&quot;password&quot;);
  if(!$link) echo&quot;FAILD!&quot;;
  else echo &quot;OK!&quot;;
  ?>
  页面显示OK!表示连接正常。
  
  5. 配置SNMP
   #vi/etc/snmp/snmpd.conf   编辑SNMP的配置文件,其中
  # First, map the community name &quot;public&quot;into a &quot;security name&quot;
  #      sec.name  source          community
  com2sec notConfigUser  default      public#默认的密码为“public”, 可以改为需要的密码
  
   #service snmpd start      启动SNMP服务
  #chkconfig--level 35 snmpd on        设置snmp服务开机启动
  

  
  三、安装nagios
  1. 设置nagios用户和组
  #/usr/sbin/useradd-m nagios
  #passwdnagios
  #/usr/sbin/groupaddnagios
  #/usr/sbin/usermod-a -G nagios nagios
  
  2. 安装配置nagios
  #tarzxf nagios-3.4.2.tar.gz
  #cd nagios
  #./configure --with-gd-lib=/usr/lib64  --with-gd-inc=/usr/include --with-command-group=nagios--with-httpd-conf=/etc/httpd/conf/
  #makeall
  #makeinstall
  #makeinstall-init
  #makeinstall-config
  #makeinstall-commandmode
  #makeinstall-webconf
  #vi/usr/local/nagios/etc/objects/contacts.cfg
  #htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin
  
  vi/etc/httpd/conf/httpd.conf
  添加:
  #nagios default settings
  Include /etc/httpd/conf/nagios.conf
  #service httpd restart
  访问http://IP/nagios
  
  3. 安装nagios-plugins
  #tar zxf nagios-plugins-1.4.16.tar.gz
  #cd nagios-plugins-1.4.16
  #./configure--with-nagios-user=nagios --with-nagios-group=nagios
  #make
  #makeinstall
  
  4. 安装 nagios-snmp
  #tar zxf CPAN-1.9800.tar.gz
  #cd CPAN-1.9800
  #perl Makefile.PL
  #make
  #make install
  #yuminstall perl-Time-HiRes -y
  #perl -MCPAN -e shell (ftp://freesoft.cgi.gov.cn/pub/languages/perl/CPAN )
  cpan>installNet::SNMP
  
  #tar zxf nagios-snmp-plugins.1.1.1.tgz
  #cd nagios_plugins
  
  #chkconfig --add nagios
  #chkconfig nagios on
  #/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
  #chcon -R -t httpd_sys_content_t /usr/local/nagios/sbin
  #chcon -R -t httpd_sys_content_t /usr/local/nagios/share
  #servicenagios start

  
  四、安装cacti
  1. 安装
  #tar zxvf /root/cacti-0.8.8a.tar.gz
  #mv /root/cacti-0.8.8a /usr/local/cacti
  #mysql -u root -p cactidb < /usr/local/cacti/cacti.sql
  #vi/usr/local/cacti/include/config.php
  $database_type = &quot;mysql&quot;;
  $database_default =&quot;cactidb&quot;;
  $database_hostname =&quot;localhost&quot;;
  $database_username =&quot;cactier&quot;;
  $database_password =&quot;password&quot;;
  $database_port = &quot;3306&quot;;
  $database_ssl = false;
  
  #adduser -s /sbin/nologin cactier
  #cd /usr/local/cacti
  #chown -R cactier rra/ log/
  #vi/etc/crontab
  */5* * * * cactier php /usr/local/cacti/poller.php > /dev/null &
  
  #vi /etc/httpd/conf/cacti.conf
  Alias /cacti &quot;/usr/local/cacti&quot;
  <Directory&quot;/usr/local/cacti&quot;>
  OptionsFollowSymLinks MultiViews
  AllowOverrideNone
  Orderallow,deny
  Allowfrom all
  </Directory>
  
  2. 配置
  #/usr/bin/php -q /usr/local/cacti/poller.php --force --debug
  验证php是否有错误,如有:PHP Warning:  strtotime()或PHPWarning:  date()的警告信息,则 vi/etc/php.ini,修改“;date.timezone=”为“date.timezone= PRC”,然后重启httpd服务。
  
  打开http://IP/cacti/install 进行cacti的安装

  
  五、安装ntop
  #useradd -M -s /sbin/nologin -r ntop
  #tarzxvf ntop-5.0.1.tar.gz
  #cd  ntop-5.0.1
  #./autogen.sh
  #make
  #makeinstall
  #chown-R ntop.ntop /usr/local/share/ntop
  #chown-R ntop:root /usr/local/share/ntop
  #ntop -A
  #ntop -i eth0 -d -L -u ntop
  #echo 'ntop -i eth0 -d -L -u ntop &> /dev/null' >>/etc/rc.d/rc.local
  访问http://IP:3000

  
  六、整合cacti和ntop
  #tar zxvf ntop-v0.2-1.tgz
  #mv ntop /usr/local/cacti/plugins/
  #vi/usr/local/cacti/include/config.php
         添加“$plugins[] = 'ntop';”
  

  
  七、整合cacti和nagios
  1. 安装ndoutils
  #tar zxf ndoutils-1.5.2.tar.gz
  #cd ndoutils-1.5.2
  #./configure --with-mysql-lib=/usr/lib64/mysql
   #make
  #cd /root/ndoutils-1.5.2/db
  #./installdb -ucactier -p 123#abc -h localhost -d cactidb
  #cd /root/ndoutils-1.5.2/src
  cp -v src/{ndomod-3x.o,ndo2db-3x,file2sock,log2ndo} /var/www/html/nagios/bin
  
  #cp -v ndomod-3x.o /usr/local/nagios/bin/
  #mv/usr/local/nagios/bin/ndomod-3x.o /usr/local/nagios/bin/ndomod.o
  
  #cp -v ndo2db-3x /usr/local/nagios/bin/
  #mv/usr/local/nagios/bin/ndo2db-3x /usr/local/nagios/bin/ndo2db
  
  #cp -v file2sock /usr/local/nagios/bin/
  #cp -v log2ndo /usr/local/nagios/bin/
  
  #cd /root/ndoutils-1.5.2/config
  #cp -v ndo2db.cfg-sample /usr/local/nagios/etc/
  #mv/usr/local/nagios/etc/ndo2db.cfg-sample /usr/local/nagios/etc/ndo2db.cfg
  
  #cp -v ndomod.cfg-sample /usr/local/nagios/etc/
  #mv/usr/local/nagios/etc/ndomod.cfg-sample /usr/local/nagios/etc/ndomod.cfg
  #chmod 644 /usr/local/nagios/etc/ndo*
  
  #chown nagios:nagios /usr/local/nagios/etc/*
  #chown nagios:nagios /usr/local/nagios/bin/*
  
  #vi /usr/local/nagios/etc/nagios.cfg  
  broker_module=/usr/local/nagios/bin/ndomod.o config_file=/usr/local/nagios/etc/ndomod.cfg   # 在文件中添加:
  event_broker_options=-1# 检查  
  
  #vi/usr/local/nagios/etc/ndo2db.cfg
  socket_type=tcp  
   db_servertype=mysql  
  db_host=localhost  
  db_port=3306  
  db_name=cactidb  
  db_prefix=npc_  
  db_user=cactier
  db_pass=password
  
  #/usr/local/nagios/etc/ndomod.cfg
  output_type=tcpsocket  
   output=127.0.0.1
  
  为ndo2db添加启动进程
  #cp ./daemon-init /etc/init.d/ndo2db  
  #vi /etc/init.d/ndo2db
   # 检查里面的路径确保不会出现“//&quot;,并将Ndo2dbBin修改成下面的&#20540;:  
   Ndo2dbBin=/usr/local/nagios/bin/ndo2db
  #chmod &#43;x /etc/init.d/ndo2db
  
  #servicendo2db start
  #tail-20 /var/log/messages    ## 查看其中是否有错误出现。如无报错请继续
  #/usr/local/nagios/bin/nagios-v /usr/local/nagios/etc/nagios.cfg    检查nagios配置没有问题
  #service nagios restart
  
  2. 安装npc
  #tar zxf /root/npc-2.0.4.tar.gz
  #mv /root/npc/ /usr/local/cacti/plugins/
  #vi /usr/local/cacti/include/config.php
  添加 $plugins[] = 'npc';
  
  3. 为apche添加php支持
  #vi /etc/httpd/conf/httpd.conf
  # 添加一行:  
  AddType application/x-httpd-php .php .phtml  
  # 修改原DirectoryIndex内容为:  
  DirectoryIndex index.html index.html.var index.php  
  
  #usermod -G cactier apache  
  #service httpd restart    ## 重启apache以让php生效  
  #php -m   ## 查看是否有json被加载
  
  
  4. 修改mysql中的表结构:
  use cactidb;
  alter table npc_eventhandlers addlong_output TEXT NOT NULL default '' after output;
  alter table npc_eventhandlers add long_outputTEXT NOT NULL default '' after output;
  alter table npc_hostchecks add long_outputTEXT NOT NULL default '' after output;
  alter table npc_hoststatus add long_outputTEXT NOT NULL default '' after output;
  alter table npc_notifications add long_outputTEXT NOT NULL default '' after output;
  alter table npc_servicechecks addlong_output TEXT NOT NULL default '' after output;
  alter table npc_servicestatus addlong_output TEXT NOT NULL default '' after output;
  alter table npc_statehistory add long_outputTEXT NOT NULL default '' after output;
  alter table npc_systemcommands addlong_output TEXT NOT NULL default '' after output;
  
  #service ndo2db restart
  #service nagios restart

  

  
  八、安装pnp4nagios
  1. 安装pnp
  #tar pnp4nagios-0.6.19.tar.gz
  #cdpnp4nagios-0.6.19
  # ./configure --with-nagios-user=nagios--with-nagios-group=nagios
  #make all
  #make install
  #make install-webconf
  #make install-config
  #make install-init
  
  部署配置文件
  #chown –R nagios.nagios /usr/local/pnp4nagios
  #su - nagios
  $cd /usr/local/pnp4nagios/etc
  $mv misccommands.cfg-sample misccommands.cfg
  $mv nagios.cfg-sample  nagios.cfg
  $mv process_perfdata.cfg-sample process_perfdata.cfg
  $mv rra.cfg-sample rra.cfg
  
  $cd /usr/local/pnp4nagios/etc/pages
  $mv web_traffic.cfg-sample web_traffic.cfg
  
  $cd /usr/local/pnp4nagios/etc/check_commands
  $mv check_all_local_disks.cfg-sample check_all_local_disks.cfg
  $mv check_nrpe.cfg-sample check_nrpe.cfg
  $mv check_nwstat.cfg-sample check_nwstat.cfg
  
  设置npcd开机启动
  #chkconfig–add /etc/init.d/npcd
  启动npcd
  #service npcd start
  
  2. 修改nagios配置文件
  配置nagios.cfg,修改:
  #vi/usr/local/nagios/etc/nagios.cfg
  process_performance_data=1
  host_perfdata_command=process-host-perfdata
  service_perfdata_command=process-service-perfdata
  
  配置commands.cfg,修改:
  #vi /usr/local/nagios/etc/objects/etc/objects/commands.cfg
  # 'process-host-perfdata' command definition
  define command{
                      command_name    process-host-perfdata

                      command_line   /usr/local/pnp4nagios/libexec/process_perfdata.pl

        }


           # 'process-service-perfdata'command definition

                define command{

                       command_name    process-service-perfdata

                      command_line   /usr/local/pnp4nagios/libexec/process_perfdata.pl

        }

  
  配置templates.cfg,添加:
  #vi/usr/local/nagios/etc/objects/etc/objects/templates.cfg
  # Pnp4nagios host definition template
                define host {

                                name       host-pnp

                                action_url/pnp4nagios/graph?host=$HOSTNAME$

                                register   0

  }
  
  # Pnp4nagioshost definition template
  define service {
  name       srv-pnp
  action_url/pnp4nagios/graph?host=$HOSTNAME$&srv=$SERVICEDESC$
  register   0
  }
  
  配置主机监控文件:
  #vi/usr/local/nagios/etc/objects/etc/objects/192.168.8.80-NSClient.cfg
                define service{

                                use                                          generic-service,srv-pnp

                                host_name                            192.168.8.80-NSClient

                                service_description            check_ping

                                check_command                 check_ping!100.0,20%!500.0,60%

  }
  
  3. 重启服务

#/usr/local/nagios/bin/nagios-v /usr/local/nagios/etc/nagios.cfg    检查nagios配置

#service nagios restart   没有错误重启nagios服务

  #service npcd restart      重启npcd服务



先简单记录一下,以后有时间再完善吧。
  

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-142307-1-1.html 上篇帖子: centreon+nagios安装测试-环境搭建 下篇帖子: nagios监控ESXi硬件
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表