安装指南#

Tokkio 工作流程可以在裸金属实例上以不同的方式启动,本文档介绍了使用 Tokkio 部署脚本在具有必要 GPU 硬件的单台裸金属机器上设置 Tokkio 管线。下图表示在裸金属服务器上安装 Tokkio 的组件布局。

Baremetal Installation

先决条件#

系统#

控制器实例#

  • Ubuntu 22.04 操作系统。

  • SSH 密钥对

  • 无密码 sudo 访问权限。

应用程序实例#

  • Ubuntu 22.04 操作系统。

  • 来自控制器实例的无密码身份验证。

  • 无密码 sudo 访问权限。

  • Kubernetes 尚未安装。

  • 存储:/opt 文件夹至少 300GB 空间,/var/lib/containerd 至少 400GB 空间

  • 根据参考工作流程所需的 GPU 设备

访问权限#

访问启动 Tokkio 管线应用程序期间使用的所有工件。例如,NGC 上的 Tokkio 应用程序 Helm Chart。

安装步骤#

  1. 克隆 NVIDIA/ACE.git 仓库并导航到 BareMetal 部署脚本

git clone https://github.com/NVIDIA/ACE.git
cd ACE/workflows/tokkio/scripts/one-click/baremetal
  1. 准备配置文件,可以通过复制基础 config-template.yml 或复制 config-template-examples 文件夹下的示例配置文件之一。

cp config-template-examples/llm-ov-3d-coturn-1x-stream/config-template.yml ./my-config.yml
  1. 使用您的特定设置修改 my-config.yml

vi my-config.yml
  1. 设置环境变量。

  • 创建文件 my-env-file.env 或从 config-template-examples 文件夹复制

  • 使用您的特定设置修改环境变量文件

  • 加载环境变量文件

cp config-template-examples/llm-ov-3d-coturn-1x-stream/my-config.env my-env-file.env
vi my-env-file.env
  1. 加载环境变量文件

source my-env-file.env
  1. 运行安装命令

./envbuild.sh install --component all --config-file ./my-config.yml
  1. 验证安装

  • 检查 Pod 状态:kubectl get pods -n <application-namespace>

  • 等待所有 Pod 达到 Ready 状态(可能需要长达 60 分钟)

  1. 访问 UI

  • 在您要访问 UI 的机器上,打开 Chrome 浏览器并导航到 chrome://flags/#unsafely-treat-insecure-origin-as-secure

  • 选择 启用

  • 在其下设置或添加以下 Chrome 标志,用实际 IP 地址值替换。 http://<your-app-instance-ip>:80, http://<your-app-instance-ip>:30888, ws://<your-app-instance-ip>:30888

  • 按照 Chrome 指示重新启动浏览器并完成此步骤。

  • http://<your-app-instance-ip>:80 访问 Tokkio 管线 UI

  • 接受浏览器对麦克风、扬声器和摄像头的权限

  • 头像应根据配置的 UI 设置显示

Baremetal Installation

注意

如果您使用任何其他浏览器,请按照等效步骤操作。

卸载步骤#

仅卸载应用程序#

  • 加载正确的环境变量文件

source my-env-file.env
  • 运行以下命令仅卸载应用程序组件

./envbuild.sh uninstall --component app --config-file ./my-config.yml
  • 通过以下命令清除先前安装的任何 persistent-volumes

kubectl delete pv -n <application-namespace>

卸载整个设置#

  • 加载正确的环境变量文件

source my-env-file.env
  • 运行以下卸载命令

./envbuild.sh uninstall --component all --config-file ./my-config.yml

注意

此步骤将卸载整个 Kubernetes 集群,请谨慎使用。

其他注意事项#

安全#

在生产环境中部署 Tokkio 的安全责任由最终用户承担。在生产环境中部署时,请让安全专家审查任何潜在的风险和威胁;定义信任边界,保护通信渠道,集成 AuthNAuthZ 并采取适当的访问控制,保持部署(包括容器)为最新状态,并确保容器安全且没有漏洞。

必备技能和背景知识#

虽然此处的说明可以帮助您启动并运行 Tokkio 工作流程,但某些技能和背景知识将使您的部署成功,并且在出现任何问题时也可以轻松调试。我们在下面提到了一些。

命令行界面 (CLI)#

  • 基本命令:用户应熟悉基本的命令行操作,例如导航目录、执行脚本和管理文件。

  • 环境配置:了解环境变量以及 PATH 设置在 Linux 上的工作方式将极大地帮助操作 OneClick 脚本。

  • 脚本基础知识:基本的脚本知识(例如,shell 脚本)有助于理解 OneClick 脚本的运行方式以及排查可能出现的任何问题。

Yaml#

YAML 语法和结构:YAML 因其可读性和灵活性而常用于云原生应用程序中的配置文件。OneClick 脚本中使用的配置模板使用 YAML 格式。用户应熟悉 YAML 语法和结构。

Kubernetes 生态系统#

Tokkio UI 应用程序是一个云原生应用程序,并使用容器化、Kubernetes、Helm 等概念。您需要熟悉这些概念才能从使用部署脚本和应用程序中获得最佳效果。

  • Kubernetes 基础知识:基本了解 Kubernetes 核心概念,例如 Pod、服务和部署。

  • kubectl:熟悉用于与 Kubernetes 集群交互的命令行工具,包括查询正在运行的应用程序 Pod 的状态或日志等。

  • Helm:了解 Kubernetes 的 Helm 包管理器,它通过管理 Chart(预配置 Kubernetes 资源定义的集合)来简化应用程序部署。以及如何使用带有覆盖值的 Helm 将有助于正确配置模板。