Red Hat Training

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

1.4. Red Hat High Availability クラスターの LVM 論理ボリューム

Red Hat High Availability Add-On で対応している LVM ボリュームでは、2 つのクラスター設定を使用できます。
  • クラスターの 1 つのノードのみが 1 度にストレージにアクセスする、アクティブ/パッシブフェイルオーバー設定の HA-LVM (High Availability LVM) ボリューム。
  • 1 つ以上のクラスターが同時にストレージにアクセスする必要がある、アクティブ/アクティブ設定の CLVM (Clustered Logical Volume) を使用する LVM ボリューム。CLVM は Resilient Storage Add-On の一部です。

1.4.1. CLVM または HA-LVM の選択

CLVM または HA-LVM をいつ使用するかは、デプロイされたアプリケーションまたはサービスの必要性に応じて決定する必要があります。
  • クラスターの複数のノードが、アクティブ/アクティブシステムで LVM ボリュームへの同時読み取りまたは書き込みを必要とする場合、CLVMD を使用する必要があります。CLVMD は、クラスターのノード全体で LVM ボリュームのアクティベーションおよび変更を同時に調整するシステムを提供します。CLVMD のクラスターロックサービスは、クラスターのさまざまなノードがボリュームと対話し、レイアウトに変更を加え、LVM メタデータを保護します。この保護は、lvm.conf ファイルで locking_type を 3 に設定し、複数のクラスターノード全体で CLVMD によって管理され、アクティベートされるボリュームグループのクラスター化フラグを設定するなど、該当するボリュームグループの設定を適切に行うことが条件となります。
  • 単一のメンバーのみが 1 度に指定の LVM ボリュームにアクセスする必要があり、アクティブ/パッシブに共有リソースを管理するよう HA クラスターが設定された場合、CLVMD クラスターロックサービスを使用せずに HA-LVM を使用することができます。
ほとんどのアプリケーションは、その他のインスタンスと同時に実行するように設計または最適化されていないため、アクティブ/パッシブ設定での実行により適しています。論理ボリュームがミラーリングされていない場合、クラスター化された論理ボリュームでクラスター対応でないアプリケーションを実行すると、パフォーマンスが低下することがあります。これは、論理ボリューム自体にクラスター通信のオーバーヘッドが発生するためです。クラスター対応のアプリケーションは、クラスターファイルシステムとクラスター対応の論理ボリュームにより発生するパフォーマンスの低下を上回るパフォーマンスの向上を実現できるようにする必要があります。実現が容易かどうかは、アプリケーションやワークロードによって異なります。クラスターの要件を判断し、アクティブ/アクティブのクラスターを最適化する努力に価値があるかどうかを判断して、どちらの LVM を使用するかを選択します。ほとんどの場合は、HA-LVM を使用すると HA を最適化できます。
HA-LVM および CLVM は、複数のマシンが変更を重複して行うと発生する LVM メタデータとその論理ボリュームの破損を防ぐという点で似ています。これは、複数のマシンがオーバーラッピングの変更を許可されている場合に発生します。HA-LVM では、論理ボリュームは、アクティベートする場合は排他的に行うように制限されているため、一度に 1 つのマシンでしかアクティブになりません。そのため、ストレージドライバーのローカル (非クラスター) 実装のみが使用されます。このようにクラスターの調整オーバーヘッドが発生しないようにすると、パフォーマンスが向上します。CLVM にはこのような制限はなく、ユーザーはクラスターのすべてのマシンで論理ボリュームをアクティベートすることができます。これにより、クラスター対応のストレージドライバーの使用が強制され、クラスター対応のファイルシステムとアプリケーションが優先されます。

1.4.2. クラスター内での LVM ボリュームの設定

Red Hat Enterprise Linux 7 では、クラスターは Pacemaker で管理されます。HA-LVM および CLVM 論理ボリュームは、Pacemaker クラスターと併用される場合のみサポートされ、クラスターリソースとして設定する必要があります。