3 管理ノードのHAセットアップ #
「管理ノード」はSalt Masterサービスが動作するCephクラスタノードです。管理ノードはSalt Minionサービスのクエリと命令を行うことで、他のクラスタノードを管理します。管理ノードには通常、ほかのサービスも含まれます。たとえば、「Prometheus」監視ツールキットに支援された「Grafana」ダッシュボードなどです。
管理ノードに障害が発生した場合、通常は、動作する新しいハードウェアをノードに提供し、最新のバックアップから完全なクラスタ設定スタックを復元する必要があります。この方法では時間がかかり、クラスタの停止も発生します。
管理ノードの障害によってCephクラスタのパフォーマンスにダウンタイムが発生するのを防止するため、Ceph管理ノードにはHA (高可用性)クラスタを利用することをお勧めします。
3.1 管理ノードのHAクラスタの概要 #
HAクラスタは、一方のクラスタノードで障害が発生した場合に、もう一方のノードがその役割(仮想化された管理ノードを含む)を自動的に引き継ぐという考えです。こうすることで、管理ノードに障害が発生したことを他のCephクラスタノードが認識することはありません。
管理ノード用の最小限のHAソリューションには、次のハードウェアが必要です。
High Availability ExtensionをインストールしたSUSE Linux Enterpriseを実行し、管理ノードを仮想化できるベアメタルサーバ2台。
2つ以上の冗長ネットワーク通信パス。たとえば、ネットワークデバイスボンディングを使用します。
管理ノード仮想マシンのディスクイメージをホストするための共有ストレージ。この共有ストレージは両方のサーバからアクセス可能である必要があります。たとえば、NFSエクスポート、Samba共有、iSCSIターゲットなどを使用できます。
クラスタの要件の詳細については、https://documentation.suse.com/sle-ha/15-SP3/single-html/SLE-HA-install-quick/#sec-ha-inst-quick-reqを参照してください。
3.2 管理ノードを有するHAクラスタの構築 #
次の手順は、管理ノードを仮想化するためのHAクラスタを構築する手順の中で最も重要なものをまとめたものです。詳細については、記載のリンクを参照してください。
共有ストレージを使用する基本的な2ノードHAクラスタを設定します。https://documentation.suse.com/sle-ha/15-SP3/single-html/SLE-HA-install-quick/#art-sleha-install-quickを参照してください。
両方のクラスタノードに、KVMハイパーバイザを実行するために必要なすべてのパッケージと
libvirt
ツールキットをインストールします。https://documentation.suse.com/sles/15-SP3/single-html/SLES-virtualization/#sec-vt-installation-kvmを参照してください。1つ目のクラスタノードで、
libvirt
を利用する新しいKVM VM (仮想マシン)を作成します。https://documentation.suse.com/sles/15-SP3/single-html/SLES-virtualization/#sec-libvirt-inst-virt-installを参照してください。事前設定済みの共有ストレージを使用して、VMのディスクイメージを保存します。VMのセットアップが完了したら、その設定を共有ストレージ上のXMLファイルにエクスポートします。以下の構文を使用してください。
#
virsh dumpxml VM_NAME > /path/to/shared/vm_name.xml管理ノードVMのリソースを作成します。HAリソースの作成に関する全般的な情報については、https://documentation.suse.com/sle-ha/15-SP3/single-html/SLE-HA-guide/#cha-conf-hawk2を参照してください。KVM仮想マシンのリソースの作成に関する詳細情報については、http://www.linux-ha.org/wiki/VirtualDomain_%28resource_agent%29を参照してください。
新しく作成したVMゲストで、管理ノードと、そこで必要な追加サービスを展開します。第6章 「Saltの展開」の関連手順に従います。同時に、非HAクラスタサーバに残りのCephクラスタノードを展開します。