웹사이트 검색

Debian에 Icinga2 모니터링 도구를 설치하는 방법


원래 Nagios 모니터링 도구의 포크로 만들어진 Icinga는 전체 인프라를 모니터링하고 장치의 가용성 및 성능에 대한 피드백을 제공하는 무료 오픈 소스 인프라 모니터링 및 알림 솔루션입니다.

또한 다양한 지표를 수집, 저장 및 시각화할 수 있습니다. 그런 다음 수집된 데이터와 채워진 시각화를 사용하여 보고서를 만들 수 있습니다.

또한 Icinga는 문제가 발생할 경우 경고나 알림을 보내 사용자가 즉시 문제에 주의를 기울이고 가능한 최소한의 시간 내에 서비스를 복원할 수 있도록 합니다.

이 가이드에서는 Debian 11/10Icinga2 모니터링 도구를 설치하는 과정을 안내합니다.

전제 조건

Icinga2를 성공적으로 설치하려면 LAMP 스택이 설치되어 있는지 확인하세요. Debian 10/11에 LAMP를 설치하는 방법에 대한 가이드가 이미 있습니다. LAMP의 모든 구성요소가 제 위치에 있으면 다음 단계로 넘어갑니다.

1단계: Debian에 PHP 모듈 설치

설치를 원활하게 진행하려면 일부 추가 PHP 모듈이 필요합니다. 따라서 터미널에서 다음 명령을 실행하여 설치하십시오.

sudo apt install php-gd php-mbstring php-mysqlnd php-curl php-xml php-cli php-soap php-intl php-xmlrpc php-zip  php-common php-opcache php-gmp php-imagick php-pgsql  -y

다음으로 PHP ini 파일을 편집합니다.

sudo nano /etc/php/7.4/apache2/php.ini

다음과 같이 변경합니다.

memory_limit = 256M 
post_max_size = 64M
upload_max_filesize = 100M	
max_execution_time = 300
default_charset = "UTF-8"
date.timezone = "Asia/Kolkata"
cgi.fix_pathinfo=0

date.timezone 매개변수의 경우 현재 시간대를 반영하도록 설정하세요. 지원되는 시간대 목록은 다음과 같습니다.

변경 사항을 저장하고 파일을 종료한 다음 Apache를 다시 시작하여 변경 사항을 적용합니다.

sudo systemctl restart apache2

2단계: Debian에 Icinga2 설치

Icinga2 및 관련 모니터링 플러그인을 설치하려면 먼저 패키지 목록을 업데이트하세요.

sudo apt update -y

그런 다음 다음 명령을 실행하십시오.

sudo apt install icinga2 monitoring-plugins -y

설치가 완료되면 Icinga2를 시작하고 활성화하여 부팅 시 시작되도록 하세요.

sudo systemctl start icinga2
sudo systemctl enable icinga2

다음과 같이 Icinga2가 실행 중인지 확인할 수 있습니다.

sudo systemctl status icinga2

출력에서 Icinga2 데몬이 실행되고 있는 것을 볼 수 있는데, 정말 좋습니다!

3단계: Icinga2 IDO MySQL 모듈 설치

Icinga IDO(Icinga 데이터 출력)는 모든 구성 및 상태 정보를 IDO 데이터베이스로 내보내는 핵심 기능입니다. IDO 데이터베이스는 백엔드에 위치하며 Icinga Web 2를 제공합니다.

Icinga IDO MySQL 모듈을 설치하려면 다음 명령을 실행하세요.

sudo apt install icinga2-ido-mysql -y

그러면 icinga2-ido-mysql 모듈을 구성하기 위한 몇 가지 프롬프트가 표시됩니다. icinga2-ido-mysql 기능을 활성화하라는 메시지가 표시되면 ''를 선택하고 ENTER를 누릅니다.

Icinga-ido-mysql 모듈을 사용하려면 데이터베이스를 설치하고 구성해야 합니다. 일반적으로 이는 데이터베이스 관리를 단순화하는 도구인 dbconfig-common을 사용하여 처리할 수 있습니다.

단순화를 위해 ''를 선택하고 를 눌러 dbconfig-common을 사용하여 icinga2-ido-mysql에 대한 데이터베이스를 자동으로 구성하도록 선택합니다. Enter.

다음으로 데이터베이스 서버에 연결하기 위해 icinga2-ido-mysql의 비밀번호를 입력하고 확인하세요.

4단계: Icinga-IDO MySQL 모듈용 데이터베이스 생성

다음으로 icinga2-ido-mysql 모니터링 모듈용 데이터베이스를 수동으로 생성해야 합니다.

따라서 MySQL 프롬프트에 로그인하세요.

sudo mysql -u root -p

icinga2-ido-mysql에 대한 데이터베이스 및 데이터베이스 사용자를 생성한 다음 해당 데이터베이스의 데이터베이스 사용자에게 모든 권한을 부여합니다.

데이터베이스 및 데이터베이스 사용자에 대해 임의의 이름을 자유롭게 사용하십시오.

> CREATE DATABASE icinga_ido_db;
> GRANT ALL ON icinga_ido_db.* TO 'icinga_ido_user'@'localhost' IDENTIFIED BY 'Password321';
> FLUSH PRIVILEGES;
> EXIT;

다음으로, 다음과 같이 Icinga2 IDO 스키마를 가져옵니다. 메시지가 나타나면 MySQL 루트 비밀번호를 입력하세요.

sudo mysql -u root -p icinga_ido_db < /usr/share/icinga2-ido-mysql/schema/mysql.sql

5단계: Icinga-IDO MySQL 모듈 활성화

IDO MySQL 패키지에는 ido-mysql.conf라는 기본 구성 파일이 있습니다. 방금 생성한 데이터베이스에 대한 연결을 허용하려면 몇 가지 사항을 변경해야 합니다.

따라서 구성 파일을여십시오.

sudo vim /etc/icinga2/features-available/ido-mysql.conf

스크롤하여 이 섹션으로 이동한 후 데이터베이스 세부정보를 제공하세요.

변경 사항을 저장하고 구성 파일을 종료합니다. 그런 다음, 다음과 같이 ido-mysql 모듈을 활성화합니다.

sudo icinga2 feature enable ido-mysql

변경 사항을 적용하려면 Icinga2를 다시 시작하세요.

sudo systemctl restart icinga2

6단계: Debian에 IcingaWeb2 설치

다음으로 Icinga용 간단하고 직관적이며 반응성이 뛰어난 웹 인터페이스인 IcingaWeb2를 설치하고 구성하겠습니다.

먼저 Icinga CLI와 함께 IcingaWeb2를 다음과 같이 설치합니다.

sudo apt install icingaweb2 icingacli -y

설치가 완료되면 Icinga Web 2용 데이터베이스를 만듭니다.

sudo mysql -u root -p

그런 다음 Icingaweb2에 대한 데이터베이스 및 데이터베이스 사용자를 생성하고 데이터베이스의 데이터베이스 사용자에게 모든 권한을 부여합니다.

> CREATE DATABASE icingaweb2;
> GRANT ALL ON icingaweb2.* TO 'icingaweb2user'@'localhost' IDENTIFIED BY 'P@ssword';
> FLUSH PRIVILEGES;
> EXIT;

다음으로, 웹 브라우저에서 설정을 완료할 때 인증에 사용될 비밀 토큰을 생성합니다.

sudo icingacli setup token create

브라우저에서 Icinga2 설정을 완료할 때 필요하므로 토큰을 기록해 안전한 곳에 붙여넣으세요.

7단계: IcingaWeb2 설치 완료

Icinga 설치의 마지막 단계는 브라우저에서 설정을 마무리하는 것입니다. 따라서 브라우저를 실행하고 표시된 URL로 이동하십시오.

http://server-ip/icingaweb2/setup

그러면 이전 단계에서 생성한 보안 토큰으로 인증해야 하는 이 페이지로 이동됩니다. 보안 토큰을 붙여넣고 '다음'을 클릭하세요.

다음 단계에서는 활성화할 수 있는 모든 모듈을 표시합니다. 모니터링 모듈은 기본적으로 활성화되어 있습니다. 필요에 따라 추가 모듈을 활성화할 수 있습니다.

다음 페이지는 기본적으로 활성화해야 하는 모든 PHP 모듈의 체크리스트입니다. 필요한 모든 PHP 모듈이 설치되어 있고 오류가 표시되지 않는지 확인하십시오. 그런 다음 아래로 스크롤하여 '다음'을 클릭하여 다음 단계로 이동하세요.

인증을 위해 '데이터베이스'를 선택하고 '다음'을 클릭하세요.

다음 단계에서는 6단계에서 지정한 IcingaWeb2에 대한 데이터베이스 세부정보를 입력합니다.

아래로 스크롤하여 '구성 확인'을 클릭합니다.

세부 정보가 정확하면 모든 것이 잘 진행되었다는 알림을 받게 됩니다. 아래로 스크롤하여 '다음'을 클릭하세요.

다음 단계에서는 '다음'을 클릭하여 기본 설정을 수락하고 설치를 진행하세요.

다음으로, Icinga2 WebUI에 로그인하는 데 사용할 사용자의 관리자 계정을 구성하세요.

다음 단계에서는 '다음'을 클릭하여 기본 애플리케이션 구성 세부정보를 수락하면 됩니다.

이 단계에서 Icinga Web 2가 성공적으로 구성되었습니다. 구성 세부정보를 검토하고 모든 것이 올바르게 설정되었는지 확인하세요. 그런 다음 아래로 스크롤하여 '다음'을 클릭하세요.

다음 섹션에서는 Icinga Web 2에 대한 Icinga 모니터링 모듈 구성을 안내합니다. 이는 강력한 필터링 기능을 갖춘 상태 및 보고 보기를 제공하는 핵심 모듈입니다.

시작하려면 '다음'을 클릭하세요.

모니터링 백엔드 유형으로 'IDO'를 선택하고 '다음'을 클릭합니다.

그런 다음 4단계에 지정된 대로 icinga-ido-mysql 모니터링 모듈에 대한 데이터베이스 세부정보를 제공합니다.

아래로 스크롤하여 '구성 확인'을 클릭합니다. 연결 세부 정보가 올바른 경우 구성이 성공적으로 검증되었다는 알림을 받아야 합니다.

다음 단계로 진행하려면 아래로 스크롤하여 '다음'을 클릭하세요. '명령 전송' 섹션에서 전송 유형으로 '로컬 명령 파일'을 선택합니다. '다음'을 클릭하세요.

'보안 모니터링' 섹션에서 '다음'을 눌러 기본값을 수락합니다.

모니터링 모듈의 모든 구성 세부 정보를 검토하고 모든 것이 올바른지 확인하세요. 그런 다음 아래로 스크롤하여 '마침'을 클릭하세요.

Icinga Web 2가 성공적으로 설정되었다는 알림을 받아야 합니다. WebUI에 로그인하려면 'Icinga Web 2에 로그인' 버튼을 클릭하세요.

그림과 같이 로그인 페이지가 나타납니다. Icinga 관리자 자격 증명을 제공하고 '로그인' 버튼을 클릭하세요.

그러면 그림과 같이 Icinga 대시보드로 이동됩니다. 기존 문제가 표시됩니다. 예를 들어 업그레이드가 보류 중인 패키지가 6개 있는 것을 볼 수 있습니다.

이를 확인하기 위해 터미널로 가서 보류 중인 업그레이드가 있는 패키지를 나열합니다.

sudo apt list --upgradable

출력에서 실제로 6개의 패키지에 업그레이드가 있음을 확인할 수 있습니다. 이러한 패키지를 업그레이드하려면 다음을 실행하면 됩니다.

sudo apt upgrade -y

이것으로 오늘의 가이드를 마무리합니다. 언급한 대로 설치 시간이 꽤 길고 세부 사항에 많은 주의가 필요합니다. 그럼에도 불구하고 후자의 단계를 주의 깊게 따르면 모든 것이 잘 될 것입니다.

이 가이드에서는 Debian 11/10Icinga2 모니터링 도구를 설치하는 방법을 시연했습니다.