B.3.3. ボリュームグループの作動をクラスター内に限定する

次の手順でボリュームグループを設定すると、クラスターでしかボリュームグループを作動することができなくなり、またボリュームグループは起動時にクラスター以外の場所では作動しなくなります。クラスター以外のシステムでボリュームグループが作動されるとボリュームグループのメタデータが破損する恐れがあります。
この手順では /etc/lvm/lvm.conf 設定ファイル内の volume_list のエントリーを編集します。volume_list のエントリーに記載されているボリュームグループはクラスターマネージャーの管轄外となるローカルノードでの自動作動が許可されます。ノードのローカルな root ディレクトリやホームディレクトリに関連するボリュームグループはこのリストに含ませてください。クラスターマネージャーで管理するボリュームグループは volume_list のエントリーには入れないでください。ここでの手順に clvmd を使用する必要はありません。
クラスター内の各ノードで以下の手順を行います。
  1. 次のコマンドでローカルストレージに現在設定されているボリュームグループを確認します。現在設定されているボリュームグループ一覧が出力されます。このノード上に root ディレクトリ用のボリュームグループとホームディレクトリ用のボリュームグループを別々に用意している場合は各ボリュームが以下のように出力されます。
    # vgs --noheadings -o vg_name
      my_vg        
      rhel_home
      rhel_root
  2. /etc/lvm/lvm.conf 設定ファイルの volume_list のエントリーとして my_vg (クラスター用として定義したボリュームグループ) 以外のボリュームグループを追加します。例えば、root ディレクトリ用のボリュームグループ、ホームディレクトリ用のボリュームグループを別々に用意している場合は、lvm.conf ファイルの volume_list の行のコメントを外して以下のように root ディレクトリ用、ホームディレクトリ用の各ボリュームグループを volume_list のエントリーとして追加します。
    volume_list = [ "rhel_root", "rhel_home" ]

    注記

    クラスターマネージャーの管轄外で作動させるローカルボリュームグループがノードにない場合でも volume_list のエントリーは volume_list = [] と指定して初期化する必要があります。
  3. 起動イメージがクラスターで制御しているボリュームグループを作動させないよう initramfs 起動イメージを再構築します。次のコマンドで initramfs デバイスを更新します。このコマンドは完了に 1 分ほどかかる場合があります。
    # dracut -H -f /boot/initramfs-$(uname -r).img $(uname -r)
  4. ノードを再起動します。

    注記

    起動イメージを作成したノードに新しい Linux カーネルをインストールした場合、initrd イメージはそれを作成したときに実行していたカーネル用であってノードを再起動したら実行される新しいカーネル用ではありません。再起動の前後で uname -r コマンドを使って実行しているカーネルリリースを確認し必ず正しい initrd デバイスを使用するよう注意してください。リリースが異なる場合は新しいカーネルで再起動した後、initrd ファイルを更新しノードをもう一度再起動します。
  5. ノードが再起動したらそのノードで pcs cluster status コマンドを実行しクラスターサービスが起動しているかどうか確認します。Error: cluster is not currently running on this node というメッセージが出力される場合は次のコマンドを実行します。
    # pcs cluster start
    または、クラスター内の各ノードの再起動が完了するのを待ってから次のコマンドで各ノードでのクラスターサービスの起動を行います。
    # pcs cluster start --all