Ubuntu 15.04(Vivid Vervet)에 Nagios 4.0.8을 설치하는 방법

Ubuntu 15.04(Vivid Vervet)에 Nagios 4.0.8을 설치하는 방법

2022-10-19 last update

11 minutes reading monitoring ubuntu server networking
Nagios는 시스템 및 네트워크 모니터링을 위한 오픈 소스 소프트웨어입니다. Nagios는 호스트 및 해당 서비스의 활동을 볼 수 있으며 서버에 나쁜 일이 발생하면 경고/경고를 제공합니다. Nagios는 Linux 운영 체제에서 실행할 수 있습니다. 현재 설치에 Ubuntu 15.04를 사용하고 있습니다.

전제 조건


  • 우분투 15.04 - 64비트
  • 루트/Sudo 액세스
  • 이 자습서에서 수행할 작업:


  • 패키지 설치 필요 - LAMP 등
  • 사용자 및 그룹 구성
  • Nagios 설치
  • Apache 구성
  • Nagios 서버 테스트
  • 모니터링할 호스트 추가
  • 패키지 설치


    Nagios는 컴파일을 위해 gcc/build-essential이 필요하고 Nagios 웹 기반을 위해서는 LAMP(Apache, PHP, MySQL)가 필요하며 서버에서 경고를 보내려면 Sendmail이 필요합니다. 모든 패키지와 일부 추가 패키지를 설치하려면:

    apt-get install apache2 libapache2-mod-php5 build-essential libgd2-xpm-dev libssl-dev sendmail-bin sendmail heirloom-mailx wget apache2-utils curl daemon apt-file libnet-snmp-perl libpq5 libsensors4 libsnmp-base libtalloc2 libtdb1 libwbclient0 samba-common samba-common-bin smbclient snmp whois mrtg libcgi-pm-perl librrds-perl libgd-gd2-perl libmysqlclient-dev libperl5.20 libmysqlclient18 libradiusclient-ng2

    사용자 및 그룹 구성


    Nagios를 실행하려면 Nagios에 대한 새 사용자를 생성해야 합니다. 사용자 이름을 "nagios"로 지정하고 "nagcmd"라는 그룹을 추가로 생성합니다. 이제 아래와 같이 새 사용자를 그룹에 추가합니다.
    useradd nagios
    groupadd nagcmd
    usermod -a -G nagcmd nagios
    Add a user and group for Nagios

    나기오스 설치


    1단계 - 다운로드 및 추출


    cd ~
    wget http://prdownloads.sourceforge.net/sourceforge/nagios/nagios-4.0.8.tar.gz
    tar -xzf nagios*.tar.gz
    cd nagios-4.0.8/

    2단계 - Nagios 컴파일


    Nagios를 빌드하기 전에 이전에 생성한 사용자 및 그룹으로 구성해야 합니다.
    ./configure --with-nagios-group=nagios --with-command-group=nagcmd
    자세한 내용은 ./configure --help를 사용하십시오.
    이제 Nagios를 설치하려면:
    make all
    sudo make install
    sudo make install-commandmode
    sudo make install-init
    sudo make install-config
    /usr/bin/install -c -m 644 sample-config/httpd.conf
    /etc/apache2/sites-available/nagios.conf

    3단계 - Nagios 플러그인 설치


    nagios 플러그인을 다운로드하고 압축을 풉니다.
    cd ~
    wget http://nagios-plugins.org/download/nagios-plugins-2.0.3.tar.gz
    tar -xzf nagios-plugins*.tar.gz
    cd nagios-plugin*/
    위와 같이 해주세요.
    ./configure --with-nagios-user=nagios --with-nagios-group=nagios --with-openssl
    make && make install

    4단계 - Nagios 구성


    설치 단계가 완료되면/usr/local/nagios/에서 Nagios의 기본 구성을 찾을 수 있습니다.
    이제 이메일로 nagios 연락처를 구성합니다.
    vim /usr/local/nagios/etc/nagios.cfg
    cfg_dir=/usr/local/nagios/etc/servers 행의 주석 처리를 제거합니다.
    Shows the line to uncomment
    서버라는 새 폴더를 추가합니다.
    mkdir -p /usr/local/nagios/etc/servers
    Nagios 연락처는 contact.cfg 파일에서 구성할 수 있습니다. 그것을 열려면 다음을 사용하십시오.
    vim /usr/local/nagios/etc/objects/contacts.cfg
    그런 다음 기본 이메일을 자신의 이메일로 바꿉니다.

    아파치 구성


    1단계 - Apache 모듈 활성화


    sudo a2enmod rewrite
    sudo a2enmod cgi
    htpasswd를 사용하여 nagios 웹 인터페이스에 대한 사용자 nagiosadmin을 구성할 수 있습니다.
    sudo htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin
    그리고 비밀번호를 입력하세요.

    2단계 - Nagios 가상 호스트 활성화


    sudo ln -s /etc/apache2/sites-available/nagios.conf /etc/apache2/sites-enabled/

    3단계 - Apache 및 Nagios 시작


    /etc/init.d/apache2 restart
    /etc/init.d/nagios start
    Nagios가 시작되면 다음 오류가 표시될 수 있습니다.
    Starting nagios (via systemctl): nagios.serviceFailed
    해결 방법은 다음과 같습니다.
    cd /etc/init.d/
    cp /etc/init.d/skeleton /etc/init.d/nagios
    이제 Nagios 파일을 편집합니다.
    vim /etc/init.d/nagios
    ... 다음 코드를 추가합니다.
    DESC="Nagios"
    NAME=nagios
    DAEMON=/usr/local/nagios/bin/$NAME
    DAEMON_ARGS="-d /usr/local/nagios/etc/nagios.cfg"
    PIDFILE=/usr/local/nagios/var/$NAME.lock
    실행 가능하게 만들고 Nagios를 시작하십시오.
    chmod +x /etc/init.d/nagios
    /etc/init.d/apache2 restart
    /etc/init.d/nagios start

    Nagios 서버 테스트


    브라우저를 열고 설치된 Nagios 서버 IP에 액세스하십시오. http://192.168.1.101/nagios.

    모니터링할 호스트 추가


    이 튜토리얼에서는 위에서 만든 Nagios 서버에 모니터링할 Ubuntu 호스트를 추가합니다.
    Nagios Server IP : 192.168.1.101
    Ubuntu Host IP : 192.168.1.102

    1단계 - 우분투 호스트에 연결


    ssh [email protected]

    2단계 - NRPE 서비스 설치


    sudo apt-get install nagios-nrpe-server nagios-plugins

    3단계 - NRPE 구성


    설치가 완료되면 nrpe 파일/etc/nagios/nrpe.cfg를 편집합니다.
    vim /etc/nagios/nrpe.cfg
    ... 그리고 server_address에 Nagios Server IP 192.168.1.101을 추가합니다.

    4단계 - NRPE 다시 시작


    /etc/init.d/nagios-nrpe-server restart

    5단계 - Nagios 서버에 Ubuntu 호스트 추가


    Nagios 서버에 연결하십시오:
    ssh [email protected]
    그런 다음/usr/local/nagios/etc/servers/에 호스트 구성을 위한 새 파일을 만듭니다.
    vim /usr/local/nagios/etc/servers/ubuntu_host.cfg
    다음 줄을 추가합니다.
    # Ubuntu Host configuration file
    
    define host {
            use                          linux-server
            host_name                    ubuntu_host
            alias                        Ubuntu Host
            address                      192.168.1.102 #Ubuntu host IP
            register                     1
    }
    
    define service {
          host_name                       ubuntu_host
          service_description             PING
          check_command                   check_ping!100.0,20%!500.0,60%
          max_check_attempts              2
          check_interval                  2
          retry_interval                  2
          check_period                    24x7
          check_freshness                 1
          contact_groups                  admins
          notification_interval           2
          notification_period             24x7
          notifications_enabled           1
          register                        1
    }
    
    define service {
          host_name                       ubuntu_host
          service_description             Check Users
          check_command		      check_local_users!20!50
          max_check_attempts              2
          check_interval                  2
          retry_interval                  2
          check_period                    24x7
          check_freshness                 1
          contact_groups                  admins
          notification_interval           2
          notification_period             24x7
          notifications_enabled           1
          register                        1
    }
    
    define service {
          host_name                       ubuntu_host
          service_description             Local Disk
          check_command                   check_local_disk!20%!10%!/
          max_check_attempts              2
          check_interval                  2
          retry_interval                  2
          check_period                    24x7
          check_freshness                 1
          contact_groups                  admins
          notification_interval           2
          notification_period             24x7
          notifications_enabled           1
          register                        1
    }
    
    define service {
          host_name                       ubuntu_host
          service_description             Check SSH
          check_command                   check_ssh
          max_check_attempts              2
          check_interval                  2
          retry_interval                  2
          check_period                    24x7
          check_freshness                 1
          contact_groups                  admins
          notification_interval           2
          notification_period             24x7
          notifications_enabled           1
          register                        1
    }
    /usr/local/nagios/etc/objects/commands.cfg 파일에서 많은 check_command를 찾을 수 있습니다. DHCP, POP 등과 같은 더 많은 서비스를 추가하려면 거기를 참조하십시오.
    이제 구성을 확인하십시오.
    /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
    ... 구성이 올바른지 확인합니다.

    6단계 - 모든 서비스 다시 시작


    Ubuntu 호스트에서 NRPE 서비스를 시작합니다.
    /etc/init.d/nagios-nrpe-server restart
    ... 그리고 Nagios 서버에서 Apache 및 Nagios를 시작합니다.
    /etc/init.d/apache2 restart
    /etc/init.d/nagios restart

    7단계 - Ubuntu 호스트 테스트


    브라우저에서 Nagios 서버를 열고 모니터링 중인 ubuntu_host를 확인합니다.

    결론


    Nagios는 시스템 모니터링을 위한 오픈 소스 애플리케이션입니다. Nagios는 구성의 용이성 때문에 널리 사용되었습니다. Nagios는 다양한 플러그인을 지원하며 자신만의 플러그인을 만들 수도 있습니다. 자세한 내용은 here을 참조하십시오.