- リリース ノート
- 要件
- インストール
- 基本情報
- プロジェクト
- データセット
- ML パッケージ
- パイプライン
- ML スキル
- ML ログ
- AI Fabric での Document Understanding
- 基本的なトラブルシューティング ガイド
4. AI Fabric インフラストラクチャ インストーラーを実行する
4. AI Fabric インフラストラクチャ インストーラーを実行するこのインストーラーを実行すると、Kots 管理コンソールが生成されます。このコンソールで、アプリケーションの更新、アプリケーションの構成、リソース使用率 (CPU/メモリの負荷) を管理できるほか、あらゆる問題をトラブルシューティングするためのサポート バンドルをダウンロードできます。
まず、インストーラーの zip ファイルをこちらからダウンロードし、AI Fabric サーバーに移動します。また、以下のコマンドを使用すると、マシンから直接ダウンロードできます。
スクリプトを実行すると、インストール プロセスの一環としていくつかのファイルがローカルにダウンロードされます。スクリプトを実行しているディレクトリに 4 GB の空き容量があることを確認してください。
既定では、Azure RHEL VM のホーム ディレクトリ (既定のディレクトリ) で利用可能な容量はわずか 1 GB です。
wget https://download.uipath.com/aifabric/online-installer/v2020.10.5/aifabric-installer-v20.10.5.tar.gz
wget https://download.uipath.com/aifabric/online-installer/v2020.10.5/aifabric-installer-v20.10.5.tar.gz
ファイルを展開し、以下のコマンドを使用してメイン フォルダーに移動します。
tar -xvf aifabric-installer-v20.10.5.tar.gz
cd ./aifabric-installer-v20.10.5
tar -xvf aifabric-installer-v20.10.5.tar.gz
cd ./aifabric-installer-v20.10.5
AI Fabric インストーラーを実行するには、以下のコマンドを実行します。
./setup.sh
./setup.sh
まず、Y を押してライセンス契約に同意します。スクリプトが実行され、インストールするプラットフォームの種類を確認するメッセージが表示されます。下図に示すように onebox と入力し、Enter キーを押します。
セットアップに GPU があるかどうかを尋ねられます。使用しているハードウェアに応じて Y または N を指定します。ドライバーがインストール済みであることを確認してください。
使用しているシステムによっては、インストールを完了するために Y を数回押すように求められることがあります。
この手順の所要時間は 15~25 分です。完了すると、ターミナルにメッセージ「インストールが完了しました」が表示されます。
ブラウザーにアクセスできるローカル マシン (例: Windows Server) で、アカウント マネージャーから提供されたリンクを使用してバンドルのインストールをダウンロードします。
tar -zxvf aifabric-installer-v2020.10.5.tar.gz
を実行します。
これにより、次の 2 つのフォルダーが作成されます。
aif_infra_20.10.5.tar.gz
: インフラストラクチャ コンポーネントを含む (約 3.6 GB)ai-fabric-v2020.10.5.airgap
: アプリケーション コンポーネントが含まれます (約 8.7 GB)。これは手順「 5. AI Fabric アプリケーション インストーラーを実行する」で UI にアップロードされます。
aif_infra_20.10.5.tar.gz
をエアギャップ環境の AI Fabric マシンにコピーします。
以下のコマンドを実行して、インフラストラクチャ インストーラーを開始します。
tar -zxvf aif_infra_20.10.5.tar.gz
cd aif_infra_20.10.5
sudo ./setup.sh
tar -zxvf aif_infra_20.10.5.tar.gz
cd aif_infra_20.10.5
sudo ./setup.sh
どちらの場合も、インストールが成功すると、KotsAdmin UI のアドレスとパスワードが出力されます。
...
Install Successful:
configmap/kurl-config created
Installation
Complete ✔
Kotsadm: http://13.59.108.17:8800
Login with password (will not be shown again): NNqKCY82S
The UIs of Prometheus, Grafana and Alertmanager have been exposed on NodePorts 30900,
30902 and 30903 respectively.
To access Grafana use the generated user:password of admin:msDX5VZ9m .
To access the cluster with kubectl, reload your shell:
bash -l
...
...
Install Successful:
configmap/kurl-config created
Installation
Complete ✔
Kotsadm: http://13.59.108.17:8800
Login with password (will not be shown again): NNqKCY82S
The UIs of Prometheus, Grafana and Alertmanager have been exposed on NodePorts 30900,
30902 and 30903 respectively.
To access Grafana use the generated user:password of admin:msDX5VZ9m .
To access the cluster with kubectl, reload your shell:
bash -l
...
<machine-ip>:8800
については、kotsadm UI のアドレスに関する注意があります。パブリック IP ではなく、内部 IP が表示されることがあります。外部からアクセスする場合は、必ずパブリック IP を使用してください。
bash -l
kubectl kots reset-password -n default
bash -l
kubectl kots reset-password -n default
- 以下のコマンドを実行して、GPU ドライバーが正しくインストールされているかどうかを確認します。
nvidia-smi
nvidia-smiGPU ドライバーが正しくインストールされている場合は、GPU 情報が表示されます。エラーが発生する場合は、GPU がアクセス不可であるか、ドライバーが正しくインストールされていません。次に進む前に、この問題を修正しておく必要があります。
- 以下のコマンドを実行して、NVIDIA Runtime Container が正しくインストールされているかどうかを確認します。
/usr/bin/nvidia-container-runtime
/usr/bin/nvidia-container-runtime
- GPU の追加に利用できる 2 つのスクリプトをこちらのリンクからダウンロードします。
-
スクリプトを実行して GPU をクラスターに追加し、パイプラインと ML スキルで使用できるようにします。インストール方法に応じて、以下のいずれかのオプションを選択します。
- オンライン インストールの場合、次のコマンドを実行します。
<h1>navigate to where you untar installer (or redo it if you have removed it) cd ./aicenter-installer-v21.4.0/infra/common/scripts ./attach_gpu_drivers.sh</h1>
<h1>navigate to where you untar installer (or redo it if you have removed it) cd ./aicenter-installer-v21.4.0/infra/common/scripts ./attach_gpu_drivers.sh</h1> -
エアギャップの場合、まず
aif_infra
ディレクトリにファイルを作成し、同じフォルダーにnvidia-device-plugin.yaml
があることを確認する必要があります。ファイルを作成するには、手順 1 でダウンロードしたattach_gpu_drivers.sh
ファイルの内容を貼り付けます。その後、次のスクリプトを実行します。./attach_gpu_drivers.sh
./attach_gpu_drivers.sh
- オンライン インストールの場合、次のコマンドを実行します。
インフラストラクチャ インストーラーは、べき等ではありません。つまり、インストーラーを 1 回実行した後で再度実行しても機能しません。このインストーラーが失敗する場合は、新しいマシンを新しいディスクで再プロビジョニングする必要があります。
エラーの最も多く見られる原因は、インストール時に起動ディスクの空き容量が不足していること、あるいは外部データ ディスクがマウントまたはフォーマットされていることです。外部ディスクは接続するだけとして、フォーマットしないでください。
外部ディスクが未フォーマットで、起動ディスクの空き容量が十分に大きいにもかかわらずインストールが失敗する場合は、サポート チームにご連絡のうえ、メールでサポート バンドルをお送りください。サポート バンドルを作成するには、以下のコマンドを実行します。
curl https://krew.sh/support-bundle | bash
kubectl support-bundle https://kots.io
curl https://krew.sh/support-bundle | bash
kubectl support-bundle https://kots.io
また、インターネットにアクセスできない場合は、以下のテキストを使用して support-bundle.yaml ファイルを作成します。
apiVersion: troubleshoot.replicated.com/v1beta1
kind: Collector
metadata:
name: collector-sample
spec:
collectors:
- clusterInfo: {}
- clusterResources: {}
- exec:
args:
- "-U"
- kotsadm
collectorName: kotsadm-postgres-db
command:
- pg_dump
containerName: kotsadm-postgres
name: kots/admin_console
selector:
- app=kotsadm-postgres
timeout: 10s
- logs:
collectorName: kotsadm-postgres-db
name: kots/admin_console
selector:
- app=kotsadm-postgres
- logs:
collectorName: kotsadm-api
name: kots/admin_console
selector:
- app=kotsadm-api
- logs:
collectorName: kotsadm-operator
name: kots/admin_console
selector:
- app=kotsadm-operator
- logs:
collectorName: kotsadm
name: kots/admin_console
selector:
- app=kotsadm
- logs:
collectorName: kurl-proxy-kotsadm
name: kots/admin_console
selector:
- app=kurl-proxy-kotsadm
- secret:
collectorName: kotsadm-replicated-registry
includeValue: false
key: .dockerconfigjson
name: kotsadm-replicated-registry
- logs:
collectorName: rook-ceph-agent
selector:
- app=rook-ceph-agent
namespace: rook-ceph
name: kots/rook
- logs:
collectorName: rook-ceph-mgr
selector:
- app=rook-ceph-mgr
namespace: rook-ceph
name: kots/rook
- logs:
collectorName: rook-ceph-mon
selector:
- app=rook-ceph-mon
namespace: rook-ceph
name: kots/rook
- logs:
collectorName: rook-ceph-operator
selector:
- app=rook-ceph-operator
namespace: rook-ceph
name: kots/rook
- logs:
collectorName: rook-ceph-osd
selector:
- app=rook-ceph-osd
namespace: rook-ceph
name: kots/rook
- logs:
collectorName: rook-ceph-osd-prepare
selector:
- app=rook-ceph-osd-prepare
namespace: rook-ceph
name: kots/rook
- logs:
collectorName: rook-ceph-rgw
selector:
- app=rook-ceph-rgw
namespace: rook-ceph
name: kots/rook
- logs:
collectorName: rook-discover
selector:
- app=rook-discover
namespace: rook-ceph
name: kots/rook
apiVersion: troubleshoot.replicated.com/v1beta1
kind: Collector
metadata:
name: collector-sample
spec:
collectors:
- clusterInfo: {}
- clusterResources: {}
- exec:
args:
- "-U"
- kotsadm
collectorName: kotsadm-postgres-db
command:
- pg_dump
containerName: kotsadm-postgres
name: kots/admin_console
selector:
- app=kotsadm-postgres
timeout: 10s
- logs:
collectorName: kotsadm-postgres-db
name: kots/admin_console
selector:
- app=kotsadm-postgres
- logs:
collectorName: kotsadm-api
name: kots/admin_console
selector:
- app=kotsadm-api
- logs:
collectorName: kotsadm-operator
name: kots/admin_console
selector:
- app=kotsadm-operator
- logs:
collectorName: kotsadm
name: kots/admin_console
selector:
- app=kotsadm
- logs:
collectorName: kurl-proxy-kotsadm
name: kots/admin_console
selector:
- app=kurl-proxy-kotsadm
- secret:
collectorName: kotsadm-replicated-registry
includeValue: false
key: .dockerconfigjson
name: kotsadm-replicated-registry
- logs:
collectorName: rook-ceph-agent
selector:
- app=rook-ceph-agent
namespace: rook-ceph
name: kots/rook
- logs:
collectorName: rook-ceph-mgr
selector:
- app=rook-ceph-mgr
namespace: rook-ceph
name: kots/rook
- logs:
collectorName: rook-ceph-mon
selector:
- app=rook-ceph-mon
namespace: rook-ceph
name: kots/rook
- logs:
collectorName: rook-ceph-operator
selector:
- app=rook-ceph-operator
namespace: rook-ceph
name: kots/rook
- logs:
collectorName: rook-ceph-osd
selector:
- app=rook-ceph-osd
namespace: rook-ceph
name: kots/rook
- logs:
collectorName: rook-ceph-osd-prepare
selector:
- app=rook-ceph-osd-prepare
namespace: rook-ceph
name: kots/rook
- logs:
collectorName: rook-ceph-rgw
selector:
- app=rook-ceph-rgw
namespace: rook-ceph
name: kots/rook
- logs:
collectorName: rook-discover
selector:
- app=rook-discover
namespace: rook-ceph
name: kots/rook
つづいて以下のコマンドを使用してサポート バンドルを作成します。
kubectl support-bundle support-bundle.yaml
kubectl support-bundle support-bundle.yaml
supportbundle.tar.gz ファイルが作成されるので、サポート チケットを提出するときにアップロードします。