如果您不熟悉 vRealize Automation 或仅需要进修课程,本教程将指导您完成 Cloud Assembly 配置过程。添加云 vSphere 帐户端点、定义基础架构、将用户添加到项目,然后基于 vSphere 资源类型使用 VMware Cloud Templates 设计和部署工作负载,学习整个过程。

虽然本教程仅仅是个开端,但您已踏上实现自助服务自动化和迭代开发(适用于多个公有云和私有云)之路。本教程重点介绍 VMware vCenter Server 和 NSX-T。完成此工作流后,可以应用所学知识添加更多类型的云帐户以及交付更完美的云模板。

按照步骤操作时,我们会提供数据示例。请将示例替换为适用于您环境的值。

您将在 Cloud Assembly 中执行本教程中的所有步骤。

此配置过程是体验 Cloud Assembly 开发过程的基础。在构建基础架构并掌握云模板开发技能时,将重复使用并深入了解此工作流。

必备条件

  • 确认您具有 Cloud Assembly 管理员角色。请参见vRealize Automation 中的组织和服务用户角色
  • 如果尚未在 vRealize Automation 控制台中使用 VMware vCenter Server 或 VMware Cloud Foundation 快速入门向导,现在可以使用。

    这些向导驱动式工作流包括本教程中的大部分配置,但不包括全部配置。

    本教程提供动手体验,可帮助您深入了解如何组合工作基础架构并部署工作负载。

    请参见“入门”指南》中的如何设置 Cloud Assembly

  • 如果尚未使用 Cloud Assembly 中提供的引导式设置,现在可以使用。引导式设置可引导您完成在本教程中执行的大部分过程,但不是全部过程。要打开引导式设置,请单击选项卡栏右侧的引导式设置
  • 确保您具有 vCenter Server 和 NSX 凭据。有关凭据必须具有的权限的详细信息,请参见在 vRealize Automation 中使用云帐户所需的凭据。如果您计划将其他用户添加到项目,请确认他们是 Cloud Assembly 服务的成员。

步骤 1:添加 vCenter Server 云帐户和 NSX 云帐户

这些云帐户提供 vRealize Automation 用于连接到 vCenter Server 和关联 NSX 服务器的凭据。

  1. 添加 vCenter Server 云帐户。

    vCenter Server 云帐户提供 vCenter 凭据,Cloud Assembly 可用于发现资源和部署云模板。

    有关 vCenter Server 云帐户的其他信息,请参见在 vRealize Automation 中创建 vCenter 云帐户

    1. 选择基础架构 > 连接 > 云帐户
    2. 单击添加云帐户,然后选择 vCenter
    3. 输入值。
      vCenter Server 云帐户配置页面,其中包含示例值。

      请记住,这些值仅为示例而已。您的值将特定于您的环境。

      设置 示例值
      名称 vCenter Server 帐户
      vCenter IP 地址/FQDN your-dev-vcenter.company.com
      用户名和密码 [email protected]
    4. 要验证凭据,请单击验证
    5. 允许置备到选定数据中心,请选择一个或多个数据中心。
    6. 跳过 NSX 云帐户。稍后将配置此帐户,将 vCenter Server 帐户链接到 NSX 云帐户。
    7. 单击添加
  2. 添加关联的 NSX 云帐户。

    NSX-T 云帐户提供 NSX-T 凭据,Cloud Assembly 可用于发现网络资源并使用云模板部署网络。

    有关 NSX-T 云帐户的详细信息,请参见在 vRealize Automation 中创建 vCenter 云帐户

    1. 选择基础架构 > 连接 > 云帐户
    2. 单击添加云帐户,然后选择 NSX-T 或 NSX-V。本教程使用 NSX-T
    3. 输入值。
      NSX-T 云帐户配置页面,其中包含示例值。

      这些值仅为示例而已。您的值将特定于您的环境。

      设置 示例值
      名称 NSX-T 帐户
      vCenter IP 地址/FQDN your-dev-NSX-vcenter.company.com
      用户名和密码 [email protected]
      NSX 模式

      不知道该选择哪个?

      这是使用产品内置帮助的好机会。单击字段右侧的信息图标。请注意,字段级别帮助包括可帮助您配置选项的信息。

      在此示例中,选择策略

    4. 要验证凭据,请单击验证
    5. 要关联在上一步中创建的 vCenter 云帐户,请单击添加,然后选择 vCenter 帐户

      此 vCenter 云帐户关联可确保网络安全。

    6. 在 NSX 云帐户页面上,单击添加

步骤 2:定义云区域计算资源

云区域是帐户/区域中的计算资源组,可将其供项目使用。项目成员通过使用分配的云区域中的资源部署云模板。如果希望对部署项目云模板的位置进行更精细的控制,可以创建多个具有不同计算资源的云区域。

帐户/区域是云供应商将资源与隔离区域或数据存储相关联的方式。帐户指示云帐户类型,区域指示区域或数据存储。vCenter Server 使用数据存储,置备资源是选定的集群和资源池。

在本教程中,您必须确保云区域包括支持项目开发团队目标的资源以及您的预算和管理要求。

有关云区域的详细信息,请参见了解有关 Cloud Assembly 云区域的更多信息

  1. 选择基础架构 > 配置 > 云区域
  2. 单击为 vCenter Server 实例添加的云区域,然后输入值。
    云区域配置页面,其中包含示例值。
    设置 示例值
    帐户/区域 vCenter 帐户/数据中心名称
    名称 vCenter Server 云区域

    此值在创建后将无法更改。如果要为不同的 vCenter Server 配置不同的数据中心,则必须创建一个新的云区域,您可以在其中选择帐户/区域。

    说明 All vCenter Server compute resources for development.
    策略

    默认

    如果对字段值有疑问,您可以查阅帮助。

    请记住,所有值都仅为示例而已。您的区域详细信息将特定于您的环境。

  3. 单击计算资源选项卡,然后验证计算资源是否全部存在。

    如果需要排除一个,请切换到手动选择计算资源,然后仅添加要包含在云区域中的计算资源。


    云区域的“计算资源”选项卡,其中包含菜单已展开。
  4. 单击保存
  5. 对任何其他云区域重复此过程,但必须确保区域名称唯一。

步骤 3:配置可用于帐户/区域的可能资源

您已将帐户/区域添加到云区域。现在,可以为云帐户定义可能的计算机大小(特定实例映射)、映像映射、网络配置文件和存储配置文件。部署云模板时,将评估映射和配置文件定义的匹配性,从而确保工作负载包括适当的计算机大小(特定实例)、映像、网络和存储。

  1. 为帐户/区域配置特定实例映射。

    特定实例有时也称为“T 恤调整大小”。根据云模板的配置方式,应用的特定实例映射将确定 CPU 数和内存。

    有关特定实例映射的详细信息,请参见了解有关 vRealize Automation 中的特定实例映射的更多信息

    1. 选择基础架构 > 配置 > 特定实例映射
    2. 单击新建特定实例映射,然后输入定义小型、中型和大型计算机的值。

      请记住,这些是示例值。必须选择相关的帐户/区域并定义大小。


      特定实例映射配置页面,其中包含“小型”示例值。
      设置 示例值
      特定实例名称 small
      帐户/区域

      CPU 值

      内存值

      vCenter 帐户/数据中心

      2

      1 GB

    3. 单击创建
    4. 要创建其他大小,请为帐户/区域配置中型和大型特定实例映射。
      设置 示例值
      特定实例名称

      帐户/区域

      CPU 值

      内存值

      中型

      vCenter 帐户/数据中心

      4

      2 GB

      特定实例名称

      帐户/区域

      CPU 值

      内存值

      大型

      vCenter 帐户/数据中心

      8

      4 GB

  2. 为帐户/区域配置映像映射。

    映像是云模板中计算机的操作系统。使用 vCenter Server 映像时,需要选择 vCenter 模板。

    有关映像映射的详细信息,请参见了解有关 vRealize Automation 中的映像映射的更多信息

    1. 选择基础架构 > 配置 > 映像映射
    2. 单击新建映像映射,然后搜索帐户/区域的映像。

      请记住,这些是示例值。您必须选择在您的帐户/区域中发现的相关映像。


      映像映射配置页面,其中包含 centos 示例值。
      设置 示例值
      映像名称 centos
      帐户/区域 vCenter 帐户
      映像 centos7
    3. 单击创建
    4. 重复此过程以创建其他映像映射。例如,帐户/区域的 ubuntu 映射。
  3. 配置网络配置文件。

    网络配置文件定义可用于帐户/区域的网络和网络设置。配置文件必须支持目标部署环境。

    此任务提供最少量配置信息,以确保成功。如果需要有关网络配置文件的详细信息,请从了解有关 vRealize Automation中的网络配置文件的更多信息开始。

    1. 选择基础架构 > 配置 > 网络配置文件
    2. 单击新建网络配置文件,然后创建用于 vCenter 帐户/数据中心帐户/区域的配置文件。
      网络配置文件“摘要”选项卡,其中包含示例值。
      设置 示例值
      帐户/区域 vCenter 帐户/数据中心
      名称 Network Profile
      说明 Networks for development teams.
    3. 单击网络选项卡,然后单击添加网络
      网络配置文件“网络”选项卡,其中表已填充。
    4. 选择要供应用程序开发团队使用的 NSX 网络。

      在此示例中,我们有一个名为 DevProject-004 的 NSX-T 网络。

    5. 单击网络策略选项卡,然后创建策略。
      “网络策略”选项卡,已选择相关值。
      设置 示例值
      隔离策略
      第 0 层逻辑路由器 Tier-0-router
      边缘集群 EdgeCluster
    6. 单击创建
  4. 配置存储配置文件。

    存储配置文件定义帐户/区域的磁盘。配置文件必须支持目标部署环境。

    如果需要有关存储配置文件的详细信息,请参见了解有关 vRealize Automation 中的存储配置文件的更多信息

    1. 选择基础架构 > 配置 > 存储配置文件
    2. 单击新建存储配置文件,然后创建用于 vCenter Server/数据中心帐户/区域的配置文件。

      除非在表中指定,否则保留默认值。


      存储配置文件配置页面,已选择相关值。
      设置 示例值
      帐户/区域 vCenter 帐户/数据中心
      名称 Storage Profile
      数据存储/集群 已选择具有足够容量且可供所有主机访问的数据存储。
      此区域的首选存储 选中该复选框。
    3. 单击创建

步骤 4:创建项目

可以在此阶段真正开始考虑项目目标。
  • 哪些用户需要访问计算资源,以便他们可以创建和部署应用程序云模板?有关不同项目角色可以查看和执行哪些操作的详细信息,请参见vRealize Automation 中的组织和服务用户角色
  • 项目成员是否将创建从开发到生产的应用程序?哪些是必要的资源?
  • 他们需要哪些云区域?应对项目的每个区域设置何种优先级和限制?

在本教程中,我们将在开发团队创建和扩展内部软件应用程序时为其提供支持。

此任务提供最少量配置信息,以确保成功。如果需要有关项目的详细信息,请从了解有关 Cloud Assembly 项目的更多信息开始。

  1. 选择基础架构 > 管理 > 项目
  2. 单击新建项目,然后输入名称 Development Project
  3. 单击用户选项卡,然后单击添加用户

    此时不需要添加用户。但是,如果您希望其他用户使用云模板,这些用户必须是项目的成员。

  4. 输入电子邮件地址以将用户添加为项目成员或管理员,具体取决于您希望每个人拥有的权限。
    项目的“添加用户”对话框,在“用户”选项卡上进行访问。
  5. 单击置备,然后单击添加区域 > 云区域
  6. 添加用户可部署到的云区域。

    此外,还可以为项目中的云区域设置资源限制。以后,可以为其他项目设置不同的限制。


    项目的“添加云区域”对话框,在“置备”选项卡上进行访问。
    项目云区域设置 示例值
    云区域 vCenter 帐户云区域
    置备优先级 1
    实例限制 5
  7. 将任何其他云区域添加到项目。
  8. 单击创建
  9. 要验证是否已将项目添加到云区域,请选择基础架构 > 配置 > 云区域,然后打开 vCenter Account Zone 云区域卡视图,以便可以查看项目选项卡。您应该会看到 Development Project。

步骤 5:设计并部署基本云模板

您可以设计并部署云模板,确保正确配置基础架构以支持模板。以后,可以在创建满足项目需求的应用程序时基于模板构建。

构建云模板的最佳方式是逐个组件构建,验证是否在两次更改之间进行部署。本教程从简单的计算机开始,然后以迭代方式添加更多资源。

此过程中的示例使用 YAML 代码编辑器。此方法可更简便地提供代码片段。但是,如果您更喜欢使用对话框驱动式用户界面,请单击输入

与本教程所提供内容相比,使用云模板可以执行更多操作。如果需要详细信息,请从设计 Cloud Assembly 部署开始。

本教程使用 vSphere 和 NSX 资源类型。这些资源类型只能在 vCenter Server 云帐户端点上部署。您还可以使用云平台无关的资源类型创建可在任何端点上部署的云模板。有关如何为任何端点配置基础架构和设计模板的示例,请参见教程:在 Cloud Assembly 中设置和测试多云基础架构和部署

视频图标。视频链接位于以下句子中。有关演示此过程中基本步骤的视频,请观看如何设计和部署基本云模板

  1. 选择设计 > 云模板
  2. 选择新建自 > 空白画布
  3. 输入名称 Development Template,选择项目 Development Project,然后单击创建
  4. 将 vSphere 计算机添加到设计画布,进行测试并部署。
    云模板设计画布,其中显示从 vSphere 计算机到画布的箭头,然后突出显示 YAML。
    1. 从资源类型窗格中,将 vSphere 计算机拖动到画布中。

      请注意,代码窗格将显示计算机的 YAML,其中映像以及预定义的 CPU 和内存属性的值为空。您将使此模板能够支持灵活的大小调整。

    2. 要选择映像值,请将指针放在 image 的单引号之间,然后从配置的映像列表中选择 centos

      请记住,这些是示例值。如果未配置 centos 映像,请选择已配置的映像。

    3. 在映像属性下方创建一行,输入或选择 flavor,然后从列表中选择 small
    4. 删除 cpuCounttotalMemory
      您的 YAML 应类似于以下示例。
      formatVersion: 1
      inputs: {}
      resources:
        Cloud_vSphere_Machine_1:
          type: Cloud.vSphere.Machine
          properties:
            image: centos
            flavor: small
    5. 单击测试
      通过测试,可以验证云模板的语法和布置。测试成功并不意味着部署模板时不出错。
      测试结果对话框,其中显示测试成功。

      如果测试失败,请单击置备图,然后查找故障点。有关使用图表进行故障排除的详细信息,请参见测试基本云模板

    6. 单击部署
    7. 输入部署名称 DevTemplate - machine,然后单击部署

      可以在 DevTemplate 部署详细信息页面或“部署”页面上跟踪部署进度。选择资源 > 部署

      如果部署失败,可以对问题进行故障排除并修改模板。请参见Cloud Assembly 部署失败时可以执行哪些操作

      成功的部署在“部署”页面上类似于以下示例。
      部署详细信息“拓扑”选项卡,其中显示单个计算机。
  5. 对模板进行版本控制并添加网络。

    要使云模板可在 Service Broker 目录中使用,需要对其进行版本控制,但在开发期间拥有一个可以恢复到的优质版本,非常有帮助。

    1. 在设计画布中打开模板。
    2. 单击版本,输入类似于 Simple deployable machine描述,然后单击创建
    3. 从“资源类型”窗格中,将 NSX 网络资源类型拖动到画布中。
    4. 将计算机连接到网络。
      单击计算机组件上的小圆圈,然后将连接拖动到网络。
      云模板设计画布,其中已圈出连接器,但连接线尚未连接。
      请注意,YAML 现在类似于以下示例。
      formatVersion: 1
      inputs: {}
      resources:
        Cloud_vSphere_Machine_1:
          type: Cloud.vSphere.Machine
          properties:
            image: centos
            flavor: small
            networks:
              - network: '${resource.Cloud_NSX_Network_1.id}'
            attachedDisks: []
        Cloud_NSX_Network_1:
          type: Cloud.NSX.Network
          properties:
            networkType: existing
    5. 单击测试以验证模板。
    6. 单击部署
    7. 输入名称 DevTemplate - machine - network,然后单击部署
    8. 跟踪进度并检查成功的部署。
  6. 对模板进行版本控制并添加数据磁盘。
    1. 在设计画布中打开模板。
    2. 对模板进行版本控制。

      输入 Machine with existing network 作为描述。

    3. 从“资源类型”窗格中,将 vSphere 磁盘资源类型拖动到画布中。
    4. 将磁盘连接到计算机。
      云模板设计画布,其中计算机连接到网络,且存储连接到计算机。
      请注意,YAML 现在类似于以下示例。
      formatVersion: 1
      inputs: {}
      resources:
        Cloud_vSphere_Disk_1:
          type: Cloud.vSphere.Disk
          properties:
            capacityGb: 1
        Cloud_vSphere_Machine_1:
          type: Cloud.vSphere.Machine
          properties:
            image: centos
            flavor: small
            networks:
              - network: '${resource.Cloud_NSX_Network_1.id}'
            attachedDisks:
              - source: '${resource.Cloud_vSphere_Disk_1.id}'
        Cloud_NSX_Network_1:
          type: Cloud.NSX.Network
          properties:
            networkType: existing
    5. 测试模板。
    6. 使用名称 DevTemplate - machine - network - storage 部署模板。
    7. 跟踪进度并检查成功的部署。
    8. 对模板进行版本控制。

      输入 Machine with existing network and storage disk 作为描述。

      此最终版本确保可以将工作模板添加到服务目录中。

教程结果

您已完成将 Cloud Assembly 配置为工作系统的工作流。您现在熟悉以下概念。

  • 云帐户是指将 Cloud Assembly 连接到云供应商端点的凭据。
  • 云区域是指帐户/区域中的所选计算资源,可以根据项目需求和成本管理目标将其分配给不同的项目。
  • 基础架构资源是指与云模板中所用帐户/区域相关联的资源的定义。
  • 项目是指您如何根据项目的应用程序开发目标为用户提供对云区域的访问权限。
  • 云模板是指以迭代方式开发和部署的应用程序工作负载的定义。

本教程是体验 Cloud Assembly 开发过程的基础。可以使用此过程构建基础架构,并掌握云模板开发技能。