ディスク容量管理

ディスク容量が不足すると、SUSE Multi-Linux Managerデータベースとファイル構造に深刻な影響を及ぼす可能性があり、場合によっては回復できなくなります。

SUSE Multi-Linux Managerは、いくつかのディレクトリの空きディスクスペースを監視します。 監視するディレクトリや、systemdサービスのオーバーライドファイル内の環境変数を使用して作成される警告を変更できます。

監視対象ディレクトリのいずれかの使用可能容量が警告しきい値を下回ると、設定された電子メールアドレスにメッセージが送信され、サインインページの上部に通知が表示されます。

1. 監視対象ディレクトリ

デフォルトでは、SUSE Multi-Linux Managerサーバーコンテナは次のディレクトリを監視します:

  • /var/spacewalk

  • /var/cache

  • /srv

サーバーコンテナのsystemdサービス内で`DISKCHECKDIRS`環境変数を設定することで、監視するディレクトリを変更できます。 複数のディレクトリを指定するには、スペースで区切ります。

DISKCHECKDIRS`環境変数は、サーバーコンテナにのみ適用されます。 データベースコンテナは常に/var/lib/pgsql/data`を監視し、これはオーバーライドできません。

プロシージャ:監視ディレクトリの構成
  1. サーバーサービスのsystemdオーバーライドディレクトリを作成します:

    mkdir -p /etc/systemd/system/uyuni-server.service.d/
  2. カスタムディレクトリを含む設定ファイルを作成します:

    cat > /etc/systemd/system/uyuni-server.service.d/diskcheck.conf << 'EOF'
    [Service]
    Environment="DISKCHECKDIRS=/var/spacewalk /var/cache /srv"
    EOF
  3. SUSE Multi-Linux Managerを再起動して構成を適用します:

    mgradm restart

コンテナボリュームに関する詳細は、永続コンテナボリュームを参照してください。

2. しきい値

デフォルトでは、SUSE Multi-Linux Managerは監視ディレクトリが90%のディスク使用量に達したときに警告を作成します。 監視されているディレクトリが95%のディスク使用量に達すると、重要なアラートが作成され、コンテナのヘルスチェックが失敗します。

`DISKCHECKALERT`および`DISKTHRESHOLD`環境変数を設定することで、これらのアラートしきい値を変更できます。

プロシージャ:ディスクチェックの閾値の設定
  1. systemdオーバーライドディレクトリを作成します:

    mkdir -p /etc/systemd/system/uyuni-server.service.d/
    mkdir -p /etc/systemd/system/uyuni-db.service.d/
  2. サーバーおよびデータベースサービスのための設定ファイルを作成します:

    cat > /etc/systemd/system/uyuni-server.service.d/diskcheck.conf << 'EOF'
    [Service]
    Environment="DISKCHECKALERT=90"
    Environment="DISKTHRESHOLD=95"
    EOF
    
    cat > /etc/systemd/system/uyuni-db.service.d/diskcheck.conf << 'EOF'
    [Service]
    Environment="DISKCHECKALERT=90"
    Environment="DISKTHRESHOLD=95"
    EOF
  3. SUSE Multi-Linux Managerを再起動して構成を適用します:

    mgradm restart

マルチテラバイトのストレージボリュームを持つ大規模なデプロイメントの場合、ディスクスペースをより効率的に使用するために、より高い閾値を使用することをお勧めします。 例えば、10 TBのボリュームでは、5%の空き容量を維持することは500 GBの未使用を意味します。 大規模なデプロイメントのための調整推奨事項については、specialized-guides:large-deployments/tuning.adoc#diskcheck-thresholdsを参照してください。

3. データベースディスクチェック

データベースコンテナには、PostgreSQLデータディレクトリ(/var/lib/pgsql/data)のみを監視する独自のディスクチェックがあります。 このディレクトリは常に監視されており、`DISKCHECKDIRS`環境変数で変更またはオーバーライドすることはできません。

データベースのディスクチェックは、`uyuni-db`サービス用に設定された`DISKCHECKALERT`および`DISKTHRESHOLD`環境変数を使用します。

データベースディスクチェックはPostgreSQL関数として実行され、コンテナのヘルスチェック中に呼び出されます。 閾値が超過すると、ヘルスチェックが失敗し、データの破損を防ぐためにコンテナが自動的に停止します。

データベースコンテナは`/var/lib/pgsql/data`のみを監視します。 `DISKCHECKDIRS`を使用して、データベースコンテナで監視する追加のディレクトリを設定することはできません。 他のディレクトリを監視するには、サーバーコンテナの設定を使用してください。

4. スペースチェックの無効化

スペースチェックツールはデフォルトで有効になっており、Taskomaticのスケジュールされたタスクを介して毎時実行されます。 通知は、diskcheck-task-queue-default Taskomaticジョブを無効にすることで無効にできます。 ディスクスペースの監視を効果的に無効にするには、閾値を99(パーセント)に設定してください。

プロシージャ:ディスクスペース監視の無効化
  1. 非常に高い閾値を設定するためにsystemdオーバーライドファイルを編集してください:

    cat > /etc/systemd/system/uyuni-server.service.d/diskcheck.conf << 'EOF'
    [Service]
    Environment="DISKCHECKALERT=99"
    Environment="DISKTHRESHOLD=99"
    EOF
    
    cat > /etc/systemd/system/uyuni-db.service.d/diskcheck.conf << 'EOF'
    [Service]
    Environment="DISKCHECKALERT=99"
    Environment="DISKTHRESHOLD=99"
    EOF
  2. SUSE Multi-Linux Managerを再起動して構成を適用します:

    mgradm restart

ディスクスペース監視を無効にすることは、プロダクション環境では推奨されません。ディスクスペースが不足すると、データベースに深刻で回復不可能な損害を引き起こす可能性があります。