Linuxでの大規模バッファ使用量の追跡

Linuxでの大規模バッファ使用量の追跡

私は4Goメモリを搭載したDebian Lennyで動作するLinuxサーバーを持っています。あまり実行されません。

  • Postfix / spamassassin(デーモンモード)
  • バインディング9
  • KVM(ゲスト1人 - 1Go RAM)

毎日正確に3:05 UTCでは、ほぼすべてのサーバーメモリが完全に床に落ちます。その後、私のバッファは2G以上で使用され、決して消去されませんでした(カーネルにキャッシュを削除するように手動で指示しない限り)。

私はオンラインでたくさん検索しましたが、最初はNFSバッファを使用するためだと思いました。 NFS共有ドライブを介してバックアップを作成するためにgzip / tarを使用しましたが、バックアップは3時5分に行われました。

ところで、今は非常に奇妙な状況に直面しています。バックアップジョブを1時40分に移動しました(2分で完了)、まだ3時5分にRAMをすべて削除したためです。

私のログには特別なものはありません。 03:05:01にcronがrootとしてセッションを開き、03:05:02に何もせずにすぐにセッションを閉じます。もちろん、cronが再起動し、作業時間を確認しました。もう一度特別なことはありません。

なぜこれが起こるのかご存知ですか?それとも、これらすべてのバッファを使用することが何であるかを追跡する方法を知っていますか?


編集する: サーバーは UTC として実行され、ここのすべての時間は UTC です。 NFSサーバーを実行しておらず、mlocateまたはslocateがインストールされていません。 crontab、daily、およびユーザーcrontabの場合、この期間中は何もしません。

私のログのcronの興味深い部分は次のとおりです。

auth.log-20110501: 5 月 1 日 03:05:01 SRV CRON[15914]: pam_unix(cron:session): (uid=0) ユーザー ルートのセッションがオープン
auth.log-20110501: 5 月 1 日03: 05:01 SRV CRON[15914]: pam_unix(cron:session): ユーザーのルートに対するセッションが閉じられました。
syslog-20110501: 5月1日 03:05:01 SRV /USR/SBIN/CRON[15915]: (root) CMD ([ -x /usr / lib/sysstat/sa1 ] && { [ -r "$DEFAULT" ] && . "$DEFAULT" ; [ "$ENABLED" = "true" ] && exec /usr/lib/sysstat/sa1 $SA1_OPTIONS 1 1 ;

ベストアンサー1

サーバーはUTCで実行されていますか?ほとんどは、UTC + 1(METまたはCET)のローカルタイムゾーンで実行されます。私がこの質問をする理由は、crontabで使用されている時間帯を知る必要があるからです。たとえば、3.05はcrontabから3.05として呼び出されない可能性があります。

過度のディスクアクセスを実行する一般的な操作には、makewhatis/man-dbおよびslocate/が含まれますmlocate。 3.05の周りで実行されていないことをもう一度確認してください。たとえば、/etc/crontabとを見てください/etc/cron.daily。ユーザーのcronタブを確認してください/var/spool/cron

クローンログなしで3.05で何が実行されているかを見つける2つの方法を考えることができます。

1つ目は、auditctl使用するのが少し痛いということです。

マニュアルページによると、以下を試してください。

$ sudo auditctl -a entry,always -S open -S creat \
    -S read -S readv -S write -S writev -S sendfile \
    -S fork -S clone -S execve -k 305

監査を設定してから

$ sudo aureport -s -i -ts 03:04 -te 03:06

3.05以降にシステムにログインし、何が起こったかを確認してください。

2番目は簡単ですps。複数回実行されるスクリプトを作成し、ps3.04で実行するようにスケジュールするだけです。

どのプロセスがI / Oを実行しているかを確認し、どのプロセスが現在最も多くのCPUを使用しているかを確認するフィールドなど、いくつかの側面がここpsで役立ちます。もちろん、3.04.59リストには表示されませんが、3.05.01またはその直後に表示されるすべてのプロセスも明らかに疑わしいです。wchanstatuspcpu

おすすめ記事