웹사이트 검색

Monit 설치 및 구성 방법


모닛 소개

Monit은 서버 프로그램을 자동으로 모니터링하고 관리하여 서버 프로그램이 지속적으로 온라인 상태를 유지할 뿐만 아니라 파일 크기, 체크섬 또는 권한이 항상 올바른지 확인하는 유용한 프로그램입니다. 또한 monit에는 모든 프로세스를 설정할 수 있는 기본 웹 인터페이스가 함께 제공됩니다. 이 자습서에서는 가장 기본적인 설정 및 구성을 다룹니다.

모니터 설치

Monit은 apt-get을 통해 설치하는 것이 가장 쉽습니다.

sudo apt-get install monit

monit가 다운로드되면 구성 파일에 프로그램과 프로세스를 추가할 수 있습니다.

sudo nano /etc/monit/monitrc

Monit은 백그라운드에서 계속 실행되는 명령으로 시작할 수 있습니다.

monit

monit status를 입력하면 monit의 세부 정보가 표시됩니다.

The Monit daemon 5.3.2 uptime: 1h 25m 

System 'myhost.mydomain.tld'
  status                            Running
  monitoring status                 Monitored
  load average                      [0.03] [0.14] [0.20]
  cpu                               3.5%us 5.9%sy 0.0%wa
  memory usage                      26100 kB [10.4%]
  swap usage                        0 kB [0.0%]
  data collected                    Thu, 30 Aug 2012 18:35:00

모니터 구성

Monit은 거의 즉시 사용할 수 있습니다. 기본적으로 서비스가 2분마다 실행되고 있는지 확인하고 해당 로그 파일을 "/var/log/monit.log”에 저장하도록 설정되어 있습니다.

이러한 설정은 각각 set daemonset logfile 줄의 구성 파일 시작 부분에서 변경할 수 있습니다.

웹 서비스

Monit은 포트 2812에서 실행되는 자체 웹 서버와 함께 제공됩니다. 웹 인터페이스를 구성하려면 set httpd port 2812로 시작하는 섹션을 찾아 주석 처리를 제거하십시오. 섹션의 주석을 제거한 후 서버의 IP 또는 도메인 이름을 주소로 쓰고 누구나 연결할 수 있도록 한 다음 monit 사용자 및 암호를 만듭니다.

set httpd port 2812
    use address 12.34.56.789  # only accept connection from localhost
    allow 0.0.0.0/0.0.0.0        # allow localhost to connect to the server and
    allow admin:monit      # require user 'admin' with password 'monit'

이것이 구성되면 monit는 구성 파일을 다시 로드하고 다시 읽어야 하며 웹 인터페이스를 사용할 수 있습니다.

monit reload

그런 다음 "example.com:2812”로 이동하여 monit 웹 인터페이스에 액세스할 수 있습니다.

선택한 사용자 이름과 비밀번호로 로그인합니다. 화면은 다음과 같아야 합니다.

프로그램 자체 모니터링 구성

웹 서비스가 설정되면 모니터링하고 보호하려는 프로그램을 "/etc/monit/monitrc" 구성 파일에 입력할 수 있습니다. 프로그램을 온라인 상태로 유지하기 위해 /etc/init.d 명령을 사용하여 프로그램을 중지하거나 시작할 수 있습니다.

다음은 몇 가지 구성 예입니다.

아파치:

check process apache with pidfile /run/apache2.pid
    start program = "/etc/init.d/apache2 start" with timeout 60 seconds
    stop program  = "/etc/init.d/apache2 stop"

MySQL

check process mysqld with pidfile /var/run/mysqld/mysqld.pid
    start program = "/etc/init.d/mysql start"
    stop program = "/etc/init.d/mysql stop"

엔진엑스

check process nginx with pidfile /var/run/nginx.pid
    start program = "/etc/init.d/nginx start"
    stop program = "/etc/init.d/nginx stop"

마무리

실행하려는 모든 프로그램을 구성하면 자동으로 추적되고 꺼지면 다시 시작됩니다.

웹 인터페이스 또는 명령줄을 통해 프로그램을 제어할 수 있습니다.

구성을 설정한 후 구문을 확인하십시오.

monit -t

가능한 구문 오류를 해결한 후 모니터링되는 모든 프로그램 실행을 시작할 수 있습니다.

monit start all