Redhat5.4上的nagios的安装

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介:
  解决安装nagios 的依赖关系

   Nagios 基本组件的运行依赖于httpdgccgd

  确保以下的软件包已经安装

Httpd gcc glibc glibc-common gd gd-devel  mysql mysql-server php gd  等软件包

添加nagios运行所需要的用户和组

#groupadd nagcmd

#useradd  -m nagios

#usermod –a –G nagcmd  nagios

#usermod –a –G nagcmd apache 

   注把apache 加入到nagcmd组,以便在通过web Interface 操作nagios是有足够的权限;

安装编译nagios

 #tar  xvf nagios-3.1.2.tar.gz

 # cd nagios-3.1.2

 #./configure –with-command-group=nagcmd  --ena ble-event-broker

  # make  all

   #make  install

   #make   install-init

   #make    install-config

   #make    install-commandmode

配置为接受nagios 警告信息的邮件地址,默认是本机的nagios用户

   #vim /usr/local/nagios/etc/objects/contacts.cfg

      Email  nagios@localhost  #该邮件为默认

httpd的配置文件目录中创建nagiosweb程序文件;其文件在conf.d

   #make install-webconf

nagios web创建用户和密码,并能呢个通过用户帐号来通过以后web认证登录nagios认证所用

#htpasswd  -c  /usr/local/nagios/etc/htpasswd.users  nagiosadmin

配置完后并重启httpd

 #service httpd  restart

 7编译,安装nagios-plugins

   #tar  xvf  nagios-plugins-1.4.14.tar.gz

    # cd  nagios-plugins-1.4.14

    # ./configure –with-nagios-user=nagios –with-nagios-group=nagios

    #make

    #make install

配置并启动nagios

(1)   nagios添加为系统服务并将之加入到自动启动服务队列

#chkconfig  --add  nagios

 #chkconfig    nagios  on

(2)   检查nagios的配置文件的语法正误

#/usr/local/nagios/bin/nagios/  -v  /usr/local/nagios/etc/nagios.cfg

  注:如果在其检查语法时有错误请根据提示的错误,进行修改,并再次进行检查。

        (3)   检查主机上的selinux是否开启,

             # getenforce

               如果开启的时候selinux,在默认的情况下,会拒绝nagios web cgi 程序的运行。

             1 如果getenforce 显示的selinux Enforcing时,

            则可以关闭selinux

                      setenforce  0 注该种方法只是 临时性的关闭selinux,当机器重启的时候,

selinux同样是开启的

              2 如果想让selinux永久关闭的时,则需要配置/etc/sysconfig/selinux

                     SELINUX=enforcing修改为SELINUX=disabled

 

               为了安全的情况下,您可以不必关闭selinux就能够运行nagiosCGI程序,当然这需要修改文件的标签

                 #chcon  -R –t httpd_sys_content_t /usr/local/nagios/share

                 #chcon  -R –t httpd_sys_content_t /usr/local/nagios/sbin

(3)   通过web页面查看nagios

          http//IP/nagios

      在查看的时候需要提供账户和密码

安装NDOUTILE,并配置

  #tar  xvf   ndoutils-1.4b9.tar.gz

  #cd   ndoutils-1.4b9

         #/configure --enable-mysql --with-mysql-lib=/usr/lib --with-mysql-inc=/usr/include  --disable-pgsql

# make

 # cp -v src/{ndomod-3x.o,ndo2db-3x,file2sock,log2ndo}  /usr/local/nagios/bin

注:以上复制的文件中前两项是版本相关的,即如果您的nagios主版本号是2系列,则需要拷贝名为ndomod-2x.ondo2db-2x的两个文件。后两项是通用文件,无论哪个版本都需要复制。

       10   ndoutile创建数据库

           #mysql  -uroot –p

              mysql> create database  ndodb;

              mysql> GRANT  CREATE,SELECT,DELETE,UPDATE,INSERT ON ndodb.* TO ndouser@localhost

                    IDENTIFIED BY ‘123456’;

              mysql> flush privileges;

 

下面两条命令用来生成ndoutils所需要的数据库表等,这些表默认以“nagios_”为前缀;install脚本命令必须在db子目录内执行:

# cd db

# ./installdb -u ndouser -p 123456 -h localhost -d ndodb

其中各选项的意义如下:

-u 用来指定导入时所用的mysql用户帐号

-p 表示前面mysql用户的密码

-h 表示mysql服务器地址,如果是localhost,则可以省略

-d 表示目标数据库

 

说明:如果与cacti整合的话,npc插件会在cacti的数据库自动生成ndoutils所需要表,这些表均以“npc_”为前缀。后面讲到整合的文章中会继续对些做出说明。

 

11 、复制、编辑配置文件,并修改文件权限

 

# cd ..

# cp -v config/{ndo2db.cfg-sample,ndomod.cfg-sample} /usr/local/nagios/etc

#chmod 644 /usr/loca/nagios/etc/nd0*

# vi /usr/local/nagios/etc/nagios.cfg

在文件中添加:

broker_module=/usr/local/nagios/bin/ndomod-3x.o config_file=/usr/local/nagios/etc/ndomod.cfg

 

此外,请确保您的/usr/local/nagios/etc/nagios.cfg中有如下行出现,否则,请自行添加:

event_broker_options=-1                // Nagios开启event broker

 

12 、编辑ndo2db守护进程和ndomod的配置文件

 

# vi /usr/local/nagios/etc/ndo2db.cfg

socket_type=tcp

db_servertype=mysql

db_host=localhost

db_port=3306

db_prefix=nagios_

db_user=ndouser

db_pass=123456

 

说明:

i)  以上"db_"开头的选项用来指定连接数据库的属性;

ii) 其默认用来接收数据的方式为Unix域套接字,这里修改成了TCP套接字;同时,ndomod.cfg配置文件中指定的输出方式也应该做相应的修改;

 

接下来我们去编辑ndomod的配置文件,为其指定数据的输出方式和输出目标主机:

# vi /usr/local/nagios/etc/ndomod.cfg

output_type=tcpsocket

output=127.0.0.1

 

 

13 、启动ndo2db守护进程

 

# /usr/local/nagios/bin/ndo2db-3x -c /usr/local/nagios/etc/ndo2db.cfg

 

建议此时查看系统日志(/var/log/messages)中是否有错误出现。

 

如果此时Nagios进程已启动,则需要停止并重新启动nagios

# killall -SIGHUP nagios

# rm -f /usr/local/nagios/var/nagios.lock

# /usr/local/nagios/bin/nagios -d /usr/local/nagios/etc/nagios.cfg

 

说明:

i) 此处停止Nagios必须通过向Nagios发送SIGHUP信号的方式进行;

ii) 建议此时查看nagios日志文件中是否表明ndomod的模块加载是否正常,以及其是否能正常连接到data sink;查看日志,可以使用如下命令实现:# tail -30 /usr/local/nagios/var/nagios.log

 

排错信息:

i)   如果ndomod模块没能正常加载的话,建议重新检查nagios的配置文件中是否添加了所需的broker module条目;

ii)  同时,如果ndomod没有正常连接到data sin,建议查看ndo2db.cfg文件中关于mysql连接项目的指定是否正确;

iii) 确认一下在编译NDOUtils时是否指定了关于mysql库文件位置的选项;









本文转自 freehat08 51CTO博客,原文链接:http://blog.51cto.com/freehat/318970,如需转载请自行联系原作者
相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
7月前
|
监控 Ubuntu Linux
如何在 Ubuntu 上安装 Nagios?
Nagios 允许您使用提供实时状态数据的插件来监控主机(可以是物理机或虚拟机)以及 HTTP、SSH 和 SMTP 等服务。
112 1
|
监控 Ubuntu 网络安全
|
MySQL 关系型数据库 Linux
|
Web App开发 监控 测试技术