- 概要
- 要件
- インストール前
- インストール
- インストール後
- 移行とアップグレード
- 監視とアラート機能
- クラスターの管理
- 製品固有の設定
- トラブルシューティング
- Azure Government への接続に失敗したため、バックアップのセットアップが機能しない
- カスタム ノード taint を有効化すると uipath 名前空間のポッドがスタックする
- プロキシ設定がある場合に Automation Hub と Apps を起動できない
- Velero のバックアップが FailedValidation エラーで失敗する
- 外部シークレットのトラブルシューティング
- Temporal as a Service のトラブルシューティング
- TLS 証明書の検証が有効化されていると、AI Center と Document Understanding ポッドの起動に失敗する
- TLS 証明書の検証エラー
- Fluentd では、IPv6 環境ではログはエクスポートされません
- デスクトップ版の Studio では Integration Service のコネクタとアクティビティを読み込めない
- 手動による ArgoCD ネットワーク ポリシーの軽減策 (GHSA-47m3-95c7-g2g8)
- uipathctl で作成されたワークロードのリソース要求と制限を設定する
EKS/AKS の Automation Suite におけるアクティブ/パッシブおよびアクティブ/アクティブのマルチサイト デプロイのアーキテクチャと構成
ダイアグラム
次の図は、Automation Suite の通常のアクティブ/パッシブ デプロイを示しています。
要件
マルチサイト展開には、以下のハードウェアとインフラストラクチャのコンポーネントが必要です。
Global Traffic Manager (GTM)
GTM は、トラフィックを Automation Suite のマルチサイト デプロイ全体に分散します。高可用性を備え、単一のデプロイ サイトで障害が発生しないようにする必要があります。また、GTM は、エラーが発生したサイトを素早く分離する健全性チェックをサポートする必要があります。GTM は必須ではありませんが、切り替えを高速化したい場合に推奨されます。
GTM をアクティブ/パッシブ デプロイ用に構成する場合は、 /orchestrator_/api/status を健全性エンドポイントとして使用します。これは、障害復旧を効果的に管理するために重要です。
ロード バランサー
すべてのサイトに、同じサイト内に構成された任意のノードにトラフィックを負荷分散できるローカル ロード バランサーが必要です。
ノード
両方のサイトには同じ数のノードが必要です。サイトごとに、「 Kubernetes クラスターとノード」のドキュメントを使用して、クラスターとノードを構成する必要があります。詳しくは、「 Automation Suite Install Sizing Calculator」をご覧ください。
SQL データベース
データを格納する外部 SQL Server が必要です。ディザスタリカバリには、サイト 1 にプライマリ SQL Server、サイト 2 に物理的に物理的に存在し、データ同期が有効化された Always On 可用性グループ (または Amazon RDS の MSSQL と ReadReplica) が必要です。SQL リスナーは SQL Server の上にデプロイされ、両方のクラスターは同じリスナーのアドレスを使用するように構成されています。
アクティブ (プライマリ) サイトとパッシブ (セカンダリ) サイトとクラスタの両方で、データベース通信にプライマリ データベース エンドポイントを使用する必要があります。障害が発生した場合、読み取りレプリカがプライマリに昇格したら、新しいデータベース接続文字列として機能するように両方のサイトでそのエンドポイントを更新する必要があります。
フェールオーバー管理を簡素化するために、Amazon Route 53 を使用してデータベースの DNS レコードを作成できます。最初は、プライマリ データベース エンドポイント (またはリスナー) を指している必要があります。フェイルオーバーの場合は、新しく昇格されたプライマリデータベース (以前のリードレプリカ) を指すように Route 53 レコードを更新します。
PostgreSQL データベース
Process Mining、Autopilot for Developers、および Temporal as a Service (TaaS) には、外部 PostgreSQL サーバーが必要です。障害復旧の場合は、Autopilot for Developers データベースのみをセカンダリ サイトにレプリケートする必要があります。Process Mining/Airflow データベースではサイト間のレプリケーションは必要ありませんが、それでも各サイトに PostgreSQL インスタンスが必要です。TaaS はセカンダリ クラスターではサポートされていません。アクティブ/パッシブ展開のプライマリ サイトでのみサポートされます。
サイト 1 のプライマリ PostgreSQL サーバーを、サイト 2 の少なくとも 1 つの読み取り専用レプリカへの物理ストリーミング レプリケーションを使用して構成するか、Amazon RDS 読み取りレプリカ、Aurora PostgreSQL グローバル データベース、Azure Database for PostgreSQL フレキシブル サーバー geo レプリカなどのマネージド プロバイダーのレプリケーション機能を使用します。
PostgreSQL は一度に 1 つの書き込み可能なプライマリのみをサポートしているため、アクティブクラスターとパッシブクラスターの両方で現在のプライマリデータベースエンドポイントを使用する必要があります。ディザスタ リカバリ中に、サイト 2 レプリカがプライマリに昇格したら、両方のサイトのデータベース エンドポイントを更新して、新しく昇格されたプライマリを指すようにします。フェールオーバーを簡素化するには、データベース エンドポイントの DNS レコードを使用し、フェールオーバー中に更新します。
Object Store
製品にアップロードされるファイルやパッケージはすべて ObjectStore に保存されます。障害に対する回復性を高めるには、Automation Suite のデプロイに外部 ObjectStore が必要です。
効果的な障害復旧のためには、各データセンターに 1 つずつ、合計 2 つの ObjectStore インスタンスが必要です。両方のクラスターが読み取りと書き込みにアクティブに使用する ObjectStore インスタンスは、常に 1 つだけであり、セカンダリ インスタンスへの非同期レプリケーションで補完する必要があります。
サービスとしての時間 (TaaS)
Maestro が有効な場合、一度にアクティブに TaaS 実行できるクラスターは 1 つだけです。パッシブ クラスターで、すべての TaaS デプロイを 0 個のレプリカにスケーリングします。両方のクラスターが同じ PostgreSQL 永続ストアに同時に接続されると、ロックの競合が発生し、パフォーマンスが低下します。詳しくは、「 Temporal as a Service のトラブルシューティング」をご覧ください。
ロード バランサーと DNS の構成
このセクションでは、通常の復旧シナリオと障害復旧シナリオの両方で動作するように設計されたシステムのインフラストラクチャのセットアップ、DNS アーキテクチャ、およびルーティング ロジックの概要を説明します。
インフラストラクチャの概要
高可用性とディザスター リカバリーをサポートするには、システムにデュアル ロード バランサーの設定が必要です。
- プライマリ ロード バランサー: 標準のアプリケーション トラフィックを処理するために アクティブ (プライマリ) クラスター に割り当てられます。
- セカンダリ ロード バランサー: パッシブ (セカンダリ) クラスターに割り当てられ、プライマリで障害が発生した場合にすぐに引き継ぐことができます。
各ロード バランサーには、DNS 解決のエンドポイントとして機能する一意の Elastic IP (EIP) が割り当てられます。
DNS アーキテクチャ
トラフィック管理とクラスター固有のサービスへのアクセスを容易にするために、DNS 構成の 2 つの層が採用されています。
- FQDN: アプリケーション FQDN は、エンド ユーザーがアプリケーション インターフェイスにアクセスするために使用するプライマリ ドメインです。この値は、
input.jsonのfqdnフィールドに対応します。詳しくは、「 アクティブ/パッシブ構成」をご覧ください。 - クラスター固有の FQDN: 各クラスターには、メイン アプリケーションの FQDN に加えて、管理ツールおよび監視ツール用に独自の FQDN が必要です。この値は、各クラスターの
input.jsonのcluster_fqdnフィールドで定義されます。詳しくは、「 アクティブ/パッシブ構成」をご覧ください。 - サブドメイン: 包括的なサービス アクセスのために、アプリケーション FQDN と各クラスター固有の FQDN の両方に対して一連のサブドメインが構成されます。たとえば、次のような要因があります。
-
FQDNの:
apps.<domain>- Apps で使用されます。insights.<domain>- Insights で使用されます。
-
クラスター固有の FQDN:
alm.<domain>- ArgoCD およびデプロイ管理に使用されます。これは、アクティブ (プライマリ) クラスターとパッシブ (セカンダリ) クラスターの両方に必要です。monitoring.<domain>- 監視とアラートに使用されます。これは、アクティブ (プライマリ) クラスターとパッシブ (セカンダリ) クラスターの両方に必要です。
すべてのサブドメインは、それぞれのルートドメインと同じElastic IP(EIP)に誘導され、一貫性とルーティングの容易さが維持されます。
-
DNS ルーティング ロジック
DNS ルーティング ロジックにより、通常の操作中または障害復旧中に、システム ステートに応じてユーザー トラフィックが適切なロード バランサーに転送されます。
-
通常の操作 (プライマリ クラスターがアクティブ) 標準操作モードでは、DNS は次の表に示すようにトラフィックをルーティングします。
FQDN の種類 ルーティング ターゲット fqdn プライマリ クラスター ロード バランサー プライマリ クラスターの FQDN プライマリ クラスター ロード バランサー セカンダリ クラスターの FQDN セカンダリ クラスター ロード バランサー -
障害復旧 (セカンダリ クラスターがアクティブ) プライマリ クラスターに障害が発生すると、システムは障害復旧モードになります。この状態では、サービスの継続性を確保するためにDNSが調整されます。
FQDN の種類 ルーティング ターゲット fqdn セカンダリ クラスター ロード バランサー プライマリ クラスターの FQDN プライマリ クラスター ロード バランサー*(変更なし)* セカンダリ クラスターの FQDN セカンダリ クラスター ロード バランサー*(変更なし)*