翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Slurm ログのローテーション
SageMaker HyperPod は、Slurm デーモンログの自動ログローテーションを提供し、ディスク容量の使用状況を管理し、システムパフォーマンスを維持します。ログのローテーションは、ログが過剰なディスク容量を消費するのを防ぎ、最新のログ情報を維持しながら古いログファイルを自動的にアーカイブおよび削除することで、最適なシステムオペレーションを確保するために不可欠です。Slurm ログのローテーションは、クラスターの作成時にデフォルトで有効になっています。
ログローテーションの仕組み
有効にすると、ログローテーション設定は次のようになります。
-
コントローラー、ログインノード、コンピューティングノードの
/var/log/slurm/フォルダ.logにある 拡張子を持つすべての Slurm ログファイルをモニタリングします。 -
50 MB のサイズに達したときにログをローテーションします。
-
削除する前に、最大 2 つのローテーションされたログファイルを維持します。
-
ローテーション
slurmdbd後に Slurm デーモン (slurmctld、slurmd、) に SIGUSR2 シグナルを送信します。
ローテーションされたログファイルのリスト
Slurm ログは /var/log/slurm/ ディレクトリにあります。ログローテーションは、 に一致するすべてのファイルに対して有効になります/var/log/slurm/*.log。ローテーションが発生すると、ローテーションされたファイルには数値サフィックス ( などslurmd.log.1) があります。次のリストはすべてを網羅しているわけではありませんが、自動的にローテーションする重要なログファイルの一部を示しています。
-
/var/log/slurm/slurmctld.log -
/var/log/slurm/slurmd.log -
/var/log/slurm/slurmdb.log -
/var/log/slurm/slurmrestd.log
ログローテーションを有効または無効にする
次の例に示すように、クラスターのライフサイクルconfig.pyスクリプトのスクリプトで enable_slurm_log_rotationパラメータを使用してログローテーション機能を制御できます。
class Config: # Set false if you want to disable log rotation of Slurm daemon logs enable_slurm_log_rotation = True # Default value
ログのローテーションを無効にするには、次の例に示すようにFalse、 パラメータを に設定します。
enable_slurm_log_rotation = False
注記
ライフサイクルスクリプトは、クラスターの作成中にすべての Slurm ノード (コントローラー、ログイン、コンピューティングノード) で実行されます。また、クラスターに追加されると、新しいノードでも実行されます。ログローテーション設定の更新は、クラスターの作成後に手動で行う必要があります。ログローテーション設定は に保存されます/etc/logrotate.d/sagemaker-hyperpod-slurm。ログファイルが過剰なディスク容量を消費しないように、ログローテーションを有効にしておくことをお勧めします。ログのローテーションを無効にするには、sagemaker-hyperpod-slurmファイルを削除するか、sagemaker-hyperpod-slurmファイル内の各行の先頭#に を追加してその内容をコメントアウトします。
デフォルトのログローテーション設定
次の設定は、ローテーションされるログファイルごとに自動的に設定されます。
| 設定 | 値 | 説明 |
|---|---|---|
rotate |
2 | 保持するローテーションされたログファイルの数 |
size |
50MB | ローテーション前の最大サイズ |
copytruncate |
有効 | 元のログファイルをコピーして切り捨てます。 |
compress |
無効 | ローテーションされたログは圧縮されません |
missingok |
有効 | ログファイルがない場合、エラーは発生しません |
notifempty |
有効 | 空のファイルはローテーションしません |
noolddir |
有効 | ローテーションされたファイルは同じディレクトリに保持されます |