웹사이트 검색

Ubuntu 15.04에 Nagios 4.0.8을 설치하는 방법


이 튜토리얼은 다음 OS 버전에 대해 존재합니다.

  • Ubuntu 10.04(Lucid Lynx)

이 페이지에서

  1. 전제 조건
    1. 이 튜토리얼에서 수행할 작업:\n

    1. 1단계 - 다운로드 및 추출
    2. 2단계 - Nagios 컴파일
    3. 3단계 - Nagios 플러그인 설치\n
    4. 4단계 - Nagios 구성

    1. 1단계 - Apache 모듈 활성화\n
    2. 2단계 - Nagios 가상 호스트 활성화\n
    3. 3단계 - Apache 및 Nagios 시작

    1. 1단계 - 우분투 호스트에 연결\n
    2. 2단계 - NRPE 서비스 설치
    3. 3단계 - NRPE 구성
    4. 4단계 - NRPE 다시 시작
    5. 5단계 - Nagios 서버에 Ubuntu 호스트 추가\n
    6. 6단계 - 모든 서비스 다시 시작
    7. 7단계 - Ubuntu 호스트 테스트\n

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

    전제 조건

    • 우분투 15.04 - 64비트
    • 루트/Sudo 액세스

    이 튜토리얼에서 우리가 할 것:

    1. 패키지 설치 필요 - LAMP 등\n
    2. 사용자 및 그룹 구성
    3. Nagios 설치
    4. Apache 구성
    5. Nagios 서버 테스트
    6. 모니터에 호스트 추가\n

    패키지 설치

    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

    나기오스 설치

    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를 빌드하기 전에 앞서 생성한 사용자 및 그룹으로 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 행의 주석 처리를 제거하십시오.

    서버라는 새 폴더를 추가합니다.

    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 

    2단계 - NRPE 서비스 설치

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

    3단계 - NRPE 구성

    설치가 완료되면 nrpe 파일 /etc/nagios/nrpe.cfg를 편집합니다.

    vim /etc/nagios/nrpe.cfg

    ... Nagios Server IP 192.168.1.101을 server_address에 추가합니다.

    4단계 - NRPE 다시 시작

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

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

    Nagios 서버에 연결하십시오:

    ssh 

    그런 다음 /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를 지원하며 자신만의 플러그인을 만들 수도 있습니다. 자세한 내용은 여기를 참조하십시오.