关于Icinga-php4的文档信息及下载地址,可参考:http://icinga-cn.sourceforge.net/

我这里使用的是icinga-pnp4-cn-1.12.2.tar.xz。

因为账号限制的原因,在这里并没有新建icinga用户,后续icinga的使用者是monitor用户。后续预编译的时候需指定。

一、按照依赖包

# yum install httpd gcc glibc glibc-common gd gd-devel rrdtool php php-gd

# yum install libjpeg libjpeg-devel libpng libpng-devel

# yum install net-snmp net-snmp-devel net-snmp-utils

二、解压安装包

# tar xvf icinga-pnp4-cn-1.12.2.tar.xz

三、预编译

# cd icinga-pnp4-cn-1.12.2

# ./configure --prefix=/home/monitor/icinga  --with-icinga-user=monitor -with-icinga-group=monitor --with-command-user=monitor --with-command-group=monitor  --enable-idoutils=no

注意:如果没有带指定后面的--enable-idoutils=no,编译过程中会报configure: error: ERROR - We really need a libdbi to link against。

预编译完成后,会输出以下信息

*** Configuration summary for pnp4icinga-0.6. -- ***

  General Options:
------------------------- -------------------
Icingapnp4 user/group: monitor monitor
Install directory: /home/monitor/icinga
HTML Dir: /home/monitor/icinga/share
Config Dir: /home/monitor/icinga/etc
Location of rrdtool binary: /usr/bin/rrdtool Version 1.3.
RRDs Perl Modules: *** NOT FOUND ***
RRD Files stored in: /home/monitor/icinga/var/perfdata
process_perfdata.pl Logfile: /home/monitor/icinga/var/log/perfdata.log
Perfdata files (NPCD) stored in: /home/monitor/icinga/var/spool/perfdata Web Interface Options:
------------------------- -------------------
HTML URL: http://localhost/icinga
Apache Config File: /etc/httpd/conf.d/icinga.conf Review the options above for accuracy. If they look okay,
type 'make all' to compile.

很显然,RRDs Perl Modules没有安装,如果没有安装的话,会导致pnp出来的数据是乱码。

# yum install rrdtool-perl

四、编译

# make all

输出信息如下:

*** Compile finished ***

If the main program and CGIs compiled without any errors, you
can continue with installing Icinga as follows (type 'make'
without any arguments for a list of all possible options): make install
- This installs the main program (Icinga Core), CGIs
(Classical Web), and HTML files make install-init
- This installs the init script in /etc/rc.d/init.d make install-commandmode
- This installs and configures permissions on the
directory for holding the external command file make install-idoutils
- This installs the database addon IDOUtils into the
destination directory make install-config
- This installs *SAMPLE* config files in /home/monitor/icinga/etc
You'll have to modify these sample files before you can
use Icinga. Read the HTML documentation for more info
on doing this. Pay particular attention to the docs on
object configuration files, as they determine what/how
things get monitored! make install-webconf
- This installs the Apache config file and http auth file for
the Icinga Classic UI make install-webconf-auth
- This installs the Apache http auth file for the Classic UI make install-processperfdata
- pnp4icinga processperfdata in /home/monitor/icinga/libexec
make install-plugins
- pnp4icinga plugins in /home/monitor/icinga/libexec

除了make install-idoutils,依次执行上述命令

# make install

# make install-init

# make install-commandmode

# make install-eventhandlers

# make install-config

# make install-webconf

# make install-webconf-auth

# make install-processperfdata

# make install-plugins

五、配置经典WEB页面

# make cgis

# make install-cgis

# make install-html

设置能访问WEB页面的用户和密码,在这里,用户名是icingaadmin,密码是icinga

# htpasswd -c /home/monitor/icinga/etc/htpasswd.users icingaadmin

六、编译和安装Icinga插件

# tar xvf nagios-cn-plugins-2.0.3.tar.xz

# cd nagios-cn-plugins-2.0.3

#./configure --prefix=/home/monitor/icinga  --with-nagios-user=monitor --with-nagios-group=monitor

# make

# make install

七、编译和安装NRPE插件

# tar xvf icinga-nrpe-2.14.tar.gz

# cd icinga-nrpe-2.14

# ./configure --prefix=/home/monitor/icinga  --with-nrpe-user=monitor --with-nrpe-group=monitor  --with-icinga-user=monitor --with-icinga-group=monitor --enable-command-args

# make all

输出如下,按自己的需求来。

*** Compile finished ***

  make install
- This installs files in /home/monitor/icinga make install-plugin
- This installs init-script files in /home/monitor/icinga/libexec make install-init
- This installs init-script files in /etc/init.d make install-xinetd
- This installs sample-config/nrpe.xinetd in /etc/xinit.d make install-init-freebsd
- This installs init-script.freebsd files in /etc/init.d make install-init-debian
- This installs init-script.debian files in /etc/init.d make install-init-suse
- This installs init-script.suse files in /etc/init.d make install-daemon-config
- This installs the Nrpe config file in /home/monitor/icinga/etc

# make install

# make install-plugin

# make install-init

# make install-daemon-config

八、调整SELinux策略

临时关闭:# setenforce 0

永久关闭:

# vim /etc/sysconfig/selinux

SELINUX=disabled

九、启动HTTP,Icinga并添加开机自启动

# /etc/init.d/httpd start

# /etc/init.d/icinga start

# chkconfig httpd on

# chkconfig icinga on

测试WEB页面能否正常打开

报以上错误。

通过查看Apache日志,报错信息如下:

# tailf /var/log/httpd/error_log

[Thu Apr  ::33.682635 ] [core:error] [pid ] ()Permission denied: [client 192.168.244.1:] AH00035: access to /icinga/ denied (filesystem path '/home/monitor/icinga') because search permissions are missing on a component of the path

在网上查了很多方式,包括PHP没安装,SELinux没关闭啊。

最后才发现,是/home/monitor目录的属性存在问题。默认是700的。

# ll -d /home/monitor/
drwx------ monitor monitor Apr : /home/monitor/

解决方式:

将其目录属性设置为755

# chmod -R 755 /home/monitor/

重新登录Icinga WEB界面,OK

打开页面后,没发现图像啊,现在一步一步来

点击“服务详情”,出来以下画面

其中,蓝色框框的部分即是图像。

点击,出来以下提示信息,会显示“PNP4Icinga 环境测试”和“Kohana 环境测试”的结果。

其中,最后一行是提示信息“您的环境通过了所有要求. 现在可以删除或重命名 /usr/local/icinga/share/install.php 文件.”

根据提示,将该文件改名 mv install.php install.php.bak

重新点击图像,显示如下:

图像完美呈现,注意,只可点击状态是“正常”和“警报”的,如果点击“严重”和“未知”,会报如下错误:

部署Icinga-php4的更多相关文章

  1. 如何部署Icinga客户端

    Icinga客户端的部署相对于服务器端来说,简单很多.对于服务器端来说,如果要通过以下这种方式来监控服务器,必须包含三个组件,Icinga内核,Icinga插件,NRPE(Nagios Remote ...

  2. 如何部署Icinga服务端

    Icinga是Nagios的一个变种,配置,使用方式几乎一样,而且完全兼容Nagios的插件.所以下面的部署方案对Nagios同样使用. 它还推出了两个中文版本,icinga-cn原版和icinga- ...

  3. OWASP SSL 高级审查工具

    http://www.linuxidc.com/Linux/2016-03/129164.htm InfoWorld 在部署.运营和保障网络安全领域精选出了年度开源工具获奖者. 最佳开源网络和安全软件 ...

  4. Web应用之LAMP源码环境部署

    一.LAMP环境的介绍 1.LAMP环境的重要性 思索许久,最终还是决定写一篇详细的LAMP的源码编译安装的实验文档,一来是为了给自己一个交代,把技术进行系统的归纳,将技术以极致的形式呈现出来,做为一 ...

  5. 部署lamp服务器

    系统:CentOS 6.5 64位 1.卸载旧版本软件 rpm -qa | grep mysql #查询是否已经安装MySQL,如有执行下面的操作将其全部删除 rpm -e mysql --nodep ...

  6. Docker —— 用于统一开发和部署的轻量级 Linux 容器【转】

    转自:http://www.oschina.net/translate/docker-lightweight-linux-containers-consistent-development-and-d ...

  7. IIS部署PHP项目并与mysql完美结合

    在上一篇文章中,提到iis与apache共用80端口,但是发现很多问题,例如 IIS网站有支付功能,而微信支付是不支持带有端口的网址的,虽然通过apche代理,在外面看来没有端口,可是内部还是避免不了 ...

  8. Jenkins+Gitlab+Ansible自动化部署(六)

    Pipeline Job实现Nginix+MySQL+PHP+Wordpress实现自动化部署交付(Jenkins+Gitlab+Ansible自动化部署(五)https://www.cnblogs. ...

  9. 从大厂DevOps工具链部署,看现代产品的生命周期管理

    目录 1. 认识DevOps 1.1. DevOps工具链 1.2. CI 持续集成(Continuous Integration) 1.3. CD(持续交付 & 持续部署) 1.4. Agi ...

  10. [原]CentOS7.2部署node-mapnik

    转载请注明表作者think8848及出处(http://think8848.cnblogs.com) node-mapnik依赖项中要求g++ >= 5, toolchain (>= GL ...

随机推荐

  1. css解决display:inline-block;产生的缝隙(间隙)

    今天在做H5的水平滑动卡片时用到了display:inline-block;却发现处在同一水平线上的元素之间居然产生了缝隙,这很显然不是我想要的效果,所以我就换成了左浮动,这样缝隙的问题是解决了,但是 ...

  2. 不用css3的响应式img(按比例缩小图片)

    有时候自己为了控制图片的响应式,按比例缩小放大图片,如果解决这个问题,用js吧,很麻烦.也会损失很大的加载运行速度等:所以我们还是用css来解决这个问题,用css来强制按比例压缩图片的高度或宽度,看代 ...

  3. angular 中父元素ng-repeat后子元素ng-click失效

    在angular中使用ng-repeat后ng-click失效,今天在这个上面踩坑了.特此记录一下. 因为ng-repeat创造了新的SCOPE.如果要使用这个scope的话就必须使用$parent来 ...

  4. C#程序员经常用到的10个实用代码片段

    1 读取操作系统和CLR的版本 OperatingSystem os = System.Environment.OSVersion; Console.WriteLine(“Platform: {}”, ...

  5. java开发中JDBC连接数据库代码和步骤

    JDBC连接数据库 •创建一个以JDBC连接数据库的程序,包含7个步骤: 1.加载JDBC驱动程序: 在连接数据库之前,首先要加载想要连接的数据库的驱动到JVM(Java虚拟机), 这通过java.l ...

  6. CSS基础篇之选择符2

    属性选择符: 选择符 版本 描述 E[att] CSS2 选择具有att属性的E元素. E[att="val"] CSS2 选择具有att属性且属性值等于val的E元素. E[at ...

  7. IOS网络第七天WebView-04仿网易新闻详情

    *************** #import "HMViewController.h" @interface HMViewController () @end @implemen ...

  8. maven filter 乱码,MalformedByteSequenceException: Invalid byte 3 of 3-byte UTF-8 sequence.

    <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactI ...

  9. 安卓刷机--fastboot线刷

    首先需要下载fastboot.exe,copy到system32文件夹下. 对于安卓系统的智能手机,同时按住开机键和音量减键,或手机连上电脑,输入adb reboot bootloader进入fast ...

  10. 【安装PHP】如何在openSUSE42.1下编译安装PHP7

    首先推荐一篇文章PHP 7 Release Date Arrived: Will Developers Adopt PHP 7? - PHP Classes blog. 里面说到是否会去使用PHP7, ...