RHEL High Availability クラスターのサポートポリシー - fence_scsi および fence_mpath
目次
概要
該当する環境
- Red Hat Enterprise Linux (RHEL) と High Availability Add-On
役に立つリファレンスおよびガイド
概要
このガイドでは、RHEL High Availability クラスターでの fence_scsi または fence_mpath の使用に関する Red Hat のポリシーと要件について説明します。 これらのエージェントは実装と機能が類似しているため、通常は同じポリシーに従い、同様の要件を持ちます。RHEL High Availability クラスターのユーザーは、適切な製品サポートサブスクリプションを使用して Red Hat からサポートを受けられるようにするために、これらのポリシーを遵守する必要があります。
ポリシー
fence_scsi と fence_mpath のストレージユースケース
SCSI 永続予約を使用するこれらの STONITH 方式は、すべてのマネージドアプリケーションがすべてのメンバーによって共有されるストレージデバイスのデータを利用するクラスター内でのみ有効なフェンシングソリューションです。
fence_scsi と fence_mpath は、メンバーシップステータスとリソース管理結果に基づいて、クラスターメンバーの共有ストレージデバイスへのアクセスを制御します。 メンバーに問題が発生した場合、クラスターはそのメンバーのストレージデバイスへのアクセスを取り消します。これにより、他のメンバーは競合のリスクなしに、マネージドアプリケーションやリソースと安全に対話できるようになります。 この方法は、ストレージへのアクセスが失われても、問題のあるメンバーがアプリケーションまたはリソースと競合するアクションを実行できない場合にのみ有効です。
これらのエージェントに対する Red Hat のサポート方針は以下のとおりです。
- フェンスエージェントである
fence_scsiおよびfence_mpathが、クラスターの要件を満たす有効なフェンスデバイスとして機能するのは、すべてのマネージドアプリケーションが 1 つ以上の共有ストレージデバイスと対話するように設計されている場合のみです。フェンシングメカニズムとして機能することのみを目的とする専用ストレージデバイスを提示しても、これらのエージェントの要件を満たしません。 エージェントは、クラスター内のマネージドアプリケーションにデータを提供するデバイスを管理するように設定する必要があります。専用のフェンスストレージデバイスでは不十分です。 - 任意のメンバーによって共有されるすべてのストレージデバイスは、すべてのメンバーによって共有される必要があります。
- フェンスエージェントである
fence_scsiおよびfence_mpathは、ストレージデバイス全体 (例:/dev/sdf、/dev/mapper/mpath_kなど) で使用される場合 (-d <storage devices>、devices=<storage devices) にのみサポートされ、ストレージデバイスのパーティション (例:/dev/sdf1、/dev/mapper/mpath_k1など) ではサポートされません。 - すべての共有ストレージデバイスを管理するには、フェンスエージェントである
fence_scsiとfence_mpathを設定する必要があります (次のセクションを参照)。
STONITH デバイスはすべての共有ストレージを管理する必要がある
fence_scsi または fence_mpath が本来の目的を果たし、その設定が Red Hat によってサポートされるためには、クラスターの複数のメンバーによって共有されるすべてのストレージデバイスを管理する必要があります。
すべての共有ストレージデバイスは、devices セクションに含めるか、fence_scsi または fence_mpath によって自動検出される必要があります。そうしないと、共有ストレージデバイスが破損する可能性があります。 Red Hat は、クラスター内のすべての共有ストレージデバイスを適切に管理しない設定から生じる問題についてはサポートしません。
fence_scsiとfence_mpathは、デバイスリストを自動検出するか、管理者が指定したデバイスリストをパラメーターで受け入れることができます。- STONITH/フェンスデバイスの設定で
devicesが指定されたパラメーターである場合、その値にはクラスター内のすべての共有ストレージデバイスを含める必要があります。 - STONITH/フェンスデバイスの設定で
devicesが指定されたパラメーターでない場合は、クラスター内のすべての共有ストレージデバイスは、"clustered" としてマークされた LVM ボリュームグループ内の物理ボリューム (LVM 属性が 'c') である必要があります。
- STONITH/フェンスデバイスの設定で
- 動作させるために共有ストレージデバイスへのアクセスを必要とするリソース (通常は
LVM-activateリソースやFilesystemリソースなど) が、pacemakerによって少なくとも 1 つ管理されている必要があります。たとえば、サポートされていない設定は以下のようになります。fence_scsiまたはfence_mpathを stonith デバイスとして使用し、単一のIPaddr2リソースを持つpacemakerクラスター。このクラスターは、pacemaker によって使用される共有ストレージデバイスがないためサポートされず、実行されたフェンスアクションはリソースのステータスに影響を与えません。詳細は、Available Fencing Types and Fencing Agents for a Red Hat High-Availability Cluster を参照してください。
デバイスマッパーマルチパスデバイス上の共有ストレージ: 共有ストレージデバイスがデバイスマッパーマルチパス (dmm) マネージドストレージを使用する場合は、フェンスエージェントとして fence_mpath を使用することを推奨します。フェンスエージェントである fence_scsi は、引き続き dmm デバイスで使用できますが、物理デバイスへのパスではなく、dmm デバイスファイルへのパスを使用する必要があります。
SPC-3 または SPC-4 が必須
Red Hat からサポートを受けるには、fence_scsi または fence_mpath によって管理されるストレージが、SCSI Primary Commands version 3 (SPC-3) 標準または SCSI Primary Commands version 4 (SPC-4) 標準に準拠している必要があります。
- フェンスエージェントである
fence_scsiまたはfence_mpathは、RHEL 7 以降で SPC-3 をサポートします (例: RHEL 8、RHEL 9 など)。 - フェンスエージェントである
fence_scsiまたはfence_mpathは、以下のリリースで SPC-4 をサポートします。- RHEL 8.10 以降
- RHEL 9.6 以降
fence_mpath と device-mapper-multipath
fence_mpath は、device-mapper-multipath によって管理されるデバイスに対して、SCSI 永続予約フェンシングを提供します。 このエージェントは、他のマルチパステクノロジーではサポートされません。また、device-mapper-multipath が使用されていない場合にもサポートされません。
fence_mpathを使用する場合、各ノードの/etc/multipath.confにおいて、一意のreservation_key(16 進数値) を設定する必要があります。この設定は、defaultsセクション、またはクラスター共有デバイスごとのmultipathセクションのいずれかで行ってください。 以下に例を示します。
multipaths {
multipath {
wwid "1234567890" # wwid for a cluster-shared device
alias "ha_data1"
reservation_key 0x1 # unique to this node - change for other nodes
}
}
ストレージの互換性
RHEL High Availability のストレージの互換性に関する Red Hat の一般的なポリシーは、fence_scsi または fence_mpath の使用に適用されます。つまり、Red Hat は、特定のストレージベンダー製品でのこのエージェントの正常な動作をテスト、保証、または認定しません。 これらのエージェントの使用を検討されているお客様は、対象となるクラスター環境で組み合わせて使用される各テクノロジーとの動作を十分にテストし、予期しない動作が発生した場合には、ストレージベンダーおよび Red Hat Support チームと連携して対応することが重要です。
- Red Hat は、SCSI 永続予約をサポートする一般的な SPC-3 または SPC-4 準拠のストレージを対象として、これらのエージェントのテストを行っています。Red Hat のサポートポリシーに別途記載がない限り、これらの関連標準を遵守しているストレージ上での
fence_scsiおよびfence_mpathの使用については、サポートが提供されます。 - レプリケーション、複数サイトまたは複数アレイの調整、その他のベンダー固有の機能などの特殊なストレージテクノロジーはテストされていないため、これらのエージェントの動作に影響を及ぼす可能性があります。
- こちらの記事 Support Policies for RHEL High Availability Clusters - Storage Compatibility も参照してください。
ストレージレプリケーション
ストレージレプリケーションの使用は、fence_scsi または fence_mpath を運用する上での課題となる場合があります。これは、ストレージ製品ごとに、ストレージアレイ間の SCSI 予約の同期またはレプリケーションの処理方法が異なるためです。 Red Hat Support チームによる対応の過程で、そのようなテクノロジーが使用されており、それがいずれかのエージェントの動作を阻害している可能性があると判明した場合、Red Hat はそのストレージソリューションを使用しない状態での事象再現を求めることがあります。あるいは、それらの構成条件が各エージェントの想定する仕様と互換性があるか確認するため、ベンダー側でのさらなる調査を求める場合があります。
-
複数のストレージアレイにまたがるストレージデバイスに対して
fence_scsiまたはfence_mpathを使用する環境では、すべての SCSI 永続予約と登録キーがすべてのアレイに自動的に伝播され、クラスター内のすべてのノードが同一のビューを参照できる状態であることが想定されています。 -
ストレージアレイ間の接続において「スプリット (分断)」が発生した場合、アレイ側には、スプリット中に実行された操作が健全に処理されるようにする何らかのメカニズムが備わっていることが想定されています。 これらのストレージアレイ上のデータ状態に不一致が生じることは許されず、ストレージソリューション側でその整合性を保証できなければなりません。 各ストレージアレイに対して予約や登録を行うノードは、競合する操作を並行して実行することはできません。
-
サポート対応の過程で、使用されているストレージ技術がこれらの想定から外れた動作をしていると判明した場合、Red Hat Support チームは、支援を継続するためにその技術要素の取り外しを求めたり、あるいはベンダー側での詳細な調査を要求したりすることがあります。
VMware プラットフォームの条件
fence_scsi および fence_mpath は、VMware プラットフォームで使用されるストレージアクセス方法の制限を受けます。
| RHEL リリース | 物理互換モードの RDM | 仮想互換モードの RDM | VMDK | ダイレクト iSCSI アクセス | その他のアクセス方法 |
|---|---|---|---|---|---|
| 7+ | サポート対象 [1] | サポート対象外 | サポート対象外 [3] | サポート対象 [2] | サポート対象外 |
| 6 | サポート対象外 | サポート対象外 | サポート対象外 [3] | サポート対象 [2] | サポート対象外 |
[1]: 物理互換モードでの RDM デバイスの使用は、次の条件下で Red Hat によってサポートされています。
- RHEL 7+
- クラスター内の各仮想マシンは、常に別々の ESXi ホスト上で実行される必要があります。同じホスト上で複数の仮想マシンが実行される可能性がある場合、これらのエージェントは正しく機能しない可能性があり、そのような構成で発生した問題について Red Hat はサポートを提供しません。
- 各仮想マシンは、
SharingモードをPhysicalに設定した専用の仮想 SCSI コントローラーを介して、共有ストレージデバイスにアクセスします。 - 各仮想マシンの詳細設定で、それぞれの仮想 SCSI コントローラーの
scsiX.releaseResvOnPowerOffをFALSEに設定する必要があります。 - これらの条件を設定する手順については、Administrative procedures - Configuring VMware VMs to be Compatible with the fence_scsi or fence_mpath STONITH Method を参照してください。
[2]: iSCSI デバイスは VMware レイヤーをパススルーせずに仮想マシンから直接アクセスする必要があります (例: 仮想ディスクファイル (VMDK) として提供される共有ストレージを使用する仮想マシン)。
[3]: 現在、fence_scsi と fence_mapth は、マルチライターオプションが有効になっている VMware VMDK および VMware "Clustered VMDK" ストレージデバイスではサポートされていません。
VMware またはその他のプラットフォームでの High Availability に関する Red Hat のポリシーの一覧 Support policies for RHEL High Availability clusters も併せて参照してください。
[4] VMware vSphere 7 では、VMware は仮想ディスク (VMDK) レベルでの SCSI-3 永続予約 (SCSI-3 PR) のサポートを追加しました。ただし、RHEL 上での動作については VMware 側でサポートしておらず、Red Hat 側でも RHEL のサポート対象外となっています。詳細は、[RHEL-7621] RFE: Add support of fence-scsi for RHEL 8 cluster running in vCenter 7/8 with VMDK shared disk を参照してください。
NVMe ストレージデバイスはサポートされていますか? 現在、NVMe ストレージデバイス用のストレージベースのフェンスエージェントは サポートされていません。フェンスエージェント fence_scsi および fence_mpath は、NVMe ストレージデバイスを サポートしていません。詳細は、Is there a supported storage based fence-agent that can be used with NVMe storage devices? を参照してください。
Comments