要在部署时运行 Windows 计算机初始化,请将 Cloudbase-Init 命令添加到 Cloud Assembly 模板代码。
下面所示示例基于 vSphere,但其他云供应商应类似。
必备条件
- 创建基础架构。在 Cloud Assembly 中,添加 vSphere 云帐户和关联的云区域。
- 添加特定实例和映像映射,然后添加网络和存储配置文件。
在基础架构中,映像映射必须指向为支持 Cloudbase-Init 而创建的Windows模板。请参见适用于 vSphere 的 Windows Cloud Assembly 映像。
如果未列出该模板,请转到“云帐户”,然后同步映像。否则,将每隔 24 小时运行一次自动同步。
- 添加项目,添加用户,并确保用户可以置备到您的云区域。
有关创建基础架构和项目的详细信息,请参见 WordPress 用例中的示例。
过程
- 在 Cloud Assembly 中,转到设计选项卡,然后创建新云模板。
- 使用所需的 Cloudbase-init 命令添加
cloudConfig
部分。以下命令示例将在 Windows
C:
驱动器上创建新文件,并设置主机名。resources: Cloud_Machine_1: type: Cloud.Machine properties: image: cloudbase-init-win-2016 flavor: small remoteAccess: authentication: usernamePassword username: Administrator password: Password1234@$ cloudConfig: | #cloud-config write_files: content: Cloudbase-Init test path: C:\test.txt set_hostname: testname
有关详细信息,请参见 Cloudbase-init 文档。
- 添加
remoteAccess
属性,以便将计算机配置为初始登录到 Windows。如创建模板时所述,元数据服务会选取登录凭据,并将其提供给 CreateUserPlugin 和 SetUserPasswordPlugin。请注意,密码必须符合 Windows 密码要求。
- 从 Cloud Assembly 中,测试并部署云模板。
- 部署后,使用 Windows RDP 和模板中的凭据登录到新的 Windows 计算机并验证自定义。
在以上示例中,您将查找
C:\test.txt
文件,并检查系统属性中的主机名。