Automation Suite
2023.10
バナーの背景画像
EKS/AKS の Automation Suite のインストール ガイド
最終更新日 2024年4月19日

ネットワーク

Azure または AWS のネットワーク リソースをプロビジョニングして構成する必要があります。これは、クラスター上の Automation Suite がクラウド インフラストラクチャの前提条件 (ストレージ、データベース、キャッシュ、DNS など) に接続し、アクセスするために必要です。

ネットワーク アーキテクチャによっては、Vnet/VPC、DNS、サブネット、NSG/セキュリティ グループ、NAT ゲートウェイ、Elastic IP、インターネット ゲートウェイなどの構成が必要になる場合があります。詳しくは、「デプロイのシナリオ」をご覧ください。

すべてのサービスが有効化されている場合、Automation Suite ではクラスター全体で最低でも 400 のポッドが必要です。ワークロードのスケーリングによっては、さらに多くのレプリカが必要な場合があります。既定では、HA モードでは 2 つのレプリカが必要で、最大で 10 個、もしくはそれ以上のレプリカを使用できます。お使いのネットワークでこのスケーリング レベルがサポートされていることをご確認ください。

重要:

Automation Suite は IPv6 インターネット プロトコルをサポートしていません。

カスタムのイングレス コントローラー

カスタムの Ingress コントローラー (NGINX) を使用する場合は、「NGINX Ingress コントローラーを構成する」を参照し、このページの残りの部分はスキップしてください。

ロード バランサーの構成

Automation Suite は、インストール中にユーザーに代わってロード バランサーをプロビジョニングします。受信 FQDN 要求をルーティングするには、ロード バランサーにパブリックまたはプライベート IP アドレスを割り当てる必要があります。ロード バランサーを構成するには、次の 2 つのオプションがあります。

  • 事前割り当て IP: ロード バランサーにパブリック IP またはプライベート IP を割り当て、DNS レコードを構成して FQDN をこれらの IP にマッピングし、その IP を input.json の ingress セクションの一部として指定します。
  • 動的割り当て IP: IP アドレスを指定しない場合、IP は Automation Suite によってクラスター サブネットからロード バランサーに動的に割り当てられます。

事前割り当て IP

次のサービス注釈を input.jsoningress セクションに指定する必要があります。

EKS のサービス注釈のリストについては、AWS ロード バランサーのドキュメントをご覧ください。

AKS のサービス注釈のリストについては、Azure Load Balancer のドキュメントをご覧ください。

EKS の注釈の例

次の例は、input.jsoningress.service_annotations セクションを作成する方法を示しています。例が正しく動作するように、インストールの前に EKS クラスターに AWS ロード バランサー コントローラー をデプロイする必要があります。

次の例では、AWS から Elastic IP を割り当てて、パブリック ロード バランサーをプロビジョニングする方法を示します。この例を構成の開始点として使用する場合は、IP を実際の値に置き換えてください。

"ingress": {
    "service_annotations": {
      "service.beta.kubernetes.io/aws-load-balancer-backend-protocol": "ssl",
      "service.beta.kubernetes.io/aws-load-balancer-eip-allocations": "<elastic_ip_id_0>,<elastic_ip_id_1>",
      "service.beta.kubernetes.io/aws-load-balancer-nlb-target-type": "ip",
      "service.beta.kubernetes.io/aws-load-balancer-scheme": "internet-facing",
      "service.beta.kubernetes.io/aws-load-balancer-type": "nlb"
    }
  }"ingress": {
    "service_annotations": {
      "service.beta.kubernetes.io/aws-load-balancer-backend-protocol": "ssl",
      "service.beta.kubernetes.io/aws-load-balancer-eip-allocations": "<elastic_ip_id_0>,<elastic_ip_id_1>",
      "service.beta.kubernetes.io/aws-load-balancer-nlb-target-type": "ip",
      "service.beta.kubernetes.io/aws-load-balancer-scheme": "internet-facing",
      "service.beta.kubernetes.io/aws-load-balancer-type": "nlb"
    }
  }

次の例では、EKS クラスター サブネットからプライベート IP を内部ロード バランサーに割り当てる方法を示します。この例を設定の開始点として使用する場合は、IP とサブネットを実際の値で更新してください。

"ingress": {
    "service_annotations": {
      "service.beta.kubernetes.io/aws-load-balancer-backend-protocol": "ssl",
      "service.beta.kubernetes.io/aws-load-balancer-nlb-target-type": "ip",
      "service.beta.kubernetes.io/aws-load-balancer-private-ipv4-addresses":"<IP_0>,<IP_1>",
      "service.beta.kubernetes.io/aws-load-balancer-subnets": "<SUBNET_ID_0>,<SUBNET_ID_1>",
      "service.beta.kubernetes.io/aws-load-balancer-scheme": "internal",
      "service.beta.kubernetes.io/aws-load-balancer-type": "nlb"
      "service.beta.kubernetes.io/aws-load-balancer-target-group-attributes": "preserve_client_ip.enabled=false"
    }
  } "ingress": {
    "service_annotations": {
      "service.beta.kubernetes.io/aws-load-balancer-backend-protocol": "ssl",
      "service.beta.kubernetes.io/aws-load-balancer-nlb-target-type": "ip",
      "service.beta.kubernetes.io/aws-load-balancer-private-ipv4-addresses":"<IP_0>,<IP_1>",
      "service.beta.kubernetes.io/aws-load-balancer-subnets": "<SUBNET_ID_0>,<SUBNET_ID_1>",
      "service.beta.kubernetes.io/aws-load-balancer-scheme": "internal",
      "service.beta.kubernetes.io/aws-load-balancer-type": "nlb"
      "service.beta.kubernetes.io/aws-load-balancer-target-group-attributes": "preserve_client_ip.enabled=false"
    }
  }
重要:

IP とサブネットは一致している必要があります。

前の例では、<IP_0><SUBNET_0> で、<SUBNET_1><IP_1> です。

AKS の注釈の例

次の例では、Azure からパブリック IP を割り当てて、パブリック ロード バランサーをプロビジョニングする方法を示します。この例を構成の開始点として使用する場合は、IP を実際の値で更新してください。

...
"ingress": {
    "service_annotations": {
      "service.beta.kubernetes.io/azure-load-balancer-internal": "false",
      "service.beta.kubernetes.io/azure-load-balancer-ipv4": "<IP>"
    }
  }
......
"ingress": {
    "service_annotations": {
      "service.beta.kubernetes.io/azure-load-balancer-internal": "false",
      "service.beta.kubernetes.io/azure-load-balancer-ipv4": "<IP>"
    }
  }
...

次の例では、AKS クラスター サブネットからプライベート IP を内部ロード バランサーに割り当てる方法を示します。この例を構成の開始点として使用する場合は、IP とサブネットを実際の値で更新してください。

...
"ingress": {
    "service_annotations": {
      "service.beta.kubernetes.io/azure-load-balancer-internal": "true",
      "service.beta.kubernetes.io/azure-load-balancer-ipv4": "<IP>",
      "service.beta.kubernetes.io/azure-load-balancer-internal-subnet": "<SUBNET_0>", "<SUBNET_1>" 
    }
  }
......
"ingress": {
    "service_annotations": {
      "service.beta.kubernetes.io/azure-load-balancer-internal": "true",
      "service.beta.kubernetes.io/azure-load-balancer-ipv4": "<IP>",
      "service.beta.kubernetes.io/azure-load-balancer-internal-subnet": "<SUBNET_0>", "<SUBNET_1>" 
    }
  }
...
重要:

IP とサブネットは一致している必要があります。

前の例では、<IP_0><SUBNET_0> で、<SUBNET_1><IP_1> です。

DNS の構成

DNS レコードが、以下の UiPath® FQDN をロード バランサーにマッピングするように設定されていることを確認します。

  • FQDN
  • alm.FQDN
  • monitoring.FQDN
  • insights.FQDN (UiPath Insights をインストールする場合)
注:

FQDN は、インストール前の前提条件の 1 つです。IP アドレスを指定しない場合、または FQDN マッピングがまだ完了していない場合、確認は失敗します。

動的割り当て IP

input.json で IP を指定しない場合、Automation Suite はワーカー ノード サブネットからプライベート IP を動的に割り当てます。このシナリオでは、次の方法で Automation Suite のインストールを実行します。

input.json の EKS の例

...
  "ingress": {
    "service_annotations": {
      "service.beta.kubernetes.io/aws-load-balancer-backend-protocol": "ssl",
      "service.beta.kubernetes.io/aws-load-balancer-nlb-target-type": "ip",
      "service.beta.kubernetes.io/aws-load-balancer-scheme": "internal",
      "service.beta.kubernetes.io/aws-load-balancer-type": "nlb",
      "service.beta.kubernetes.io/aws-load-balancer-internal": true
    }
  }
......
  "ingress": {
    "service_annotations": {
      "service.beta.kubernetes.io/aws-load-balancer-backend-protocol": "ssl",
      "service.beta.kubernetes.io/aws-load-balancer-nlb-target-type": "ip",
      "service.beta.kubernetes.io/aws-load-balancer-scheme": "internal",
      "service.beta.kubernetes.io/aws-load-balancer-type": "nlb",
      "service.beta.kubernetes.io/aws-load-balancer-internal": true
    }
  }
...

input.json の AKS の例

...
  "ingress": {
    "service_annotations": {
      "service.beta.kubernetes.io/azure-load-balancer-internal": "true"
    }
  }
......
  "ingress": {
    "service_annotations": {
      "service.beta.kubernetes.io/azure-load-balancer-internal": "true"
    }
  }
...

インストールの手順

このシナリオでは、インストーラーを以下のように実行します。

  1. インストーラーを実行します。ただし、ロード バランサーをプロビジョニングするまでの間だけにしてください。

    uipathctl manifest apply <INPUT_JSON> --versions <VERSIONS_JSON> --override=gatewayuipathctl manifest apply <INPUT_JSON> --versions <VERSIONS_JSON> --override=gateway
  2. ロード バランサーのホスト名を取得します。

    kubectl get svc -n istio-system istio-ingressgateway -o jsonpath='{.status.loadBalancer.ingress[0].hostname}'kubectl get svc -n istio-system istio-ingressgateway -o jsonpath='{.status.loadBalancer.ingress[0].hostname}'
  3. ロード バランサーのエンドポイントまたは IP にマッピングされた FQDN で DNS を構成します。

  4. インストーラーを再実行してインストールを完了します。

    uipathctl manifest apply input.json --versions versions.jsonuipathctl manifest apply input.json --versions versions.json
注:

DNS マッピングがない場合、FQDN の前提条件の確認は失敗します。前提条件の確認の目的は、Automation Suite をインストールする前に前提条件がすべて正しくプロビジョニング済みであることを確認することです。FQDN の確認によって Automation Suite をインストールできなくなることはありません。

Was this page helpful?

サポートを受ける
RPA について学ぶ - オートメーション コース
UiPath コミュニティ フォーラム
UiPath ロゴ (白)
信頼とセキュリティ
© 2005-2024 UiPath. All rights reserved.