首页 热点资讯 义务教育 高等教育 出国留学 考研考公

如何在ubuntu上安装icinga

发布网友 发布时间:2022-04-22 04:27

我来回答

1个回答

热心网友 时间:2022-04-13 19:56

Icinga1.8.4中文版安装记录

一.系统环境
操作系统是Centos 6.4 位版本,以前的一个基本不用的服务器,机器内存2G,硬盘250G.
安装系统比较简单,我是用PXE安装的,安装组件选择最小化服务器方式,其他需要的软件通过yum安装.
二.软件下载
Icinga中文版在http://sourceforge.net/projects/icinga-cn/files/?source=navbar下载,我下载的是集成pnp4的版本,可以用Icinga收集到的数据用rrd作图并显示.另外,还需要下载对应的Plugins的包,这个是Icinga监控/检查必须用到的.没有Plugins,Icinga就是空架子.这个有过安装Nagios的童鞋应该都知道.
三.软件安装
3.1 系统必要组件
a.编译需要用到的工具,类库

yum install gcc glibc glibc-common gd gd-devel
yum install libjpeg libjpeg-devel libpng libpng-devel
yum install rrdtool rrdtool-devel perl-rrdtool perl perl-devel
b.LAMP套件

yum install httpd mysql mysql-server libdbi libdbi-devel libdbi-drivers libdbi-dbd-mysql php php-gd php-mysql
php组件可以根据需要自行添加需要的扩展,毕竟只是为了Icinga这一个服务安装一台机器,有点浪费.

3.2 开始安装Icinga
a.创建Icinga用户以及用户组.

/usr/sbin/groupadd icinga
/usr/sbin/useradd -m icinga
passwd icinga
/usr/sbin/usermod -a -G icinga apache
b.解压下载的icinga-pnp4-cn-1.8.4.tar.bz2,然后进入解压的目录,执行:

./configure --prefix=/usr/local/icinga --with-icinga-user=icinga -with- icinga-group=icinga --with-command-user=icinga --with-command-group=icinga --e nable-idoutils --with-httpd-conf=/etc/httpd/conf.d --enable-nanosleep --enable- event-broker
configure程序会自动检测系统的环境,以及所依赖的包是否都安装上了.没有报错,执行以下操作:

make all
make没有报错,会提示以下一系列make命令,依次执行就可以了.

make install
make install-init
make install-config
make install-eventhandlers
make install-commandmode
make install-idoutils
make install-processperfdata
make install-plugins
上述命令中,最后两条是包含pnp组件的包特有的,如果下载的是不包含pnp的包,可以不用执行.
我用的是中文的1.8.4,可能是汉化作者的疏忽,在make all阶段,有一个小的bug,就是在编译cgi的时候,报错,说没有ruler来编译statuswml.cgi,经过对比英文原版1.8.4cgi目录下的Makefile与中文版的Makefile,查到,在cgi/Makefile里面有一行:
CGIS=avail.cgi cmd.cgi config.cgi extinfo.cgi history.cgi notifications.cgi outages.cgi showlog.cgi status.cgi statusmap.cgi statuswml.cgi summary.cgi tac.cgi $(CGIEXTRAS)
用编辑器修改cgi/Makefile,去掉那行里面的statuswml.cgi,然后重新执行make all,就可以继续了.用英文原版,可以顺利进行.
在icinga官网上提供了一个便捷的make命令,如下

make fullinstall
make install-config
应该也是可以安装上的,不过我没有测试.
编译过程如果一切顺利,Icinga的主程序就安装完成了.用命令

chkconfig --add icinga
chkconfig --add ido2db
chkconfig icinga on
chkconfig ido2db on
让icinga服务在下次服务器启动的时候,自动运行.以后需要启动/关闭Icinga服务的时候,可以通过service icinga [start|stop|restart]来进行,很方便.
c.数据库创建和IDOUtils
idoutils支持mysql,PGsql,Oracle等数据库,默认支持mysql.
启动mysql服务,运行以下命令来创建icinga数据库,并给icinga数据库用户授权.

mysql -u root -p
CREATE DATABASE icinga;
GRANT USAGE ON icinga.* TO 'icinga'@'localhost'
IDENTIFIED BY 'icinga'
WITH MAX_QUERIES_PER_HOUR 0
MAX_CONNECTIONS_PER_HOUR 0
MAX_UPDATES_PER_HOUR 0;
GRANT SELECT, INSERT, UPDATE, DELETE, DROP, CREATE VIEW, INDEX, EXECUTE
ON icinga.* TO 'icinga'@'localhost';
FLUSH PRIVILEGES;
quit
其中,2~11步在mysql>提示符下操作,不是在shell提示符下.
然后进入icinga源码目录下的mole/idoutils/db/mysql,执行

mysql -u root -p icinga < mysql.sql
来导入数据库.

d.安装插件.
前面说过,没有插件,Icinga只是一个空架子,现在我们来编译安装插件.用tar解压下载得到的icinga(nagios)-cn-plugins-1.4.16.tar.bz2,然后执行以下命令.注意,文件名中的()需要用\(和\)来转义.我是直接先将文件名mv更名之后,用tar解压缩的.

./configure --prefix=/usr/local/icinga --with-cgiurl=/icinga/cgi-bin --with-icinga-user=icinga --with-icinga-group=icinga
make
make install
另外,在icinga中文项目的plugins里面,新增加了一个addplugins-20130428.tar.gz包,里面有很多新的check组件,建议下载,然后解压,进入解压目录之后,因为都是脚本,所以不用configure直接make install就可以了.
安装完成Icinga插件之后,就可以启动apache,ido2db,icinga服务了.
在用浏览器访问icinga之前,用命令

htpasswd -c /usr/local/icinga/etc/htpasswd.users icingaadmin
添加用户web认证用户,命令会提示输入密码,并要求再次输入一次确认.

上述命令执行完成之后,就可以用浏览器访问了.浏览器输入http://yourserverip/icinga,会弹出认证对话框,输入htpasswd命令创建的icingaadmin用户名和你的密码,就可以看到Icinga的界面了.

由于默认icinga的配置里面,有一个linux的配置,使用Nrpe来检测的,我这里并没有安装,所以,我将/usr/local/icinga/etc/icinga.cfg里面的cfg_file=/usr/local/icinga/etc/objects/linux.cfg行注释了.重启icinga服务,就可以看到只有一个localhost的主机了.
等待一段数据,icinga会运行一些服务的检测,一切顺利的话,你会看到服务详情里面的服务都是绿色的正常字样.
由于我安装的时候安装的包比较少,localhost里面有一个服务check_iostat报错.经过研究,发现系统里面没安装iostat和bc命令,安装sysstat包和bc包,那个服务就正常了.

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com