2012年(65)
分类: LINUX
2012-02-22 18:16:44
NagiosQL是专为nagios设计的web图形化管理应用,主要作用就是操作数据库和配置文件,其中包括将配置文件的信息写到数据库中,在数据库中修改Nagios的监控配置信息,并将数据库中存放的配置更新到文件中。用户可以通过NagiosQL提供的Web页面直观的修改配置。实现架构很简单,功能很实用。
Nagiosql功能介绍:
1、 具有基本的nagios的配置管理能力,导入,导出配置文件的功能
2、 具有nagios配置文件检查、排错的能力
3、 Nagiosql可对文件结构进行定制,可延续之前的配置结构,按IP生成配置
4、 Nagiosql将每一次配置的变更做一次配置备份,以时间戳为后缀保存,理论上可以回滚到任意一个历史配置
环境:
Linux centos6.0 2.6.32-71.el6.x86_64 #1 SMP Fri May 20 03:51:51 BST 2011 x86_64 x86_64 x86_64 GNU/Linux
软件版本:
nagiosql_311.tar.gz
nagios-3.3.1.tar.gz
nagios-plugins-1.4.15.tar.gz
备注:默认已经关闭selinux
一、LAMP环境搭建
1、 安装lamp所需要的软件包
[root@centos6 ~]# yum install make gcc gcc-c++ zlib-devel libaio -y
2、 安装lamp环境
[root@centos6 ~]# yum install -y httpd php php-mysql mysql mysql-server php-snmp php-pdo perl-DBD-MYSQL
3、 启动httpd和mysql
[root@centos6 ~]# service httpd restart
[root@centos6 ~]# service mysqld restart
4、 设置apache、mysql、php开机启动
[root@centos6 ~]# chkconfig --add httpd
[root@centos6 ~]# chkconfig httpd on
[root@centos6 ~]# chkconfig --list httpd
httpd 0:off 1:off 2:on 3:on 4:on 5:on 6:off
[root@centos6 ~]# chkconfig --add mysqld
[root@centos6 ~]# chkconfig mysqld on
[root@centos6 ~]# chkconfig --list mysqld
mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off
5、 测试lamp环境是否安装成功(OK)
二、Nagios搭建
1、环境说明
Nagiosql根位置:/usr/local/nagiosql
Nagiosql配置文件位置:/usr/local/nagiosql/etc
Nagiosql的用户和用户组:nagiosql|nagiosql
Apache的启动用户和组:apache|apache
2、安装nagios的依赖软件包
[root@centos6 ~]# yum install -y gcc glibc glibc-common gd gd-devel
3、建立nagios帐号
[root@centos6 ~]# useradd nagios
[root@centos6 ~]# passwd nagios
[root@centos6 ~]# groupadd nagios
[root@centos6 ~]# usermod -G nagios nagios
4、安装nagios
[root@centos6 ~]# tar -zxvf nagios-3.3.1.tar.gz
[root@centos6 nagios]# ./configure --prefix=/usr/local/nagios/ --with-nagios-user=nagios --with-nagios-group=nagios
[root@centos6 nagios]# make all
[root@centos6 nagios]# make install
[root@centos6 nagios]# make install-init
[root@centos6 nagios]# make install-config
[root@centos6 nagios]# make install-commandmode
[root@centos6 nagios]# make install-webconf
5、配置web接口,创建一个用户(以及密码)用于nagios的web接口登录
[root@centos6 nagios]# htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin
New password:
Re-type new password:
Adding password for user nagiosadmin
重启apache使设置生效
[root@centos6 nagios]# service httpd restart
6、 编译安装nagios官方插件
[root@centos6 ~]# tar -zxvf nagios-plugins-1.4.15.tar.gz
[root@centos6 ~]# cd ./nagios-plugins-1.4.15
[root@centos6 nagios-plugins-1.4.15]#
./configure --prefix=/usr/local/nagios/ --with-nagios-user=nagios --with-nagios-group=nagios
[root@centos6 nagios-plugins-1.4.15]# make && make install
验证插件是否安装成功(该目录下有插件文件即可)
[root@centos6 nagios-plugins-1.4.15]# ls /usr/local/nagios/libexec/
7、 启动nagios并设置开机启动
[root@centos6 nagios-plugins-1.4.15]# chkconfig --add nagios
[root@centos6 nagios-plugins-1.4.15]# service nagios restart
8、 Web测试(成功登录)
三、Nagiosql搭建
1、解压nagiosql_311.tar.gz到/usr/local/nagios/下
cd /usr/local/nagios/
tar zxvf nagiosql_311.tar.gz
2、修改nagiosql的用户访问权限
[root@centos6 nagios]# chown -R nagios:nagios /usr/local/nagios/nagiosql/
3、修改Config目录的的访问权限,使apache对其具有写的权限
[root@centos6 nagios]# chmod -R 777 /usr/local/nagios/nagiosql/config/
4、安装pear模块(需要php-pear软件包的支持)
[root@centos6 ~]# yum install php-pear –y
[root@centos6 ~]# /usr/bin/pear install HTML_Template_IT
5、创建nagiosql的配置文件目录
[root@centos6 ~]# cd /usr/local/nagios/nagiosql/
[root@centos6 nagiosql]# mkdir ./etc
[root@centos6 nagiosql]# mkdir ./etc/hosts
[root@centos6 nagiosql]# mkdir ./etc/services
[root@centos6 nagiosql]# mkdir ./etc/backup/services
[root@centos6 nagiosql]# mkdir -p ./etc/backup/services
[root@centos6 nagiosql]# mkdir -p ./etc/backup/hosts
[root@centos6 nagiosql]# chown -R apache:apache ./etc/
[root@centos6 nagiosql]# cd /usr/local/nagios/nagiosql/install/
[root@centos6 install]# touch ./ENABLE_INSTALLER
6、修改httpd.conf配置文件
[root@centos6 ~]# vim /etc/httpd/conf/httpd.conf
添加如下内容
Alias /nagiosql "/usr/local/nagios/nagiosql"
# SSLRequireSSL
Options None
AllowOverride None
Order allow,deny
Allow from all
7、重启apache
[root@centos6 ~]# service httpd restart
8、 在IE浏览器中输入,就会看到久违的Nagiosql界面
9、 选择语言,开始安装,会出现下图所示的Nagiosql Installation的检查前提条件,单击右下角的“下一步”,继续安装
10、 如下图所示,创建相应的用户及密码(该页面一般不需要修改,只需要设置登录Nagiosql的密码即可)
sql管用用户 root ,密码默认为空
11、 继续“下一步”,在弹出的界面里删除install目录,完成配置
12、 登录Nagiosql
13、 登录成功后,需要修改Nagiosql的配置目录
选择管理→域,编辑localhost
修改配置目录里的目录位置,与之前创建的位置一致
14、 导入nagios配置到Nagiosql里
点击工具→导入数据→按住ctrl,选择以下组件,然后点击导入
commands.cfg
contacts.cfg
templates.cfg
timeperiods.cfg
15、 更改Nagiosql的权限
[root@centos6 ~]# chown -R nagios.nagios /usr/local/nagios/nagiosql/
[root@centos6 ~]# chmod -R 777 /usr/local/nagios/nagiosql/
16、 写入配置文件,
16.1写入检测数据
根据所导入的数据生成hosts、hostgroup、services、servicegroup之类文件,点击工具→Nagios控制→写入检测数据→提交
此时会在/usr/local/nagios/nagiosql/下生成如下文件
hostgroups.cfg
hosttemplates.cfg
servicegroups.cfg
servicetemplates.cfg
在/usr/local/nagios/nagiosql/etc/hosts/目录生成对应已有主机台数数量的主机配置文件
在/usr/local/nagios/nagiosql/etc/services/目录中生成services的文件
16.2写入其他数据
根据所导入的数据生成command、timeperiods.cfg、contacts.cfg 等文件,点击工具→Nagios控制→写入其他数据→提交
此时会在/usr/local/nagios/nagiosql/目录中生成如下文件
commands.cfg
contacts.cfg
timeperiods.cfg
servicetemplates.cfg
17、 关闭nagios配置文件,应用Nagiosql配置文件
[root@centos6 ~]# vim /usr/local/nagios/etc/nagios.cfg
注释掉一下内容
(因为已经导入到nagiosql配置中,所以需要关闭)
#cfg_file=/usr/local/nagios/etc/objects/commands.cfg
#cfg_file=/usr/local/nagios/etc/objects/contacts.cfg
#cfg_file=/usr/local/nagios/etc/objects/timeperiods.cfg
#cfg_file=/usr/local/nagios/etc/objects/templates.cfg
以下项打开,没有的添加
(nagiosql配置文件,用于替代nagios的配置文件)
18、 登录Nagiosql界面,添加主机和服务器
19、 成功添加主机
官方配置文档
http://www.nagiosql.org/faq/31-general-documentation/71-nagiosql3-documentation.html#Download