常用设置步骤#
本节概述了文档中可能引用的常用设置步骤。
请注意:这些说明是通用的,可能未涵盖所有特定场景。有关详细的最新信息,请始终参考每个相应工具或流程的官方文档。安全敏感步骤(如 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"