Monitは、Webブラウザとコマンドラインを使用してシステムプロセスを監視するために使用できる、無料のオープンソースプロセス監視ツールです。また、サイズの変更や権限の変更について、ファイル、ディレクトリ、およびデバイスを監視するためにも使用されます。 Monitは、ダウンした場合に特定のプロセスを自動的に修復します。 Monitは、LinuxベースのシステムでApache、Sendmail、Nginx、FTP、SSH、MySQLなどのほとんどすべてのサービスを監視することもできます。 Monitを使用して、リモートホストのTCP / IPポート、プロトコル、およびpingを監視できます。 Monitには、高リソースを使用する特定のプロセスを停止する機能があります。 Monitはサーバーを監視し続け、重大なエラー状態と回復ステータスに関するアラートを送信します。
機能
- 特定のプロセスを自動的に開始、停止、強制終了します。
- ステータス監視のためのユーザーフレンドリーなウェブインターフェース。
- 重大な状態が発生した場合はメールで通知してください。
- システム負荷、CPU使用率、RAM使用率、ディスク、ファイルサイズの変更、権限の変更などを確認します。
- HTTP、FTP、SSH、POP、IMAP、LDAP、IMAP、SMTMのさまざまなプロトコルを監視します。
- syslogまたは独自のログファイルを介したロギング。
このチュートリアルでは、Debian9でMonitをセットアップして使用する方法を説明します。
- システムにインストールされた新しいDebian9サーバー。
- rootパスワードがサーバーに設定されています。
1。システムの更新
システムを最新の安定バージョンに更新することから始めましょう。次のコマンドで更新できます:
apt-get update -y
apt-get upgrade -y
システムが更新されたら、システムを再起動して、次のコマンドでこれらの変更を有効にします。
reboot
再起動後、rootユーザーでログインし、次の手順に進みます。
2。 Monitのインストール
デフォルトでは、MonitはUbuntuリポジトリで利用できます。次のコマンドを実行すると、簡単にインストールできます。
apt-get install monit -y
Monitがインストールされたら、Monitサービスを開始し、次のコマンドを実行して起動時に開始できるようにします。
systemctl start monit
systemctl enable monit
次のコマンドを実行すると、Monitサービスのステータスをいつでも確認できます。
systemctl status monit
3Monitの構成
Monitのデフォルト設定ファイルmonitrcは/etc/ monit /ディレクトリにあり、他のプロセスおよびサーバー固有の設定ファイルは/ etc / monit / conf-available/diractoryにあります。 MonitにはWebインターフェイスが組み込まれていますが、デフォルトでは無効になっています。次のように/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
4MonitWebインターフェイスへのアクセス
URLhttp://192.168.0.227:2812を使用してMonitWebインターフェースにアクセスし、ユーザー名 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 Webインターフェースを構成したら、監視するサービスを追加する必要があります。
ここでは、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
必要なすべてのサービスを構成したら、以下に示すように、Webインターフェイスにアクセスしてすべてのサービスを監視します。
次に、サービスapacheをクリックして、apacheに関する詳細情報を表示します。
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
おめでとう!これで、Debian9サーバーにMonitが正常にインストールおよび構成されました。