この章では、Messaging Server の監視機能に注目します。ただし、サーバーが動作しているシステムも、同時に監視することが必要です。適切に設定されたサーバーであっても、設定が適切ではないシステム上では、本来の性能を発揮しないことがあるからです。また、サーバーエラーの発生は、ハードウェアの処理能力がメールシステムの動作には十分ではない場合もあります。この章では、システムパフォーマンスの監視の詳細についてすべて説明しているわけではありません。これらの手順の多くはプラットフォーム固有のものであり、プラットフォーム固有のシステムのマニュアルを参照することが必要になる場合もあります。パフォーマンスを監視する手順を次に示します。
電子メールは時間どおりに配信する必要があります。これがサービス契約の要件になっていることもあります。また、メールをできるだけ速く配信することは良いポリシーでもあります。終端間の時間が遅いことは、多くの事柄を示している可能性があります。たとえば、サーバーが正しく作動していない、1 日の特定の時間にメッセージが処理不能になる、既存のハードウェアリソースの容量を超えている、などです。
メールの配信に、通常よりも長い時間がかかります。
メッセージを送信および受信する機能を使用します。サーバーのホップ間のヘッダー時間、および始点と取り出しの時間を比較します。「27.8.1 immonitor-access」を参照してください。
ディスクの空き容量の不足は、メールサーバーで発生する問題や故障のうち、特に頻繁におきる原因の 1 つです。MTA キューやメッセージストアへ書き込むとき、そのための容量が不足していると、メールサーバーにエラーが発生します。さらに、ログファイルを監視およびクリーンアップしないと、ログファイルが制御できないほど大きくなり、ディスク容量を使い果たすことがあります。
メッセージストアパーティションは、新しいメッセージがメールボックスに配信されるたびに大きくなります。たとえば、メッセージストアに制限容量を課さない場合、メッセージストアがパーティションに利用できるディスク容量より大きくなることがあります。ディスク容量が不足するもう 1 つの原因は、MTA メッセージキューが大きくなりすぎることです。3 番目の原因としては、ログファイル監視機能に問題が発生し、ログファイルが制御できないほど大きくなってしまう場合が考えられます。ログファイルには、LDAP、MTA、および Message Access など、多数のものがあり、それらの各ログファイルは別のディスクに保存することができることに注意してください。
容量の低下によって発生する兆候は、ディスクやパーティションによって異なります。MTA キューがオーバーフローして SMTP 接続を拒否したり、メッセージが ims_master キューに残されたままでメッセージストアに配信されなくなったり、ログファイルがオーバーフローしたりすることがあります。
メッセージストアパーティションが一杯になると、メッセージアクセスデーモンが失敗したり、メッセージストアデータが壊れたりすることがあります。imexpire や reconstruct などのメッセージストア保守ユーティリティーは、破損を修復したり、ディスク使用量を削減したりすることができます。ただし、それらのユーティリティーはさらにディスク容量を必要とし、ディスク全体を占有したパーティションの修復はダウン時間の発生原因になります。
システムの構成に従って、さまざまなディスクやパーティションを監視する必要があります。たとえば、MTA キューが 1 つのディスクやパーティション上にあり、メッセージストアが別の場所にあり、ログファイルがさらに別の場所にあるとします。この場合、それらの容量のそれぞれを監視する必要があり、その容量を監視する方法は異なることがあります。
Messaging Server は、メッセージストアディスクの使用量を監視し、パーティションがすべての利用可能なディスク容量を使い果たすのを防止する手段を提供します。
次の手順で、メッセージストアのディスク容量の使用状況を監視できます。
メッセージストアのディスク使用量を監視するためのパラメータを設定します。
ディスク使用量のしきい値に達したら、メッセージストアパーティションをロックします。
詳細は、次の節の「メッセージストアを監視する」と「メッセージストアのパーティションを監視する」を参照してください。
メッセージストアのディスク容量は、75% を超えないようにすることをお勧めします。メッセージストアのディスク使用量を監視するには、configutil ユーティリティーを使用して次の警告属性を設定します。
これらのパラメータを設定することによって、システムがディスク容量を監視する頻度と、どのような状況で警告を送信するかを指定することができます。たとえば、システムがディスク容量を 600 秒毎に監視するようにするには、次のコマンドを指定します。
configutil -o alarm.diskavail.msgalarmstatinterval -v 600
使用可能なディスク容量が 20% を下回ったら常に警告を受け取るようにするには、次のコマンドを指定します。
configutil -o alarm.diskavail.msgalarmthreshold -v 20
これらのパラメータの詳細については、表 27–6 を参照してください。
利用可能なディスク容量の指定された割合をパーティションが超過したら、メッセージをメッセージストアパーティションに配信するのを停止できます。このためには、2 つの configutil パラメータを使って、その機能を有効にし、ディスク使用量のしきい値を指定します。
この機能を使用して、メッセージストアデーモンはパーティションのディスク使用量を監視します。ディスクの使用量が増加するにつれ、ストアデーモンは動的にパーティションをチェックする頻度 (100 分に 1 回〜 1 分に 1 回) を増やします。
ディスク使用量が指定されたしきい値を超えた場合、ストアデーモンは次のようにします。
パーティションをロックします。着信メッセージは MTA メッセージキューに保持されますが、メッセージストアパーティション内のメールボックスには配信されません。
メッセージをデフォルトのログファイルに記録します。
ポストマスターに電子メール通知を送信します。configutil パラメータの alarm.msgalarmnoticercpt を設定して、電子メールの受信者を変更できます。
ディスクの使用量がしきい値を下回ると、パーティションのロックが解除され、メッセージはまたストアに配信されるようになります。
次のような configutil パラメータがあります。
local.store.checkdiskusage は、パーティション監視機能を有効にします。
許容可能な値: yes、no
デフォルト値 : yes
local.store.diskusagethreshold は、ディスク使用量のしきい値を指定します。local.store.diskusagethreshold の値は、1 〜 99 のパーセンテージです。
デフォルト値 : 99
ディスク使用量のしきい値には、ローカルメッセージストアを再パーティションしたり、さらに多くのディスク容量を割り当てたりするための時間が確保できる低いパーセンテージに設定する必要があります。
たとえば、パーティションが 1 時間に 2 パーセントの割合でディスク容量を使用していき、またローカルメッセージストアにさらにディスク容量を割り当てるのに 1 時間かかるとします。この場合は、ディスク使用量のしきい値を 98 パーセント未満の値に設定する必要があります。
MTA キューのディスクおよびログ領域のディスク使用量を監視する必要があります。
ログ領域の管理については、第 25 章「ログの管理」を参照してください。mail.log ファイルの監視方法については、「25.3 MTA メッセージおよび接続のログの管理」を参照してください。
CPU 使用状況が高い場合は、使用状況のレベルに対して CPU 容量が不足しているか、または適切なサイクルより多くの CPU サイクルを使用しているプロセスがあることを示しています。
システムの応答が悪くなります。ユーザーのログインに時間がかかります。また、配信速度が遅くなります。
CPU 使用状況の監視は、プラットフォーム固有のタスクです。関連するプラットフォームのマニュアルを参照してください。