要在部署时运行 Windows 计算机初始化,请将 Cloudbase-Init 命令添加到 Cloud Assembly 模板代码。

下面所示示例基于 vSphere,但其他云供应商应类似。

必备条件

  • 创建基础架构。在 Cloud Assembly 中,添加 vSphere 云帐户和关联的云区域。
  • 添加特定实例和映像映射,然后添加网络和存储配置文件。

    在基础架构中,映像映射必须指向为支持 Cloudbase-Init 而创建的Windows模板。请参见适用于 vSphere 的 Windows Cloud Assembly 映像

    如果未列出该模板,请转到“云帐户”,然后同步映像。否则,将每隔 24 小时运行一次自动同步。

  • 添加项目,添加用户,并确保用户可以置备到您的云区域。

有关创建基础架构和项目的详细信息,请参见 WordPress 用例中的示例。

过程

  1. Cloud Assembly 中,转到设计选项卡,然后创建新云模板。
  2. 使用所需的 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 文档

  3. 添加 remoteAccess 属性,以便将计算机配置为初始登录到 Windows。

    如创建模板时所述,元数据服务会选取登录凭据,并将其提供给 CreateUserPlugin 和 SetUserPasswordPlugin。请注意,密码必须符合 Windows 密码要求。

  4. Cloud Assembly 中,测试并部署云模板。
  5. 部署后,使用 Windows RDP 和模板中的凭据登录到新的 Windows 计算机并验证自定义。

    在以上示例中,您将查找 C:\test.txt 文件,并检查系统属性中的主机名。