웹사이트 검색

Icinga: RHEL/CentOS 7.0을 위한 차세대 오픈 소스 'Linux 서버 모니터링' 도구


IcingaNagios 포크에서 시작된 최신 오픈 소스 모니터링 도구로, 이제 Icinga 1Icinga라는 두 개의 병렬 분기가 있습니다. 2. 이 도구의 기능은 Nagios 플러그인과 추가 기능, 심지어 구성 파일을 사용하여 네트워크 서비스와 호스트를 확인하고 모니터링한다는 점에서 Nagios와 다르지 않지만 웹 인터페이스, 특히 웹 인터페이스에서 몇 가지 차이점을 발견할 수 있습니다. 새로운 웹 인터페이스, 보고 기능 및 손쉬운 추가 기능 개발.

이 주제에서는 RepoForgeCentOS 또는 RHEL 7의 바이너리에서 Icinga 1 모니터링 도구의 기본 설치에 중점을 둡니다. > (이전에는 RPMforge로 알려짐) CentOS 6용 리포지토리로, Apache 웹 서버가 보유한 클래식 웹 인터페이스와 시스템에 설치될 Nagios 플러그인을 사용합니다.

참고 사항: RHEL/CentOS에 Nagios 모니터링 도구 설치

요구사항

MySQL 및 PhpMyAdmin은 없지만 다음 PHP 모듈을 사용하여 RHEL/CentOS 7.0에 기본 LAMP 설치: php-cli
php-배 php-xmlrpc php-xsl php-pdo php-soap php-gd.

  1. RHEL/CentOS 7.0에 기본 LAMP 설치

1단계: Icinga 모니터링 도구 설치

1. 바이너리에서 Icinga 설치를 진행하기 전에 컴퓨터에 따라 다음 명령을 실행하여 시스템에 RepoForge 저장소를 추가하세요.

86-64비트의 경우
rpm -Uvh http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm
32비트의 경우
rpm -Uvh http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.i686.rpm

2. RepoForge 저장소가 시스템에 추가된 후 다음 명령을 실행하여 아직 웹 인터페이스 없이 Icinga 기본 설치를 시작합니다.

yum install icinga icinga-doc

3. 다음 단계는 icinga-gui 패키지에서 제공하는 Icinga 웹 인터페이스를 설치하는 것입니다. 현재 이 패키지에는 CentOS/RHEL 7과 관련하여 해결되지 않은 문제가 있는 것으로 보이며 일부 트랜잭션 확인 오류가 발생합니다. 하지만 문제가 해결되는 동안 자유롭게 패키지를 설치해 볼 수 있습니다.

그래도 아래 그림과 같이 컴퓨터에서 동일한 오류가 발생하는 경우 추가 설명에 따라 다음 접근 방식을 사용하여 Icinga 웹 인터페이스를 설치할 수 있습니다.

yum install icinga-gui

4. 웹 인터페이스를 제공하는 icinga-gui 패키지를 설치하는 절차는 다음과 같습니다. 먼저 wget 명령을 사용하여 RepoForge 웹사이트에서 바이너리 패키지 형식을 다운로드합니다.

86-64비트의 경우
wget http://pkgs.repoforge.org/icinga/icinga-gui-1.8.4-4.el6.rf.x86_64.rpm
32비트의 경우
wget http://pkgs.repoforge.org/icinga/icinga-gui-1.8.4-4.el6.rf.i686.rpm

5. wget이 패키지 다운로드를 마친 후 icinga-gui라는 디렉터리를 만들고(원하는 경우 다른 이름을 선택할 수 있음) icinga-gui를 이동합니다. b> 해당 폴더에 RPM 바이너리를 추가한 후 해당 폴더로 들어가서 다음 일련의 명령을 실행하여 RPM 패키지 내용을 추출합니다.

mkdir icinga-gui
mv icinga-gui-* icinga-gui
cd icinga-gui
rpm2cpio icinga-gui-* | cpio -idmv

6. 이제 추출된 icinga-gui 패키지가 있으므로 ls 명령을 사용하여 폴더 콘텐츠를 시각화하세요. 그러면 3개의 새로운 디렉터리가 생성됩니다. < b>etc, usrvar. 시스템 루트 파일 시스템 레이아웃에서 결과 디렉터리 세 개 모두를 재귀적으로 복사하는 것부터 시작하세요.

cp -r etc/* /etc/
cp -r usr/* /usr/
cp -r var/* /var/

2단계: Icinga Apache 구성 파일 및 시스템 권한 수정

7. 이 기사 소개에서 설명한 것처럼 Icinga Web Interface를 실행하려면 시스템에 Apache HTTP 서버와 PHP가 설치되어 있어야 합니다.

위 단계를 완료한 후에는 이제 icinga.conf라는 Apache conf.d 경로에 새 구성 파일이 있어야 합니다. 브라우저의 원격 위치에서 Icinga에 액세스할 수 있으려면 이 구성 파일을 열고 모든 내용을 다음 구성으로 바꾸십시오.

nano /etc/httpd/conf.d/icinga.conf

모든 파일 내용을 다음으로 바꾸십시오.

ScriptAlias /icinga/cgi-bin "/usr/lib64/icinga/cgi"

<Directory "/usr/lib64/icinga/cgi">
 SSLRequireSSL
   Options ExecCGI
   AllowOverride None
   AuthName "Icinga Access"
   AuthType Basic
   AuthUserFile /etc/icinga/passwd

   <IfModule mod_authz_core.c>
      # Apache 2.4
      <RequireAll>
         Require all granted
         # Require local
         Require valid-user
      </RequireAll>
   </IfModule>

   <IfModule !mod_authz_core.c>
      # Apache 2.2
      Order allow,deny
      Allow from all
      #  Order deny,allow
      #  Deny from all
      #  Allow from 127.0.0.1
      Require valid-user
    </IfModule>
 </Directory>

Alias /icinga "/usr/share/icinga/"

<Directory "/usr/share/icinga/">

 SSLRequireSSL
   Options None
   AllowOverride All
   AuthName "Icinga Access"
   AuthType Basic
   AuthUserFile /etc/icinga/passwd

   <IfModule mod_authz_core.c>
      # Apache 2.4
      <RequireAll>
         Require all granted
         # Require local
         Require valid-user
      </RequireAll>
   </IfModule>

   <IfModule !mod_authz_core.c>
      # Apache 2.2
      Order allow,deny
      Allow from all
      #  Order deny,allow
      #  Deny from all
      #  Allow from 127.0.0.1
      Require valid-user
   </IfModule>
</Directory>

8. Icinga httpd 구성 파일을 편집한 후 Apache 시스템 사용자를 Icinga 시스템 그룹에 추가하고 다음 시스템 경로에서 다음 시스템 권한을 사용합니다.

usermod -aG icinga apache
chown -R icinga:icinga /var/spool/icinga/*
chgrp -R icinga /etc/icinga/*
chgrp -R icinga /usr/lib64/icinga/*
chgrp -R icinga /usr/share/icinga/*

9. Icinga 시스템 프로세스 및 Apache 서버를 시작하기 전에 setenforce 0 명령을 실행하여 SELinux 보안 메커니즘도 비활성화하고 변경 사항을 영구적으로 적용하십시오. /etc/selinux/config 파일을 편집하여 SELINUX 컨텍스트를 강제에서 비활성화로 변경합니다.

nano /etc/selinux/config

SELINUX 지시어를 다음과 같이 수정하세요.

SELINUX=disabled

getenforce 명령을 사용하여 SELinux 상태를 볼 수도 있습니다.

10. Icinga 프로세스 및 웹 인터페이스를 시작하기 전 마지막 단계로 보안 조치로 이제 다음 명령을 실행하여 Icinga 관리자 비밀번호를 수정한 후 두 프로세스를 모두 시작할 수 있습니다.

htpasswd -cm /etc/icinga/passwd icingaadmin
systemctl start icinga
systemctl start httpd

3단계: Nagios 플러그인 설치 및 Icinga 웹 인터페이스 액세스

11. Icinga를 사용하여 호스트에서 HTTP, IMAP, POP3, SSH, DNS, ICMP ping 및 인터넷이나 LAN에서 액세스할 수 있는 기타 여러 서비스와 같은 공용 외부 서비스 모니터링을 시작하려면 <를 설치해야 합니다. b>Nagios 플러그인 패키지는 EPEL 저장소에서 제공됩니다.

rpm -Uvh http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-6.noarch.rpm
yum install yum install nagios-plugins nagios-plugins-all

12. Icinga 웹 인터페이스에 로그인하려면 브라우저를 열고 http://system_IP/icinga/ URL을 지정하세요. 사용자 이름으로 icingaadmin을 사용하고 이전에 변경한 비밀번호를 사용하면 이제 로컬 호스트 시스템 상태를 볼 수 있습니다.

그게 다야! 이제 Nagios와 같은 클래식 웹 인터페이스를 갖춘 Icinga basic이 시스템에 설치되어 실행됩니다. Nagios 플러그인을 사용하면 이제 /etc/icinga/ 경로에 있는 Icinga 구성 파일을 편집하여 확인하고 모니터링할 새 호스트와 외부 서비스를 추가할 수 있습니다. 원격 호스트에서 내부 서비스를 모니터링해야 하는 경우 NRPE, NSClient++, SNMP와 같은 원격 호스트에 에이전트를 설치하여 데이터를 수집하고 Icinga 기본 프로세스로 보내야 합니다.

또한 읽어보세요

  1. NRPE 플러그인 설치 및 원격 Linux 호스트 모니터링
  2. NSClient++ 에이전트 설치 및 원격 Windows 호스트 모니터링