웹사이트 검색

Debian 9에서 Monit를 설치하고 구성하는 방법


이 페이지에서

  1. 요구 사항\n
  2. 1.시스템 업데이트
  3. 2. 모니터 설치
  4. 3 모니터 구성
  5. 4 Monit 웹 인터페이스 액세스
  6. 5 모니터링 서비스 추가
    1. Apache 서비스용 Monit 구성
    2. Rsyslog 서비스에 대한 Monit 구성\n
    3. 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;}

    특징

    1. 특정 프로세스를 자동으로 시작, 중지 및 종료합니다.\n
    2. 상태 모니터링을 위한 사용자 친화적인 웹 인터페이스.\n
    3. 심각한 상태에 대해 이메일을 통해 알립니다.\n
    4. 시스템 부하, CPU 사용량, RAM 사용량, 디스크, 파일 크기 변경, 권한 변경 등을 확인합니다.\n
    5. 다양한 프로토콜 HTTP, FTP, SSH, POP, IMAP, LDAP, IMAP 및 SMTM을 모니터링합니다.\n
    6. 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을 성공적으로 설치하고 구성했습니다.