Debian 9에서 Monit를 설치하고 구성하는 방법
이 페이지에서
- 요구 사항\n
- 1.시스템 업데이트
- 2. 모니터 설치
- 3 모니터 구성
- 4 Monit 웹 인터페이스 액세스
- 5 모니터링 서비스 추가
- Apache 서비스용 Monit 구성
- Rsyslog 서비스에 대한 Monit 구성\n
- Proftpd 서비스용 Monit 구성
Monit은 웹 브라우저와 명령줄을 사용하여 시스템 프로세스를 모니터링하는 데 사용할 수 있는 무료 오픈 소스 프로세스 모니터링 도구입니다. 또한 크기 변경 및 권한 변경을 위해 파일, 디렉토리 및 장치를 모니터링하는 데 사용됩니다. 모니터는 다운되면 특정 프로세스를 자동으로 복구합니다. Monit은 또한 Linux 기반 시스템에서 Apache, Sendmail, Nginx, FTP, SSH 및 MySQL과 같은 대부분의 서비스를 모니터링할 수 있습니다. Monit을 사용하여 원격 호스트의 TCP/IP 포트, 프로토콜 및 핑을 모니터링할 수 있습니다. Monit에는 container.style.width=100%;var ins=document.createElement(ins);ins.id=slotId+-asloaded;ins.className=adsbygoogle ezasloaded;ins.dataset.adClient=pid;ins .dataset.adChannel=cid;if(ffid==2){ins.dataset.fullWidthResponsive=true;}
특징
- 특정 프로세스를 자동으로 시작, 중지 및 종료합니다.\n
- 상태 모니터링을 위한 사용자 친화적인 웹 인터페이스.\n
- 심각한 상태에 대해 이메일을 통해 알립니다.\n
- 시스템 부하, CPU 사용량, RAM 사용량, 디스크, 파일 크기 변경, 권한 변경 등을 확인합니다.\n
- 다양한 프로토콜 HTTP, FTP, SSH, POP, IMAP, LDAP, IMAP 및 SMTM을 모니터링합니다.\n
- syslog 또는 자체 로그 파일을 통한 로깅.\n
이 튜토리얼에서는 Debian 9에서 Monit을 설정하고 사용하는 방법을 설명합니다.
요구 사항
- 시스템에 설치된 새로운 Debian 9 서버.
- 루트 암호는 서버에 설정되어 있습니다.\n
1. 시스템 업데이트
시스템을 최신 안정 버전으로 업데이트하여 시작하겠습니다. 다음 명령으로 업데이트할 수 있습니다.
apt-get update -y
apt-get upgrade -y시스템이 업데이트되면 시스템을 다시 시작하여 다음 명령으로 변경 사항을 적용하십시오.
reboot
다시 시작한 후 루트 사용자로 로그인하고 다음 단계를 진행합니다.
2. 모니터 설치
기본적으로 Monit은 Ubuntu 저장소에서 사용할 수 있습니다. 다음 명령을 실행하여 쉽게 설치할 수 있습니다.
apt-get install monit -y
Monit이 설치되면 Monit 서비스를 시작하고 다음 명령을 실행하여 부팅 시 시작되도록 활성화합니다.
systemctl start monit
systemctl enable monit다음 명령을 실행하여 언제든지 Monit 서비스의 상태를 확인할 수 있습니다.
systemctl status monit
3 모니터 구성
Monit 기본 구성 파일 monitrc는 /etc/monit/ 디렉토리에 있고 다른 프로세스 및 서버 특정 구성 파일은 /etc/monit/conf-available/ 디렉토리에 있습니다. Monit은 웹 인터페이스가 내장되어 있지만 기본적으로 비활성화되어 있습니다. 다음과 같이 /etc/monit/monitrc 파일을 편집하여 활성화할 수 있습니다.
nano /etc/monit/monitrc
다음에서 줄을 변경합니다.
# set httpd port 2812 and # use address localhost # only accept connection from localhost # allow localhost # allow localhost to connect to the server and # allow admin:monit # require user 'admin' with password 'monit'
에게
set httpd port 2812 and allow admin:monit # require user 'admin' with password 'monit'
완료되면 파일을 저장하고 닫은 다음 monit 서비스를 다시 시작하여 다음 명령으로 이러한 변경 사항을 적용합니다.
systemctl restart monit
다음 명령을 사용하여 Monit 서비스 상태를 확인할 수 있습니다.
netstat -ant | grep :2812
다음 출력이 표시되어야 합니다.
tcp 0 0 0.0.0.0:2812 0.0.0.0:* LISTEN 1615/monit tcp6 0 0 :::2812 :::* LISTEN 1615/monit
4 Monit 웹 인터페이스 액세스
URL http://192.168.0.227:2812를 사용하여 Monit 웹 인터페이스에 액세스한 다음 사용자 이름 admin 및 암호 monit를 입력할 수 있습니다. 다음과 같이 Monit 대시보드가 표시되어야 합니다.
다음 명령을 사용하여 Minit의 상태를 볼 수 있습니다.
monit status
다음 출력이 표시되어야 합니다.
System 'localhost' status Running monitoring status Monitored load average [0.68] [0.78] [0.45] cpu 0.0%us 0.0%sy 0.0%wa memory usage 294.1 MB [14.7%] swap usage 0 B [0.0%] data collected Mon, 07 Aug 2017 20:12:36
완료되면 다음 단계로 진행할 수 있습니다.
5 모니터링 서비스 추가
Monit 웹 인터페이스가 구성되면 모니터링할 서비스를 추가해야 합니다.
여기에서는 Apache, Proftpd 및 Rsyslog와 같은 일부 서비스를 모니터링하는 몇 가지 예를 제공합니다.
Apache 서비스용 Monit 구성
기본적으로 Monit은 일부 프로세스 및 서비스에 대해 미리 정의된 템플릿과 함께 제공됩니다. /etc/monit/conf-available/ 디렉토리에서 이러한 템플릿을 찾을 수 있습니다. 기본적으로 Apache용 템플릿은 Monit에서 사용할 수 있습니다. 따라서 활성화하기만 하면 됩니다. 다음 명령을 실행하여 활성화할 수 있습니다.
ln -s /etc/monit/conf-available/apache2 /etc/monit/conf-enabled/
그런 다음 monit servcie를 다시 시작하여 다음 명령으로 이러한 변경 사항을 적용합니다.
systemctl restart monit
Rsyslog 서비스에 대한 Monit 구성
먼저 다음 명령을 사용하여 Rsyslog 템플릿을 활성화합니다.
ln -s /etc/monit/conf-available/rsyslog /etc/monit/conf-enabled/
그런 다음 monit 서비스를 다시 시작하여 다음 명령을 사용하여 이러한 변경 사항을 적용합니다.
systemctl restart monit
Proftpd 서비스에 대한 Monit 구성
Proftpd용 템플릿은 Monit에서 사용할 수 없습니다. 따라서 Proftpd용 구성 파일을 만들어야 합니다. 다음과 같이 /etc/monit/conf-available/ 디렉토리 내에 proftpd 파일을 생성하여 이를 수행할 수 있습니다.
nano /etc/monit/conf-available/proftpd
다음 줄을 추가합니다.
check process proftpd with pidfile /var/run/proftpd.pid start program = "/etc/init.d/proftpd start" stop program = "/etc/init.d/proftpd stop" if failed port 21 protocol ftp then restart
완료되면 파일을 저장하고 닫은 후 다음 명령을 사용하여 구성 파일을 활성화합니다.
ln -s /etc/monit/conf-available/proftpd /etc/monit/conf-enabled
다음으로 다음 명령을 사용하여 구성 파일에서 구문 오류가 있는지 확인합니다.
monit -t
마지막으로 다음 명령을 사용하여 이러한 변경 사항을 적용하려면 monit 서비스를 다시 시작하십시오.
systemctl restart monit
필요한 모든 서비스를 구성했으면 웹 인터페이스에 액세스하여 아래와 같이 모든 서비스를 모니터링합니다.
다음으로 아파치 서비스를 클릭하여 아파치에 대한 자세한 정보를 확인합니다.
6 명령줄을 통한 모니터링 모니터링
명령줄에서 Monit을 모니터링할 수도 있습니다. 다음 명령을 실행하여 monit의 빠른 요약을 볼 수 있습니다.
monit summary
다음 출력이 표시되어야 합니다.
The Monit daemon 5.16 uptime: 0m Process 'rsyslogd' Initializing - start pending File 'rsyslogd_bin' Accessible File 'rsyslogd_rc' Accessible File 'rsyslog_file' Does not exist Process 'proftpd' Running Process 'apache' Execution failed File 'apache_bin' Accessible File 'apache_rc' Accessible System 'localhost' Running
다음 명령을 사용하여 모든 서비스의 상태를 볼 수도 있습니다.
monit status
다음 출력이 표시되어야 합니다.
The Monit daemon 5.16 uptime: 0m Process 'rsyslogd' status Initializing - start pending monitoring status Initializing data collected Mon, 07 Aug 2017 20:41:18 File 'rsyslogd_bin' status Accessible monitoring status Monitored permission 755 uid 0 gid 0 size 585.3 kB timestamp Tue, 25 Oct 2016 11:38:40 checksum d71f3d1c58df065e3aac1e2c566a6436 (MD5) data collected Mon, 07 Aug 2017 20:41:18 File 'rsyslogd_rc' status Accessible monitoring status Monitored permission 755 uid 0 gid 0 size 2.7 kB timestamp Tue, 25 Oct 2016 11:48:29 checksum a1ef1bb01ba370040d705c92fc09e92e (MD5) data collected Mon, 07 Aug 2017 20:41:18 File 'rsyslog_file' status Does not exist monitoring status Monitored data collected Mon, 07 Aug 2017 20:41:18 Process 'proftpd' status Running monitoring status Monitored pid 4915 parent pid 1 uid 0 effective uid 119 gid 65534 uptime 3m threads 1 children 0 memory 3.6 MB memory total 3.6 MB memory percent 0.2% memory percent total 0.2% cpu percent 0.0% cpu percent total 0.0% port response time 10.737 ms to [localhost]:21 type TCP/IP protocol FTP data collected Mon, 07 Aug 2017 20:41:18 Process 'apache' status Execution failed monitoring status Monitored data collected Mon, 07 Aug 2017 20:41:48 File 'apache_bin' status Accessible monitoring status Monitored permission 755 uid 0 gid 0 size 647.0 kB timestamp Sat, 29 Jul 2017 22:19:09 checksum ef2a678bdcd791948ceabc3013d9a2c0 (MD5) data collected Mon, 07 Aug 2017 20:41:18 File 'apache_rc' status Accessible monitoring status Monitored permission 755 uid 0 gid 0 size 7.9 kB timestamp Mon, 07 Aug 2017 20:40:33 checksum 744ef9ca584493299c353e2251cbf993 (MD5) data collected Mon, 07 Aug 2017 20:41:18 System 'localhost' status Running monitoring status Monitored load average [0.96] [0.60] [0.46] cpu 0.0%us 0.0%sy 0.0%wa memory usage 266.4 MB [13.3%] swap usage 2.1 MB [0.4%] data collected Mon, 07 Aug 2017 20:41:18
Proftpd 서비스에 대한 자세한 정보를 보려면 다음 명령을 실행하십시오.
monit status proftpd
다음 출력이 표시되어야 합니다.
The Monit daemon 5.16 uptime: 2m Process 'proftpd' status Running monitoring status Monitored pid 4915 parent pid 1 uid 0 effective uid 119 gid 65534 uptime 6m threads 1 children 0 memory 3.6 MB memory total 3.6 MB memory percent 0.2% memory percent total 0.2% cpu percent 0.0% cpu percent total 0.0% port response time 7.945 ms to [localhost]:21 type TCP/IP protocol FTP data collected Mon, 07 Aug 2017 20:43:49
축하해요! Debian 9 서버에 Monit을 성공적으로 설치하고 구성했습니다.