zoukankan      html  css  js  c++  java
  • Nagiosserver端安装部署具体解释(1)

    下载地址例如以下: http://sourceforge.net/projects/nagios/files/

    具体具体下载地址:http://prdownloads.sourceforge.net/sourceforge/nagios/nagios-4.0.6.tar.gz

    1 開始下载:
     wget http://sourceforge.net/projects/nagios/files/nagios-4.x/nagios-4.0.6/nagios-4.0.6.tar.gz/download?use_mirror=jaist
    例如以下图所看到的,下载free版本号的。

    安装前准备工作,安装一些lib包

    [root@cache-2 root]# yum -y install httpd gcc glibc glibc-common

    # yum install -y gcc glibc glibc-common gd gd-devel xinetd openssl-devel


    2 进行selinux设置,或者关闭selinux

     查看SELinux状态:

     (1)/usr/sbin/sestatus -v      ##假设SELinux status參数为enabled即为开启状态

             SELinux status:                 enabled

     (2)getenforce                 ##也能够用这个命令检查

     关闭SELinux:

     (3)暂时关闭(不用重新启动机器):

             setenforce 0                  ##设置SELinux 成为permissive模式

                                  ##setenforce 1 设置SELinux 成为enforcing模式

     (4)改动配置文件须要重新启动机器:

             改动/etc/selinux/config 文件

             将SELINUX=enforcing改为SELINUX=disabled

             重新启动机器就可以


    3 開始准备nagios安装环境

      (1) 加入�nagios运行所须要的用户和组:

      groupadd nagcmd

             useradd -m nagios

             usermod -a -G nagcmd nagios

            

    把apache加入到nagcmd组,以便于在通过web Interface操作nagios时能够具有足够的权限:

    # usermod -a -G nagcmd apache


    4 编译安装准备

    ./configure --with-command-group=nagios --prefix=/opt/app/nagios --enable-embedded-perl --with-httpd-conf=/usr/local/apache2/conf

    [root@cache-2 nagios-4.0.6]# ./configure --with-command-group=nagios  --prefix=/opt/app/nagios --enable-embedded-perl  --with-httpd-conf=/usr/local/apache2/conf
    checking for a BSD-compatible install... /usr/bin/install -c
    checking build system type... x86_64-unknown-linux-gnu
    checking host system type... x86_64-unknown-linux-gnu
    checking for gcc... gcc
    checking for C compiler default output file name... a.out
    checking whether the C compiler works... yes
    checking whether we are cross compiling... no
    .............................
     HTML URL:  http://localhost/nagios/
                      CGI URL:  http://localhost/nagios/cgi-bin/
     Traceroute (used by WAP):  /bin/traceroute
    
    
    Review the options above for accuracy.  If they look okay,
    type 'make all' to compile the main program and CGIs.
    


    5 開始make安装
    5.1 make all

    [root@cache-2 nagios-4.0.6]#  make all

    cd ./base && make
    make[1]: Entering directory `/root/nagios-4.0.6/base'
    gcc -Wall -I.. -g -O2 -DHAVE_CONFIG_H -DNSCORE -c -o nagios.o nagios.c
    gcc -Wall -I.. -g -O2 -DHAVE_CONFIG_H -DNSCORE   -c -o broker.o broker.c
    gcc -Wall -I.. -g -O2 -DHAVE_CONFIG_H -DNSCORE   -c -o nebmods.o nebmods
    .........................
    For more information on obtaining support for Nagios, visit:
    
           http://support.nagios.com
    
    *************************************************************
    
    Enjoy.
    


    5.2 make install
    [root@cache-2 nagios-4.0.6]# make install
    cd ./base && make install
    make[1]: Entering directory `/root/nagios-4.0.6/base'
    make install-basic
    make[2]: Entering directory `/root/nagios-4.0.6/base'
    .....................................................
    make[2]: Entering directory `/root/nagios-4.0.6/cgi'
    for file in *.cgi; do 
    		/usr/bin/strip /usr/local/nagios/sbin/$file; 
    	done
    



    5.3 make install-config
    [root@cache-2 nagios-4.0.6]# make install-config
    /usr/bin/install -c -m 775 -o nagios -g nagios -d /usr/local/nagios/etc
    /usr/bin/install -c -m 775 -o nagios -g nagios -d /usr/local/nagios/etc/objects
    /usr/bin/install -c -b -m 664 -o nagios -g nagios sample-config/nagios.cfg /usr/local/nagios/etc/nagios.cfg
    ....................................................
    /usr/bin/install -c -b -m 664 -o nagios -g nagios sample-config/template-object/printer.cfg /usr/local/nagios/etc/objects/printer.cfg
    /usr/bin/install -c -b -m 664 -o nagios -g nagios sample-config/template-object/switch.cfg /usr/local/nagios/etc/objects/switch.cfg
    
    *** Config files installed ***
    


    5.4 make install-commandmode

    [root@cache-2 nagios-4.0.6]# make install-commandmode
    /usr/bin/install -c -m 775 -o nagios -g nagios -d /usr/local/nagios/var/rw
    chmod g+s /usr/local/nagios/var/rw
    
    *** External command directory configured ***
    
    Remember, these are *SAMPLE* config files.  You'll need to read
    the documentation for more information on how to actually define
    services, hosts, etc. to fit your particular needs.
    


    5.5 make install-init

    [root@cache-2 nagios-4.0.6]# make install-init
    /usr/bin/install -c -m 755 -d -o root -g root /etc/rc.d/init.d
    /usr/bin/install -c -m 755 -o root -g root daemon-init /etc/rc.d/init.d/nagios
    
    *** Init script installed ***
    


    [root@cache-2 nagios-4.0.6]#

    加到启动项里面去:

    # chkconfig --add nagios

    # chkconfig --level 35 nagios on

    # chkconfig --list nagios


    检查主机配置文件是否正确:

    /var/www/nagios/bin/nagios -v /var/www/nagios/etc/nagios.cfg


    5.6 Check安装是否正确:

    5.6.1说明:

    切换文件夹到安装路径(这里是/usr/local/nagios),看是否存在etc、bin、sbin、share、var 这五个文件夹,假设存在则能够表明程序被正确的安装到系统了。Nagios 各个文件夹用途说明例如以下:

    bin    Nagios 可运行程序所在文件夹

    etc   Nagios 配置文件所在文件夹

    sbin  Nagios CGI 文件所在文件夹,也就是运行外部命令所需文件所在的文件夹

    share        Nagios网页文件所在的文件夹

    libexec      Nagios 外部插件所在文件夹

    var   Nagios 日志文件、lock 等文件所在的文件夹

    var/archives     Nagios 日志自己主动归档文件夹

    var/rw      用来存放外部命令文件的文件夹


    5.6.2 check
     cd /usr/local/nagios
    ll

    [root@cache-2 nagios-4.0.6]# cd /usr/local/nagios
    [root@cache-2 nagios]# ll
    总用量 24
    drwxrwxr-x.  2 nagios nagios 4096 5月   5 15:31 bin
    drwxrwxr-x.  3 nagios nagios 4096 5月   5 15:32 etc
    drwxrwxr-x.  2 nagios nagios 4096 5月   5 15:31 libexec
    drwxrwxr-x.  2 nagios nagios 4096 5月   5 15:31 sbin
    drwxrwxr-x. 10 nagios nagios 4096 5月   5 15:31 share
    drwxrwxr-x.  5 nagios nagios 4096 5月   5 15:32 var
    


    5.7 安装nagios插件
    wget http://nagios-plugins.org/download/nagios-plugins-2.0.tar.gz

    [root@cache-2 ~]# wget http://nagios-plugins.org/download/nagios-plugins-2.0.tar.gz
    --2014-05-05 15:52:52--  http://nagios-plugins.org/download/nagios-plugins-2.0.tar.gz
    正在解析主机 nagios-plugins.org... 72.14.186.43
    正在连接 nagios-plugins.org|72.14.186.43|:80... 已连接。
    已发出 HTTP 请求,正在等待回应... 200 OK
    ............................................
    2014-05-05 15:53:00 (373 KB/s) - 已保存 “nagios-plugins-2.0.tar.gz” [2501847/2501847])
    
    [root@cache-2 ~]# tar -xvf nagios-plugins-2.0.tar.gz
    [root@cache-2 ~]# cd nagios-plugins-2.0
    [root@cache-2 ~]#./configure --with-nagios-user=nagios --with-nagios-group=nagios  --prefix=/usr/local/nagios --with-mysql
    [root@cache-2 ~]# make && make install
    



    5.8 安装配置apache和php
    (1)安装apache
    下载 wget http://archive.apache.org/dist/httpd/httpd-2.4.7.tar.gz
    [root@cache-2 ~]# wget http://archive.apache.org/dist/httpd/httpd-2.4.7.tar.gz
    --2014-05-05 16:15:48--  http://archive.apache.org/dist/httpd/httpd-2.4.7.tar.gz
    正在解析主机 archive.apache.org... 192.87.106.229, 140.211.11.131, 2001:610:1:80bc:192:87:106:229
    正在连接 archive.apache.org|192.87.106.229|:80... 已连接。
    已发出 HTTP 请求,正在等待回应... 200 OK
    长度:6747087 (6.4M) [application/x-gzip]
    正在保存至: “httpd-2.4.7.tar.gz”
    
     1% [=>                                                ..............................................................
    2014-05-05 16:16:01 (574 KB/s) - 已保存 “httpd-2.4.7.tar.gz” [6747087/6747087])


    開始安装:
     tar -xvf httpd-2.4.7.tar.gz
     cd httpd-2.4.7
     ./configure --prefix=/usr/local/apache2
    make && make install

    [root@cache-2 ~]# tar -xvf httpd-2.4.7.tar.gz
    [root@cache-2 ~]# cd httpd-2.4.7
    [root@cache-2 httpd-2.4.7]# ./configure --prefix=/usr/local/apache2
    checking for chosen layout... Apache
    checking for working mkdir -p... yes
    checking for grep that handles long lines and -e... /bin/grep
    checking for egrep... /bin/grep -E
    checking build system type... x86_64-unknown-linux-gnu
    checking host system type... x86_64-unknown-linux-gnu
    checking target system type... x86_64-unknown-linux-gnu
    configure: 
    configure: Configuring Apache Portable Runtime library...
    configure: 
    checking for APR... no
    configure: error: APR not found.  Please read the documentation.
    Google之后,发现可能是gcc版本号太低了,可能是apache版本号太高,换低点的2.2.23版本号吧。
    wget http://archive.apache.org/dist/httpd/httpd-2.2.23.tar.gz
    tar -xvf  httpd-2.2.23.tar.gz
    cd httpd-2.2.23
    ./configure --prefix=/usr/local/apache2
    make && make install
    

    (2) 安装php版本号

    wget http://cn2.php.net/distributions/php-5.4.26.tar.gz

    tar -xvf php-5.4.26.tar.gz

    cd php-5.4.26

    ./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2/bin/apxs

    有报错信息:

    Configuring extensions

    checking size of long... (cached) 8

    checking size of int... (cached) 4

    checking for int32_t... yes

    checking for uint32_t... yes

    checking for sys/types.h... (cached) yes

    checking for inttypes.h... (cached) yes

    checking for stdint.h... (cached) yes

    checking for string.h... (cached) yes

    checking for stdlib.h... (cached) yes

    checking for strtoll... yes

    checking for atoll... yes

    checking for strftime... (cached) yes

    checking which regex library to use... php

    checking whether to enable LIBXML support... yes

    checking libxml2 install dir... no

    checking for xml2-config path...

    configure: error: xml2-config not found. Please check your libxml2 installation.

    须要又一次安装lib包

    yum install libxml2 –y

    yum install libxml2-devel –y

    之后继续make,成功了:

    Make && make install

    [activating module `php5' in /usr/local/apache2/conf/httpd.conf]

    Installing PHP CLI binary:        /usr/local/php/bin/

    Installing PHP CLI man page:      /usr/local/php/php/man/man1/

    Installing PHP CGI binary:        /usr/local/php/bin/

    Installing PHP CGI man page:      /usr/local/php/php/man/man1/

    Installing build environment:     /usr/local/php/lib/php/build/

    Installing header files:          /usr/local/php/include/php/

    Installing helper programs:       /usr/local/php/bin/

      program: phpize

      program: php-config

    Installing man pages:             /usr/local/php/php/man/man1/

      page: phpize.1

      page: php-config.1

    Installing PEAR environment:      /usr/local/php/lib/php/

    [PEAR] Archive_Tar    - installed: 1.3.11

    [PEAR] Console_Getopt - installed: 1.3.1

    warning: pear/PEAR requires package "pear/Structures_Graph" (recommended version 1.0.4)

    warning: pear/PEAR requires package "pear/XML_Util" (recommended version 1.2.1)

    [PEAR] PEAR           - installed: 1.9.4

    Wrote PEAR system config file at: /usr/local/php/etc/pear.conf

    You may want to add: /usr/local/php/lib/php to your php.ini include_path

    [PEAR] Structures_Graph- installed: 1.0.4

    [PEAR] XML_Util       - installed: 1.2.1

    /root/php/php-5.4.26/build/shtool install -c ext/phar/phar.phar /usr/local/php/bin

    ln -s -f /usr/local/php/bin/phar.phar /usr/local/php/bin/phar

    Installing PDO headers:          /usr/local/php/include/php/ext/pdo/


    (3) 配置apache

    Apache的配置文件在 /usr/local/apache2/conf/httpd.conf ,vim打开

    User daemon

    Group daemon

    改动成:

    User nagios

    Group nagios


    <IfModule dir_module>

      DirectoryIndex index.html

    </IfModule>

    改动成:

    <IfModule dir_module>

      DirectoryIndex index.html index.php

        AddType application/x-httpd-php .php

    </IfModule>

    为了安全起见:nagios的web监控页面须要经过授权才干訪问,这须要添加�验证配置,即在httpd.conf 文件最后加入�例如以下信息:

    #setting for nagios

    ScriptAlias /nagios/cgi-bin "/usr/local/nagios/sbin"

    <Directory "/usr/local/nagios/sbin">

         AuthType Basic

         Options ExecCGI

         AllowOverride None

         Order allow,deny

         Allow from all

         AuthName "Nagios Access"

         AuthUserFile /usr/local/nagios/etc/htpasswd  //用于此文件夹訪问身份验证的文件             

         Require valid-user

    </Directory>

    Alias /nagios "/usr/local/nagios/share"

    <Directory "/usr/local/nagios/share">

         AuthType Basic

         Options None

         AllowOverride None

         Order allow,deny

         Allow from all

         AuthName "nagios Access"

         AuthUserFile /usr/local/nagios/etc/htpasswd

         Require valid-user

    </Directory>


    (4) 创建apache文件夹验证文件

    在上面的配置中,指定了文件夹验证文件htpasswd,以下要创建这个文件:

    /usr/local/apache2/bin/htpasswd -c /usr/local/nagios/etc/htpasswd david

    [root@cache-2 php-5.4.26]#  /usr/local/apache2/bin/htpasswd -c /usr/local/nagios/etc/htpasswd david

    New password:

    Re-type new password:

    Adding password for user david

    查看认证文件的内容:

    [root@cache-2 php-5.4.26]#  cat /usr/local/nagios/etc/htpasswd

    david:$apr1$Pf9XIJjd$m5hR2vw70MlqwrChgN7zc/

    [root@cache-2 php-5.4.26]#

    启动apache服务:

    /usr/local/apache2/bin/apachectl start


    [root@cache-2 php-5.4.26]# /usr/local/apache2/bin/apachectl start

    httpd: Could not reliably determine the server's fully qualified domain name, using 10.254.3.41 for ServerName

    (98)Address already in use: make_sock: could not bind to address [::]:80

    (98)Address already in use: make_sock: could not bind to address 0.0.0.0:80

    no listening sockets available, shutting down

    Unable to open logs

    改动ServerName以及Port

    vi /usr/local/apache2/conf/httpd.conf

    ServerName 改成 10.xx.3.x1

    Listen 80 改成 Listen 81

    http://10.xx.3.x1:81/nagios/,能够打开了,例如以下所看到的:




  • 相关阅读:
    Kruskal
    克鲁斯卡尔
    克鲁斯卡尔
    实践是检验真理的唯一标准 脱壳篇02
    Kruskal
    克鲁斯卡尔算法讲解
    实践是检验真理的唯一标准 脱壳篇02
    最小生成树(普里姆算法) 数据结构和算法62
    克鲁斯卡尔算法讲解
    最小生成树(普里姆算法) 数据结构和算法62
  • 原文地址:https://www.cnblogs.com/hrhguanli/p/3920374.html
Copyright © 2011-2022 走看看