- 概要
- 要件
- インストール
- インストール後
- クラスターの管理
- 監視とアラート機能
- 移行とアップグレード
- 製品固有の設定
- ベスト プラクティスとメンテナンス
- トラブルシューティング
- 移行後にログインできない
- 管理ポータルのタイムアウト期間を設定する
- 基になるディレクトリ接続を更新する
- Kinit: Cannot Find KDC for Realm <AD Domain> While Getting Initial Credentials
- kinit: Keytab contains no suitable keys for *** while getting initial credentials
- GSSAPI operation failed with error: An invalid status code was supplied (Client's credentials have been revoked).
- Login Failed for User <ADDOMAIN><aduser>. Reason: The Account Is Disabled.
- Alarm received for failed kerberos-tgt-update job
- SSPI Provider: Server not found in Kerberos database
- Automation Suite 診断ツールを使用する
- Automation Suite サポート バンドル ツールを使用する
- ログを確認する
マシンを構成する
- データが失われるのを防ぐため、使用するインフラストラクチャがクラスターの再起動時またはシャットダウン時にクラスター ディスクを自動的に削除しないようにしてください。この機能が有効化されている場合は、必ず無効化してください。
- スムーズで中断のない SSH セッションを実現するには、ディスクを構成して Automation Suite をインストールする前に、「インストールの ベスト プラクティス 」の手順に従うことを強くお勧めします。
configureUiPathDisks.sh
スクリプトを使用して構成およびパーティション分割できます。詳しくは、以下のセクションをご覧ください。
インストール前に、LVM を使用してディスクのパーティション設定と構成を行い、データ移行やデータ損失が生じることなく、ディスク サイズを容易に変更できるようにする必要があります。
ディスクのパーティションを設定する
/var
パーティションにインストールされるためです。この var
パーティションには、既定で 8 GiB の容量しか割り当てられません。
ext4
または xfs
です。
パーティションは、すべて LVM を使用して作成する必要があります。これは、クラスターのデータが異なるディスク上にある可能性があっても、一貫性のある表示を保証するためです。将来、データ移行のリスクやデータ損失なしに、パーティションのサイズを拡張できるようにするためにも役立ちます。
RHEL OS の場合は、マシン上のマウント ポイントの最小サイズが、以下を満たすようにする必要があります。
オンライン
ディスク ラベル |
パーティション |
Size |
目的 |
---|---|---|---|
クラスター ディスク |
/var/lib/rancher |
190 GiB |
Rancher フォルダーには、コンテナー イメージとレイヤーが格納されます。 |
/var/lib/kubelet |
56 GiB |
Kubelet フォルダーには、シークレット、構成マップ、emptyDir などのランタイム Kubernetes 構成が格納されます。 | |
/opt/UiPathAutomationSuite |
10 GiB |
インストーラーのバイナリ | |
etcd ディスク |
/var/lib/rancher/rke2/server/db |
16 GiB |
Kubernetes 用の分散データベース |
データ ディスク |
/datadisk |
512 GiB (基本インストール) |
ブロック ストレージ抽象化 |
2 TiB (完全インストール) |
各プロセスに公平にリソースが配分されるようにするため、上記のどの目的でも OS ディスクを使用しないことをお勧めします。
オフライン
オフラインの要件は、インストールを実行する最初のマシンを除き、オンラインでの要件と同じです。最初のマシンでは、以下の要件が必要となります。
オフラインのバンドルを解凍するには余分なスペースが必要です。
ディスク ラベル |
パーティション |
Size |
目的 |
---|---|---|---|
クラスター ディスク |
/var/lib/rancher |
190 GiB |
Rancher フォルダーには、コンテナー イメージとレイヤーが格納されます。 |
/var/lib/kubelet |
56 GiB |
Kubelet フォルダーには、シークレット、構成マップ、emptyDir などのランタイム Kubernetes 構成が格納されます。 | |
/opt/UiPathAutomationSuite |
10 GiB |
インストーラーのバイナリ | |
etcd ディスク |
/var/lib/rancher/rke2/server/db |
16 GiB |
Kubernetes 用の分散データベース |
データ ディスク |
/datadisk |
512 GiB (基本インストール) |
ブロック ストレージ抽象化 |
2 TiB (完全インストール) | |||
UiPath バンドル ディスク |
/uipath |
512 GiB |
エアギャップ バンドル |
各プロセスに公平にリソースが配分されるようにするため、上記のどの目的でも OS ディスクを使用しないことをお勧めします。
データ ディスクと etcd ディスクは、独立した物理ディスクである必要があります。これにより、データと etcd のディスクを他のクラスターのワークロードやアクティビティから物理的に分離すると同時に、クラスターのパフォーマンスと安定性も向上させることができます。
サンプル スクリプトを使用して、インストールの前にディスクをパーティション分割し、構成する方法の詳細については、次のセクションをご覧ください。
スクリプトをダウンロードする
configureUiPathDisks.sh
スクリプトを使用できます。
ダウンロード手順については、「configureUiPathDisks.sh」をご覧ください。
スクリプトを実行する
configureUiPathDisks.sh
スクリプトは、次の目的に使用できます。
- 新しい Automation Suite クラスターをインストールするためのディスクとマウント ポイントを構成する
- インストール後にデータ ディスクのサイズを変更する
スクリプトを実行可能にするには、以下を実行します。
chmod +x ./configureUiPathDisks.sh
chmod +x ./configureUiPathDisks.sh
スクリプトの使用方法の詳細を表示するには、次のコマンドを実行します。
sudo ./configureUiPathDisks.sh --help
sudo ./configureUiPathDisks.sh --help
***************************************************************************************
Utility to configure the disk for UiPath Automation Suite Installation.
Run this script to configure the disks on new machine or to extend the size of datadisk
Arguments
-n|--node-type NodeType, Possible values: agent, server. Default to server
-i|--install-type Installation mode, Possible values: online, offline. Default to online
-c|--cluster-disk-name Device to host rancher and kubelet. Ex: /dev/sdb
-e|--etcd-disk-name Device to host etcd, Not required for agent node. Ex: /dev/sdb
-l|--data-disk-name Device to host datadisk, Not required for agent node. Ex: /dev/sdc
-b|--bundle-disk-name Device to host the uipath bundle.
Only required for offline installation on 1st server node
-f|--complete-suite Installing complete product suite or any of these products:
aicenter, apps, taskmining, documentunderstanding.
This will configure the datadisk volume to be 2TiB instead of 512Gi.
-p|--primary-server Is this machine is first server machine? Applicable only for airgap install.
This is the machine on which UiPath AutomationSuite bundle will be installed.
Default to false
-x|--extend-data-disk Extend the datadisk. Either attach new disk or resize the exiting datadisk
-r|--resize Used in conjunction of with --extend-data-disk to resize the exiting volume,
instead of adding new volume
-d|--debug Run in debug
-h|--help Display help
ExampleUsage:
configureUiPathDisks.sh --node-type server --install-type online \
--cluster-disk-name /dev/sdb --etcd-disk-name /dev/sdc \
--data-disk-name /dev/sdd
configureUiPathDisks.sh --data-disk-name /dev/sdh --extend-data-disk
***************************************************************************************
***************************************************************************************
Utility to configure the disk for UiPath Automation Suite Installation.
Run this script to configure the disks on new machine or to extend the size of datadisk
Arguments
-n|--node-type NodeType, Possible values: agent, server. Default to server
-i|--install-type Installation mode, Possible values: online, offline. Default to online
-c|--cluster-disk-name Device to host rancher and kubelet. Ex: /dev/sdb
-e|--etcd-disk-name Device to host etcd, Not required for agent node. Ex: /dev/sdb
-l|--data-disk-name Device to host datadisk, Not required for agent node. Ex: /dev/sdc
-b|--bundle-disk-name Device to host the uipath bundle.
Only required for offline installation on 1st server node
-f|--complete-suite Installing complete product suite or any of these products:
aicenter, apps, taskmining, documentunderstanding.
This will configure the datadisk volume to be 2TiB instead of 512Gi.
-p|--primary-server Is this machine is first server machine? Applicable only for airgap install.
This is the machine on which UiPath AutomationSuite bundle will be installed.
Default to false
-x|--extend-data-disk Extend the datadisk. Either attach new disk or resize the exiting datadisk
-r|--resize Used in conjunction of with --extend-data-disk to resize the exiting volume,
instead of adding new volume
-d|--debug Run in debug
-h|--help Display help
ExampleUsage:
configureUiPathDisks.sh --node-type server --install-type online \
--cluster-disk-name /dev/sdb --etcd-disk-name /dev/sdc \
--data-disk-name /dev/sdd
configureUiPathDisks.sh --data-disk-name /dev/sdh --extend-data-disk
***************************************************************************************
オンライン
サーバー ノード
オンラインのマルチノードの高可用性対応の運用設定でディスクを構成するには、すべてのサーバー マシンで次のコマンドを実行します。
./configureUiPathDisks.sh --cluster-disk-name name_of_cluster_disk \
--etcd-disk-name name_of_etcd_disk \
--data-disk-name name_of_data_disk
./configureUiPathDisks.sh --cluster-disk-name name_of_cluster_disk \
--etcd-disk-name name_of_etcd_disk \
--data-disk-name name_of_data_disk
エージェント ノード
オンラインのマルチノードの高可用性対応の運用設定でディスクを構成するには、すべてのエージェント マシンで次のコマンドを実行します。
./configureUiPathDisks.sh --cluster-disk-name name_of_cluster_disk \
--node-type agent
./configureUiPathDisks.sh --cluster-disk-name name_of_cluster_disk \
--node-type agent
オフライン
最初のサーバー ノード
オフライン インストールでは、Docker レジストリに製品のイメージを読み込む必要があります。そのためには、別ディスクの形で追加のストレージが必要となります。このディスクは、製品バンドルの un-tar と Docker レジストリへのイメージのアップロードに使用されます。このディスクが必要となるのは、最初のマシンだけです。
--primary-server
フラグを設定します。
オフラインのマルチノードの高可用性対応の運用設定でディスクを構成するには、最初のサーバー マシンで次のコマンドを実行します。
./configureUiPathDisks.sh --cluster-disk-name name_of_cluster_disk \
--etcd-disk-name name_of_etcd_disk \
--data-disk-name name_of_data_disk \
--bundle-disk-name name_of_uipath_bundle_disk \
--primary-server \
--install-type offline
./configureUiPathDisks.sh --cluster-disk-name name_of_cluster_disk \
--etcd-disk-name name_of_etcd_disk \
--data-disk-name name_of_data_disk \
--bundle-disk-name name_of_uipath_bundle_disk \
--primary-server \
--install-type offline
その他のサーバー ノード
--primary-server
と --bundle-disk-name
を指定する必要はありません。
オフラインのマルチノードの高可用性対応の運用設定でディスクを構成するには、その他のサーバー マシンで次のコマンドを実行します。
./configureUiPathDisks.sh --cluster-disk-name name_of_cluster_disk \
--etcd-disk-name name_of_etcd_disk \
--data-disk-name name_of_data_disk \
--install-type offline
./configureUiPathDisks.sh --cluster-disk-name name_of_cluster_disk \
--etcd-disk-name name_of_etcd_disk \
--data-disk-name name_of_data_disk \
--install-type offline
エージェント ノード
--primary-server
と --bundle-disk-name
を指定する必要はありません。
オフラインのマルチノードの高可用性対応の運用設定でディスクを構成するには、その他のエージェント マシンで次のコマンドを実行します。
./configureUiPathDisks.sh --cluster-disk-name name_of_cluster_disk \
--node-type agent \
--install-type offline
./configureUiPathDisks.sh --cluster-disk-name name_of_cluster_disk \
--node-type agent \
--install-type offline
データ ディスクを拡張するには、新しい物理ディスクを接続するか、既存のディスクのサイズを変更します。
新しいディスクを追加する
新たに接続されたディスクを使用してデータ ディスクを拡張するには、サーバー マシンで次のコマンドを実行します。
./configureUiPathDisks.sh --data-disk-name name_of_data_disk \
--extend-data-disk
./configureUiPathDisks.sh --data-disk-name name_of_data_disk \
--extend-data-disk
既存のディスクのサイズを変更する
既存のディスクのサイズを変更することでデータ ディスクを拡張するには、サーバー マシンで次のコマンドを実行します。
./configureUiPathDisks.sh --extend-data-disk --resize
./configureUiPathDisks.sh --extend-data-disk --resize
-
以下の手順を実行して、システムの再起動を処理するように、
/etc/fstab
が適切に構成されていることを確認します。注:etcd と datadisk のマウント ポイントがfstab
ファイルに追加されていることを確認してください。/var/lib/rancher
と/var/lib/kubelet
に対して、別々のディスク パーティションがある場合は、fstab
に、これら 2 つのフォルダーも含める必要があります。さらに、これらのfstab
エントリには、障害発生時の仮想マシンのブートに影響を及ぼさないようにnofail
オプションも指定してください。 -
次のコマンドを実行して、ディスクが適切にマウントされていることを確認します。
mount -afv
mount -afv -
次のような応答が得られるはずです。
/datadisk : already mounted /var/lib/rancher/rke2/server/db : already mounted /var/lib/rancher : already mounted /var/lib/kubelet : already mounted
/datadisk : already mounted /var/lib/rancher/rke2/server/db : already mounted /var/lib/rancher : already mounted /var/lib/kubelet : already mounted
以下のページは、Linux 管理者が Automation Suite のインストールを実行する前に OS およびカーネル レベルの設定を管理するのに役立ちます。
通常、これらの設定は専用の管理構成ツール (Puppet など) で管理します。変更は必ず環境の管理プロセスに従って実施し、一貫性を確保し、変更を文書化してください。
以下の手順は、必ずインストールを開始する前に実行してください。OS およびカーネル レベルでの設定に誤りがあると、直感的に分かりにくいエラーが発生する可能性があります。ほとんどの場合、このようなエラーは、以下の特定の設定を確認することによって回避できます。
sysctl
設定を行う必要があります。
-
IP 転送を有効化
-
リバース パス フィルタリングを無効化する
これを行うには、次のコマンドを実行します。
cat <<EOF >>"/etc/sysctl.d/99-sysctl.conf"
net.bridge.bridge-nf-call-iptables = 1
net.ipv4.ip_forward = 1
net.bridge.bridge-nf-call-ip6tables = 1
net.ipv4.conf.all.rp_filter=0
EOF
cat <<EOF >>"/etc/sysctl.d/99-sysctl.conf"
net.bridge.bridge-nf-call-iptables = 1
net.ipv4.ip_forward = 1
net.bridge.bridge-nf-call-ip6tables = 1
net.ipv4.conf.all.rp_filter=0
EOF
nf-call-iptables
は、ほとんどの Kubernetes のデプロイに必要です。Kubernetes は、クラスターの内部に仮想ネットワークを作成します。これにより、すべてのポッドが独自の IP アドレスを持つことができ、サービス間の通信を容易にするために内部名サービスと組み合わせて使用されます。クラスターは nf-call-iptables
が有効でないと動作しません。詳しくは、Kubernetes の公式ドキュメントをご覧ください。
設定を適用するには、次のコマンドを実行します。
sysctl --system
sysctl --system
fapolicy を使用する場合は、RKE2 固有のポリシーが必要です。これを生成するには、次のコマンドを使用します。
cat <<-EOF >>"/etc/fapolicyd/rules.d/69-rke2.rules"
allow perm=any all : dir=/var/lib/rancher/
allow perm=any all : dir=/opt/cni/
allow perm=any all : dir=/run/k3s/
allow perm=any all : dir=/var/lib/kubelet/
allow perm=any all : dir=/root/.local/share/helm
EOF
cat <<-EOF >>"/etc/fapolicyd/rules.d/69-rke2.rules"
allow perm=any all : dir=/var/lib/rancher/
allow perm=any all : dir=/opt/cni/
allow perm=any all : dir=/run/k3s/
allow perm=any all : dir=/var/lib/kubelet/
allow perm=any all : dir=/root/.local/share/helm
EOF
変更を Linux チームに伝え、適切な構成管理プロセスを経るようにしてください。
/var/lib/rancher
のマウントに使用するディスクに、noexec
や nosuid
が設定されていてはなりません。ディスク ツールを使用すると、これらのプロパティなしでこれらのマウントが自動的に作成されます。
Linux 管理者がこれらのプロパティを手動で設定すると、インスタンスが機能しなくなります。
ディスク構成の詳細については、「ディスクの要件」をご覧ください。
各ソースについて、ファイアウォールで次のポートが有効化されていることを確認してください。
ポート |
プロトコル |
ソース |
目的 |
要件 |
---|---|---|---|---|
|
TCP |
ジャンプ サーバー/クライアント マシン |
SSH 用 (インストール、クラスター管理のデバッグ) |
このポートは、インターネットに開かないでください。クライアント マシンまたはジャンプ サーバーへのアクセスを可能にします。 |
|
TCP |
オフライン インストールのみ: システム メール通知を送信するために必要です。 | ||
|
TCP |
クラスター内のすべてのノードとロード バランサー |
HTTPS 用 (Automation Suite にアクセスする) |
このポートは、クラスター内のすべてのノードとロード バランサーとの間で、送受信接続する必要があります。 |
|
TCP |
オフライン インストールのみ: システム メール通知を送信するために必要です。 | ||
|
TCP |
クラスター内のすべてのノード |
etcd クライアント ポート |
インターネットに公開しないでください。プライベート IP アドレスを介したノード間のアクセスで十分です。 |
|
TCP |
クラスター内のすべてのノード |
etcd ピア ポート |
インターネットに公開しないでください。プライベート IP アドレスを介したノード間のアクセスで十分です。 |
|
TCP |
クラスター内のすべてのノード |
HTTP を使用した Kube API へのアクセス用 (ノード参加に必要) |
このポートは、クラスター内のすべてのノードの間で、送受信接続する必要があります。 |
|
UDP |
クラスター内のすべてのノード |
Flannel (VXLAN) 用に必要 |
インターネットに公開しないでください。プライベート IP アドレスを介したノード間のアクセスで十分です。 |
|
TCP |
クラスター内のすべてのノードとロード バランサー |
HTTP を使用した Kube API へのアクセス用 (ノード参加に必要) |
このポートは、クラスター内のすべてのノードとロード バランサーとの間で、送受信接続する必要があります。 |
|
TCP |
クラスター内のすべてのノード |
kubelet/メトリック サーバー |
インターネットに公開しないでください。プライベート IP アドレスを介したノード間のアクセスで十分です。 |
|
TCP |
クラスター内のすべてのノード |
クラスター内のノード間の内部通信用の NodePort のポート |
インターネットに公開しないでください。プライベート IP アドレスを介したノード間のアクセスで十分です。 |
6443
をクラスターの境界の外側に公開する必要があります。
9345
は、ノードが既存のノードを検出し、マルチノード デプロイのクラスターに参加するために使用されます。高可用性検出メカニズムの実行を続けるには、健全性チェック付きのロード バランサーを介して公開することをお勧めします。
すべてのノードから SQL Server への接続が確立されていることも確認してください。
Istio の予約済みポートのいずれかに SQL Server を公開しないでください。接続障害が発生する場合があります。
ネットワーク上にファイアウォールが設定されている場合、上記要件に従ってこれらのポートが開かれ、トラフィックが許可されていることを確認します。
プロキシを構成するには、前提条件を満たす環境の設定、およびインストール時の高度な構成段階において、追加の構成手順を実行する必要があります。
環境設定時には、次の手順が必要になります。
指定の仮想ネットワークのネットワーク セキュリティ グループで、次のルールを有効化してください。
ソース |
ターゲット |
プロキシ経由のルート |
ポート |
説明 |
---|---|---|---|---|
仮想ネットワーク |
SQL |
いいえ |
SQL Server ポート |
SQL Server に必要です。 |
仮想ネットワーク |
ロード バランサー |
いいえ |
|
クラスターに新しいノードを追加するために必要です。 |
仮想ネットワーク |
クラスター (サブネット) |
いいえ |
すべてのポート |
プライベート IP 範囲での通信に必要です。 |
仮想ネットワーク |
|
いいえ |
|
ログインおよびデプロイ時に ArgoCD クライアントを使用するために必要です。 |
仮想ネットワーク |
プロキシ サーバー |
はい |
すべてのポート |
トラフィックをプロキシ サーバーにルーティングするために必要です。 |
仮想ネットワーク |
NameServer |
いいえ |
すべてのポート |
Azure や AWS など、ほとんどのクラウド サービスでは、これを使用して仮想マシンのメタデータを取得し、これをプライベート IP と見なします。 |
仮想ネットワーク |
MetaDataServer |
いいえ |
すべてのポート |
Azure や AWS など、ほとんどのクラウド サービスでは、IP アドレス
169.254.169.254 を使用してマシンのメタデータを取得します。
|
ノードの構成時に、クラスターに含まれる各ノードに対してプロキシ構成を追加する必要があります。この手順は、ノードからのアウトバウンド トラフィックをプロキシ サーバー経由でルーティングするために必要です。
-
/etc/environment
に、次の構成を追加します。http_proxy=http://<PROXY-SERVER-IP>:<PROXY-PORT> https_proxy=http://<PROXY-SERVER-IP>:<PROXY-PORT> no_proxy=alm.<fqdn>,<fixed_rke2_address>,<named server address>,<metadata server address>,<private_subnet_ip>,localhost,<Comma separated list of ips that should not got though proxy server>
http_proxy=http://<PROXY-SERVER-IP>:<PROXY-PORT> https_proxy=http://<PROXY-SERVER-IP>:<PROXY-PORT> no_proxy=alm.<fqdn>,<fixed_rke2_address>,<named server address>,<metadata server address>,<private_subnet_ip>,localhost,<Comma separated list of ips that should not got though proxy server> -
/etc/wgetrc
に、次の構成を追加します。http_proxy=http://<PROXY-SERVER-IP>:<PROXY-PORT> https_proxy=http://<PROXY-SERVER-IP>:<PROXY-PORT> no_proxy=alm.<fqdn>,<fixed_rke2_address>,<named server address>,<metadata server address>,<private_subnet_ip>,localhost,<Comma separated list of ips that should not got though proxy server>
http_proxy=http://<PROXY-SERVER-IP>:<PROXY-PORT> https_proxy=http://<PROXY-SERVER-IP>:<PROXY-PORT> no_proxy=alm.<fqdn>,<fixed_rke2_address>,<named server address>,<metadata server address>,<private_subnet_ip>,localhost,<Comma separated list of ips that should not got though proxy server>必須パラメーター
説明
http_proxy
ノードからの HTTP アウトバウンド要求をルーティングするために使用します。これはプロキシ サーバーの FQDN とポートとする必要があります。
https_proxy
ノードからの HTTPS アウトバウンド要求をルーティングするために使用します。これはプロキシ サーバーの FQDN とポートとする必要があります。
no_proxy
プロキシ サーバー経由でルーティングしない、ホスト、IP アドレスのコンマ区切りリストです。プライベート サブネット、SQL Server ホスト、名前付きサーバー アドレス、メタデータ サーバー アドレスを指定する必要があります (alm.<fqdn>,<fixed_rke2_address>,<named server address>,<metadata server address>
)。metadata server address
– Azure や AWS など、ほとんどのクラウド サービスでは、IP アドレス169.254.169.254
を使用してマシンのメタデータを取得します。named server address
– Azure や AWS など、ほとんどのクラウド サービスでは、これを使用して DNS クエリを解決します。
-
次のコマンドを実行して、プロキシ設定が適切に構成されていることを検証します。
curl -v $HTTP_PROXY curl -v <fixed_rke_address>:9345
curl -v $HTTP_PROXY curl -v <fixed_rke_address>:9345重要: プロキシ サーバーの要件が満たされたら、インストール時のプロキシ構成を進めるようにしてください。「任意: プロキシ サーバーを構成する」の手順に従い、プロキシ サーバーを適切に設定してください。