要远程访问 Cloud Assembly 已部署的计算机,请在部署之前将属性添加到该计算机的云模板中。

对于远程访问,您可以配置以下身份验证选项之一。

注: 在需要复制密钥的情况下,您还可以在云模板中创建一个 cloudConfig 部分,以便在置备时自动复制密钥。此处没有详细说明,但 Cloud Assembly 中的计算机初始化提供了有关 cloudConfig 的一般信息。

在置备时生成密钥对

如果您没有自己的公钥-私钥对可用于远程访问身份验证的,则可以让 Cloud Assembly 生成密钥对。

使用以下代码作为指导。

  1. Cloud Assembly 中,在置备之前,请将 remoteAccess 属性添加到云模板中,如示例中所示。

    username 是可选的。如果省略它,系统会生成一个随机 ID 作为 username。

    示例:

    type: Cloud.Machine
    properties:
      name: our-vm2
      image: Linux18
      flavor: small
      remoteAccess:
        authentication: generatedPublicPrivatekey
        username: testuser
    
  2. Cloud Assembly 中,从云模板中置备计算机,并使其进入启动状态。

    置备过程会生成密钥。

  3. 资源 > 部署 > 拓扑属性中找到密钥名称。
  4. 使用云提供商接口(如 vSphere Client)访问已置备的计算机命令行。
  5. 授予对私钥的读取权限。

    chmod 600 key-name

  6. 转到 Cloud Assembly 部署,选择计算机,然后单击操作 > 获取私钥
  7. 将私钥文件复制到您的本地计算机。

    典型的本地文件路径是 /home/username/.ssh/key-name

  8. 打开远程 SSH 会话,然后连接到已置备的计算机。

    ssh -i key-name user-name@machine-ip

提供您自己的公钥-私钥对

许多企业会创建和分发自己的公钥-私钥对以进行身份验证。

使用以下代码作为指导。

  1. 在本地环境中,获取或生成您的公钥-私钥对。

    现在,只需在本地生成并保存密钥。

  2. Cloud Assembly 中,在置备之前,请将 remoteAccess 属性添加到云模板中,如示例中所示。

    sshKey 包括可在公钥文件 key-name.pub 中找到的长字母数字。

    username 是可选的,创建后可用在登录时使用。如果省略它,系统会生成一个随机 ID 作为 username。

    示例:

    type: Cloud.Machine
    properties:
      name: our-vm1
      image: Linux18
      flavor: small
      remoteAccess:
        authentication: publicPrivateKey
        sshKey: ssh-rsa Iq+5aQgBP3ZNT4o1baP5Ii+dstIcowRRkyobbfpA1mj9tslf qGxvU66PX9IeZax5hZvNWFgjw6ag+ZlzndOLhVdVoW49f274/mIRild7UUW... 
        username: testuser
    
  3. Cloud Assembly 中,从云模板中置备计算机,并使其进入启动状态。
  4. 使用云供应商客户端访问置备的计算机。
  5. 将公钥文件添加到计算机上的主文件夹中。使用您在 remoteAccess.sshKey 中指定的密钥。
  6. 确认您的本地计算机上存在私钥文件副本。

    密钥通常是不带 .pub 扩展名的 /home/username/.ssh/key-name

  7. 打开远程 SSH 会话,然后连接到已置备的计算机。

    ssh -i key-name user-name@machine-ip

提供 AWS 密钥对

通过将 AWS 密钥对名称添加到云模板,您可以远程访问 Cloud Assembly 部署到 AWS 的计算机。

请注意,AWS 密钥对是区域特定的。如果您将工作负载置备到 us-east-1,则密钥对必须存在于 us-east-1 中。

使用以下代码作为指导。此选项仅适用于 AWS 云区域。

type: Cloud.Machine
properties:
  image: Ubuntu
  flavor: small
  remoteAccess:
    authentication: keyPairName
    keyPair: cas-test
constraints:
  - tag: 'cloud:aws'

提供用户名和密码

通过将用户名和密码添加到云模板,可以方便地远程访问 Cloud Assembly 部署的计算机。

虽然安全性较低,但使用用户名和密码远程登录可能就是您的情况所需要的全部。请注意,某些云供应商或配置可能不支持这个不太安全的选项。

  1. Cloud Assembly 中,在置备之前,请将 remoteAccess 属性添加到云模板中,如示例中所示。

    设置您希望在登录时使用的用户名和密码。

    示例:

    type: Cloud.Machine
    properties:
      name: our-vm3
      image: Linux18
      flavor: small
      remoteAccess:
        authentication: usernamePassword
        username: testuser
        password: admin123
    
  2. Cloud Assembly 中,从云模板中置备计算机,并使其进入启动状态。
  3. 转到您的云供应商界面,并访问已置备的计算机。
  4. 在已置备的计算机上,创建或启用该帐户。
  5. 从本地计算机中,打开到已置备计算机 IP 地址或 FQDN 的远程会话,并像往常一样使用用户名和密码登录。