10.9. 高可用性の有効化

Acronis Cyber Infrastructureのサービスが配置されているノードに障害が発生した場合でも、高可用性(HA)によりサービスの稼働が維持されます。障害が発生した場合、障害が発生したノードのサービスはRaftコンセンサスアルゴリズムに従って正常なノードに再配置されます。高可用性は以下の項目によって実現できます。

  • メタデータの冗長性。ストレージクラスターが機能するためには、MDSサーバーの大部分が稼働している必要があります。クラスター内に複数のMDSサーバーをセットアップすることで、あるMDSサーバーに障害が発生した場合でも、他のMDSサーバーでクラスターの制御を続けることができます。
  • データの冗長性。データの各部分のコピーを複数の異なるストレージノードに保存し、一部のストレージノードにアクセスできなくなった場合でもデータを確実に利用できるようにします。
  • ノードの正常性の監視。

ストレージクラスターとそのサービスの包括的な高可用性を実現するために、以下を推奨します。

  1. 3つ以上のメタデータサーバーをデプロイします。推奨されるハードウェア構成に基づき、必要な数のメタデータサーバーが自動的にデプロイされます。
  2. 管理ノードのHAを有効にします。管理ノードのHAを手動で有効にする必要があります。
  3. 特定のサービスに対してHAを有効にします。サービスの高可用性は、そのサービスのクラスターに必要最小限の数のノードを追加することで有効になります。

可用性の高いメタデータサービスと管理ノードのHAの有効化以外に、Acronis Cyber Infrastructureでは、次のサービスに高可用性を提供します。

  • 管理者パネル。管理ノードに障害が発生するか、ネットワークから到達できなくなった場合に、別のノードの管理者パネルインスタンスがパネルのサービスを引き継ぎ、同じ専用IPアドレスでアクセスできるようにします。サービスの再配置には数分かかることがあります。管理者パネルのHAは、管理ノードのHAとともに手動で有効化されます(管理ノードの高可用性の有効化を参照)。
  • 仮想マシン。計算ノードに障害が発生するか、ネットワークから到達できなくなった場合、そのノードでホストされている仮想マシンは、空きリソースに基づいて他の正常な計算ノードに退避されます。計算クラスターは1つのノードの障害にのみ耐えることができます。デフォルトでは、仮想マシンの高可用性は、計算クラスターを作成した後に自動で有効になり、必要に応じて手動で無効にすることができます(仮想マシンの高可用性の設定を参照)。
  • iSCSIサービス。iSCSIを経由してエクスポートされたボリュームへのアクティブパスに障害が発生した場合(たとえば、アクティブなiSCSIターゲットがあるストレージノードに障害が発生するか、ネットワークから到達できなくなった場合)、アクティブパスは、正常なノードに配置されたターゲットを経由して再ルーティングされます。iSCSIを経由してエクスポートされたボリュームは、そのボリュームへのパスが1つ以上あれば、引き続きアクセスできます。
  • S3サービス。S3ノードに障害が発生するか、ネットワークから到達できなくなった場合、そのノードでホストされているネームサーバーとオブジェクトサーバーのコンポーネントは、他のS3ノード間でバランス調整と移行が自動的に行われます。S3ゲートウェイは自動的に移行しません。高可用性はDNSレコードに基づきます。S3ゲートウェイを追加したり削除したりするときに、DNSレコードを手動で管理する必要があります。S3サービスの高可用性は、管理ノードのHAを有効にし、3つ以上のノードで構成されるS3クラスターを作成した後に自動で有効になります。3つのノードで構成されるS3クラスターは1つのノードを失っても動作し続けます。
  • バックアップゲートウェイサービス。バックアップゲートウェイクラスター内のノードに障害が発生するか、ネットワークから到達できなくなった場合、バックアップゲートウェイクラスター内の他のノードから、選択したストレージバックエンドへのアクセスが引き続き提供されます。バックアップゲートウェイは自動的に移行しません。高可用性はDNSレコードに基づきます。バックアップゲートウェイを追加したり削除したりするときに、DNSレコードを手動で管理する必要があります。バックアップゲートウェイの高可用性は、2つ以上のノードで構成されるバックアップゲートウェイクラスターを作成した後に自動的に有効になります。バックアップゲートウェイクラスター内の1つ以上のノードが正常である限り、ストレージバックエンドにアクセスし続けることができます。
  • NFS共有。ストレージノードに障害が発生するか、ネットワークから到達できなくなった場合、そのノードに配置されているNFSボリュームは他のNFSノード間に移行されます。ストレージノード上のNFSボリュームの高可用性は、NFSクラスターを作成した後に自動的に有効になります。

10.9.1. 管理ノードの高可用性の有効化

インフラストラクチャの耐久性や冗長性を高めるために、3つのノードで構成する高可用性環境を作成できます。

管理ノード高可用性(HA)と計算クラスターは緊密に連係しているため、一方のノードを変更すると、たいていはもう一方に影響が及びます。以下の点に注意してください。

  1. HA構成の各ノードは、Hardware requirementsに挙げられている管理ノードの要件を満たしていなければなりません。計算クラスターを作成する場合は、必要なハードウェアも追加する必要があります。
  2. 計算クラスターの前にHA構成を作成した場合は、HA構成のすべてのノードを計算クラスターに追加しなければなりません。
  3. HA構成の前に計算クラスターを作成した場合は、計算クラスターのノードだけをHA構成に追加できます。従って、HA構成にノードを追加するには、そのノードをまず計算クラスターに追加することが必要です。
  4. HA構成と計算クラスターの両方に同じ3つのノードが入っている場合は、計算クラスターから個々のノードを削除できません。そのような場合、計算クラスターは完全に破壊されますが、HA構成はそのまま残ります。それとは逆に、HA構成を削除することもできますが、計算クラスターは動作を続行します。

注釈

計算クラスターでは、セルフサービスユーザーがKubernetesマスターノードの高可用性を有効にできるようにするために、少なくとも3つのノードが必要です。

管理ノードと管理者パネルの高可用性を有効にするには、以下の手順を実行します。

  1. 各ノードが管理者パネルトラフィックタイプと内部管理トラフィックタイプのネットワークに接続されていることを確認します。

  2. [設定] > [管理ノード] 画面で、[高可用性を管理] タブを開きます。

    ../_images/enabling_ha1_ac.png
  3. 3つのノードを選択し、[HAを作成] をクリックします。管理ノードが自動的に選択されます。

  4. [ネットワークを構成] で、各ノードで正しいネットワークインターフェースが選択されていることを確認します。そうでない場合、ノードの歯車アイコンをクリックし、内部管理トラフィックタイプと管理者パネルトラフィックタイプのネットワークをそのネットワークインターフェースに割り当てます。[続行] をクリックします。

    ../_images/enabling_ha2_ac.png
  5. [ネットワークを構成] で、高可用性の管理者パネル、計算APIエンドポイント、およびインターサービスメッセージの一意の静的IPアドレスを1つ以上指定します。[完了] をクリックします。

    ../_images/enabling_ha3_ac.png

管理ノードの高可用性が有効になったら、(同じポート8888上で)指定した静的IPアドレスを使用して管理者パネルにログインできます。

管理ノードのHAには厳密に3つのノードが常に含まれている必要があるため、ノードを削除すると同時に別のノードを追加する場合を除き、HA構成からノードを削除することはできません。たとえば、障害が発生したノードをHA構成から削除する場合は、そのノードを正常なノードと置き換えます。以下の手順を実行します。

  1. [設定] > [管理ノード] > [高可用性を管理] タブで、HA構成から削除する1つまたは2つのノードと代わりにHA構成に追加する1つまたは2つのノードを選択し、[置換] をクリックします。

    ../_images/enabling_ha4_ac.png
  2. [ネットワークを構成] で、追加する各ノードで正しいネットワークインターフェースが選択されていることを確認します。そうでない場合、ノードの歯車アイコンをクリックし、内部管理トラフィックタイプと管理者パネルトラフィックタイプのネットワークをそのネットワークインターフェースに割り当てます。[続行] をクリックします。

HA構成からノードを削除するには、[HAを消去] をクリックします。