常用设置步骤#

本节概述了文档中可能引用的常用设置步骤。

请注意:这些说明是通用的,可能未涵盖所有特定场景。有关详细的最新信息,请始终参考每个相应工具或流程的官方文档。安全敏感步骤(如 SSH 密钥生成或 sudo 访问配置)可能需要此处未涵盖的额外预防措施。

创建 SSH 密钥对#

使用以下命令生成安全的 SSH 密钥对

ssh-keygen -t rsa -b 4096 -C "your_email@example.com"

这将创建一个 4096 位 RSA 密钥对,标签为 your_email@example.com。您也可以使用其他算法,如 Ed25519 以增强安全性。该命令还将显示私钥和公钥已保存的位置。

例如

Your identification has been saved in /home/user/.ssh/id_rsa
Your public key has been saved in /home/user/.ssh/id_rsa.pub

设置实例之间无密码 SSH 身份验证#

要在两个 Ubuntu 22.04 实例之间启用无密码 SSH 访问

在客户端机器上,将公钥复制到服务器

ssh-copy-id user@server_ip

按照屏幕上的说明操作并测试连接

ssh user@server_ip

现在您应该能够无需密码即可登录。或者,您可以手动将公钥复制到服务器的 ~/.ssh/authorized_keys 文件。

配置无密码 Sudo 访问#

要允许用户在不输入密码的情况下运行 sudo 命令

打开 sudoers 文件

sudo visudo

添加以下行,将 username 替换为实际用户名

username ALL=(ALL) NOPASSWD:ALL

保存并退出文件。您可以通过运行 sudo ls /root 进行测试,此命令不应提示您输入密码。

此配置授予指定用户完整的 sudo 访问权限,而无需密码。请谨慎使用此功能,因为如果误用,可能会造成安全风险。或者,您可以将无密码 sudo 访问限制为特定命令,以增强安全性。

安装自定义 helm chart#

本节讨论配置 helm chart 以便部署脚本正确安装它的两种不同方法。请注意,以下选项应以独占方式使用,即配置文件中应仅存在这些选项之一。

来自 NGC 的 Helm Chart#

当您构建了自定义 helm chart 并将其上传到 NGC 时,我们可以按照以下配置样式。假设您的 chart 上传到此处 https://helm.ngc.nvidia.com/myorg/myteam/charts/my-chart-1.0.1.tgz,您将需要使用必要的值配置 spec -> app -> configs -> app_settings -> helm_chart -> repo 部分。例如,以下配置将 NGC 路径引用为 helm repo,并将本地可用的覆盖值文件引用为 helm 覆盖。

app:
   configs:
     app_settings:
       helm_chart:
         repo:
           repo_url: 'https://helm.ngc.nvidia.com/myorg/myteam'
           chart_name: 'my-chart'
           chart_version: '1.0.1'
           release_name: 'my-tokkio-app'
           user_value_override_files:
             - "/home/myuser/custom-charts/my-app-override-values-one.yaml"
             - "/home/myuser/custom-charts/my-app-override-values-two.yaml"

来自本地系统的 Helm Chart#

以最简单的形式,您可以安装本地构建的 helm chart,方法是在 spec -> app -> configs -> app_settings -> helm_chart -> local 的配置部分指定正确的值。例如,以下配置引用本地可用的目录,该目录包含 helm chart 和 helm 覆盖值文件。

请注意 enable: true 开关,以使用本地 helm chart。

app:
   configs:
     app_settings:
       helm_chart:
         local:
            enable: true
            path: /home/myuser/custom-charts/my-app-1.0.0
            user_value_override_files:
             - "/home/myuser/custom-charts/my-app-override-values-one.yaml"
             - "/home/myuser/custom-charts/my-app-override-values-two.yaml"