Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

3.4. ボリュームグループのアクティブ化をクラスター内に限定

次の手順では、LVM ボリュームグループを設定して、クラスターのみがボリュームグループをアクティブ化でき、ボリュームグループが起動時にクラスターの外部でアクティブ化されないようにします。ボリュームグループがクラスター外部のシステムによってアクティブ化されると、ボリュームグループのメタデータが破損することがあります。
この手順では /etc/lvm/lvm.conf 設定ファイル内の volume_list のエントリーを編集します。volume_list のエントリーに記載されているボリュームグループはクラスターマネージャーの管轄外となるローカルノードでの自動作動が許可されます。ノードのローカルな root ディレクトリやホームディレクトリに関連するボリュームグループはこのリストに含ませてください。クラスターマネージャーで管理するボリュームグループは volume_list のエントリーには入れないでください。ここでの手順に clvmd を使用する必要はありません。
クラスター内の各ノードで以下の手順を行います。
  1. 次のコマンドを実行して、/etc/lvm/lvm.conf ファイルで locking_type が 1 に設定されていることと use_lvmetad が 0 に設定されていることを確認します。また、このコマンドを実行すると、すべての lvmetad プロセスがすぐに無効になり、停止します。
    # lvmconf --enable-halvm --services --startstopservices
  2. 次のコマンドでローカルストレージに現在設定されているボリュームグループを確認します。現在設定されているボリュームグループ一覧が出力されます。このノード上に root ディレクトリ用のボリュームグループとホームディレクトリ用のボリュームグループを別々に用意している場合は各ボリュームが以下のように出力されます。
    # vgs --noheadings -o vg_name
      my_vg        
      rhel_home
      rhel_root
  3. /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 = [] と指定して初期化する必要があります。
  4. 起動イメージがクラスターで制御しているボリュームグループを作動させないよう initramfs 起動イメージを再構築します。次のコマンドで initramfs デバイスを更新します。このコマンドは完了に 1 分ほどかかる場合があります。
    # dracut -H -f /boot/initramfs-$(uname -r).img $(uname -r)
  5. ノードを再起動します。

    注記

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