自动加入 Rancher 环境的 VM 模板

自动加入 Rancher 环境的 VM 模板

我想创建一个虚拟机模板(特别是 vSphere),当用于创建新实例时,它将自动加入现有的 Rancher 环境。我尝试从 Rancher 的“添加自定义主机”页面运行命令来创建代理,然后将该虚拟机冻结为模板。但是当我使用该模板创建新实例时,代理无法从 Rancher 服务器下载代理,因为服务器返回了“未授权”错误状态。我猜这意味着“添加自定义主机”页面中的命令内置了时间戳。

还有其他方法可以设置自动加入 Rancher 环境的 VM 模板吗?

答案1

Rancher Add Custom Host 命令实际上仅特定于 Rancher 环境,因此可以重复使用它来向 Rancher 添加多个主机。我遇到的实际问题有两个方面:

  1. 如果您在虚拟机中启动 Docker,然后将该虚拟机快照为模板,则从模板创建的每个新虚拟机都将具有在首次启动时分配的 Docker 引擎的相同唯一 ID。这可能会导致各种问题。创建虚拟机模板时,请确保该/etc/docker/key.json文件不存在。
  2. Rancher Agent 也出现了类似的问题,它无法在模板 VM 中创建,因为它在第一次运行时也会生成自己的唯一 ID。我通过向 VM 模板添加一个脚本解决了这个问题,该脚本在从模板创建新 VM 时执行,该脚本使用正确的注册 URL 启动新的 Rancher Agent。

相关内容