- 发行说明
- 要求
- 安装
- 入门指南
- 项目
- 数据集
- ML 包
- 管道
- ML 技能
- ML 日志
- AI Fabric 中的 Document Understanding
- 基本故障排除指南
4. 运行 AI Fabric 基础架构安装程序
运行 AI Fabric 基础架构安装程序。完成此安装程序后,系统会生成 Kots 管理控制台,您可以在其中管理应用程序更新、应用程序配置和资源使用情况(CPU/内存压力),以及下载支持包以排除任何问题。
第一步是在此处下载安装程序 zip 文件,然后将其移动到 AI Fabric 服务器。或者,也可以使用以下命令直接从计算机下载该文件
在安装过程中,脚本会将一些文件下载到本地,请确保要在其中执行脚本的目录有 4GB 的可用空间。
默认情况下,Azure RHEL 虚拟机的主目录(默认目录)只有 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 服务器)上,使用客户经理提供的链接下载安装捆绑包。
tar -zxvf aifabric-installer-v2020.10.5.tar.gz
。
这将创建两个文件夹:
aif_infra_20.10.5.tar.gz
,其中包含基础架构组件(约 3.6 GB)ai-fabric-v2020.10.5.airgap
,其中包含应用程序组件(约 8.7 GB)。此文件将在步骤 5“运行 AI Fabric 应用程序安装程序”中上传到用户界面。
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 用户界面的地址和密码
...
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
。在某些情况下,它可能会显示内部 IP 而非公共 IP,如果您从外部访问该地址,请确保使用公共 IP。
bash -l
kubectl kots reset-password -n default
bash -l
kubectl kots reset-password -n default
- 通过运行以下命令,检查 GPU 驱动程序是否已正确安装:
nvidia-smi
nvidia-smi如果 GPU 驱动程序安装正确,则应显示您的 GPU 信息。如果发生错误,则表示无法访问 GPU 或未正确安装驱动程序。必须先解决此问题,然后才能继续。
- 通过运行以下命令,检查 NVIDIA 运行时容器是否已正确安装:
/usr/bin/nvidia-container-runtime
/usr/bin/nvidia-container-runtime
- 从以下链接下载两个可用的脚本来添加 GPU:GPU 脚本。
-
运行脚本以将 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
- 如果是在线安装,请运行以下脚本:
基础架构安装程序不是幂等的。这意味着再次运行安装程序(在已经运行过一次之后)将不起作用。如果此安装程序失败,您将需要重新配置具有新磁盘的新计算机。
最常见的错误原因是启动磁盘在安装过程中变满,或者外部数据磁盘已挂载/格式化。请记住,只可附加磁盘,而不要格式化磁盘。
如果使用未格式化的磁盘仍安装失败,并且存在非常大的启动风险,请联系我们的支持团队,并将支持包添加到您的电子邮件中。可以通过运行以下命令来生成支持包:
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
然后使用以下命令创建 support-bundle 文件:
kubectl support-bundle support-bundle.yaml
kubectl support-bundle support-bundle.yaml
这将创建一个名为 supportbundle.tar.gz 的文件,您可以在提交支持票证时上传此文件。