为了能够在 vSphere IaaS control plane 中自助使用虚拟机 用户必须有权访问虚拟机类。虚拟机类是用于定义虚拟机 CPU、内存和预留值的模板。虚拟机类可通过预测开发需求并考虑资源可用性和限制来帮助为虚拟机的策略和监管设置门槛。

vSphere IaaS control plane 提供了几个默认虚拟机类。vSphere 管理员可以像现在一样使用这些类,也可以创建自定义虚拟机类。要使这些类可供 DevOps 用户使用,vSphere 管理员将其添加到命名空间中。分配给命名空间的虚拟机类可由独立虚拟机和构成 Tanzu Kubernetes Grid 集群的虚拟机使用。

使用 vSphere Client 创建自定义虚拟机类

作为 vSphere 管理员,您可以使用可用的默认类。此外,还可以创建非默认的自定义虚拟机类,并将其用于在命名空间中部署虚拟机。

创建新课程时,请记住以下注意事项。
  • vCenter Server 实例中创建的虚拟机类可用于所有 vCenter Server 集群以及这些集群中的所有命名空间。
  • 虚拟机类可用于 vCenter Server 中的所有命名空间。但是,DevOps 工程师只能使用与特定命名空间关联的虚拟机类。
注: 您还可以使用 DCLI 命令创建虚拟机类。请参见 使用数据中心 CLI 创建和管理虚拟机类

前提条件

所需特权:
  • 命名空间.修改集群范围的配置
  • 命名空间.修改命名空间配置
  • 虚拟机类.管理虚拟机类

过程

  1. 转到虚拟机服务页面。
    1. vSphere Client 主菜单中,选择工作负载管理
    2. 单击服务选项卡,然后单击虚拟机服务窗格上的管理
  2. VM 服务页面上,单击VM 类,然后单击创建 VM 类
  3. 名称页面上,指定虚拟机类名称,然后单击下一步
    虚拟机类名称用于标识虚拟机类。输入遵循以下要求的唯一 DNS 合规名称:
    • 使用与环境中的默认或自定义虚拟机类的名称不重复的唯一名称。
    • 使用最大长度为 63 个字符的字母数字字符串。
    • 请勿使用大写字母或空格。
    • 在除第一个或最后一个字符外的任意位置使用短划线。例如,vm-class1
    创建虚拟机类后,即无法更改其名称。
  4. 兼容性页面上,选择虚拟机类硬件兼容性,然后单击下一步
    有关详细信息,请参见 虚拟机兼容性
    注: 只能在创建虚拟机类期间设置其硬件兼容性,此后无法更改硬件兼容性。
  5. 配置页面上,保留默认值。
  6. 查看并确认页面上,检查详细信息,然后单击完成

下一步做什么

编辑虚拟机类配置,例如虚拟机硬件和虚拟机选项。

使用 vSphere Client 编辑虚拟机类

了解如何在创建虚拟机类后对其进行编辑。您可以配置 CPU、内存和设备等硬件资源,还可以编辑虚拟机选项和高级参数。您还可以编辑 vSphere IaaS control plane 提供的默认虚拟机类。

编辑虚拟机类不会自动重新配置先前从此类部署的虚拟机。例如,如果 DevOps 用户使用虚拟机类创建了 Tanzu Kubernetes Grid 集群,而您随后更改了虚拟机类定义,则现有 Tanzu Kubernetes Grid 虚拟机不受影响。新的 Tanzu Kubernetes Grid 虚拟机将使用已修改的类定义。
小心: 如果在编辑该集群使用的虚拟机类后扩大 Tanzu Kubernetes Grid 集群,新集群节点将使用更新的类定义,但现有集群节点继续使用初始类定义,从而导致不匹配。可以扩展控制平面节点和工作线程节点。有关扩展的信息,请参见 将 TKG Service 与 vSphere IaaS 控制平面结合使用中的 扩展工作负载集群

删除虚拟机类时,会将其从所有关联的命名空间中移除。DevOps 用户无法再使用此虚拟机类来实现虚拟机的自助服务。先前使用此虚拟机类创建的虚拟机不受影响。

前提条件

所需特权:
  • 命名空间.修改集群范围的配置
  • 命名空间.修改命名空间配置
  • 虚拟机类.管理虚拟机类

过程

  1. vSphere Client 中,显示可用的虚拟机类。
    1. vSphere Client 主菜单中,选择工作负载管理
    2. 单击服务选项卡,然后单击虚拟机服务窗格。
    3. VM 服务页面上,单击VM 类
      所有默认或用户创建的虚拟机类都显示在 可用虚拟机类下。
  2. 在选定的虚拟机类窗格中,单击管理,然后单击编辑
  3. 虚拟硬件页面中,配置虚拟机类的硬件资源,例如内存、CPU 和各种设备。
    DevOps 用户将虚拟机类分配给虚拟机时,将应用所有虚拟机硬件设置。例如,CPU 配置值将成为专用于 DevOps 用户使用该虚拟机类创建的所有虚拟机的 CPU 资源。
    注: 从 vSphere 8.0 Update 2b 开始,用于创建和编辑虚拟机类的向导将从以百分比为单位设置 CPU 和内存资源更改为以 MB、GB、TB 和 HMz 为单位使用数值进行设置。对于以前创建的所有虚拟机类,您将看到 CPU 和内存以百分比为单位,但现在您可以采用新的数值格式编辑这些值。
    虚拟机配置选项 描述
    CPU 定义专用于虚拟机的 CPU 资源。有关配置 CPU 资源的详细信息,请参见虚拟 CPU 配置和限制配置虚拟机的 CPU 资源
    内存 以 MB、GB 或 TB 为单位定义为虚拟机配置的内存。有关虚拟机内存资源的详细信息,请参见虚拟内存配置
    显卡 配置 3D 图形,以利用 Windows AERO、CAD、Google Earth 和其他 3D 设计、建模和多媒体应用程序。有关显卡设置的详细信息,请参见如何配置 3D 图形
    安全设备 通过配置 Intel® Software Guard Extensions (vSGX),为虚拟机类提供额外的安全措施。请参见使用 Intel Software Guard Extensions 确保虚拟机安全
  4. 虚拟硬件选项中,单击添加新设备,为虚拟机类添加并配置设备。
    您可以为虚拟机类配置各种设备,例如存储控制器、网络适配器、USB 设备和 PCI 设备。
    虚拟机配置选项 描述
    RDM 磁盘 添加裸设备映射 (RDM) 以将虚拟机数据直接存储在 SAN LUN 中,而不是将其存储在虚拟磁盘文件中。请参见将 RDM 磁盘添加到虚拟机
    主机 USB 设备 如果物理设备已连接到运行虚拟机的主机,则可以将一个或多个 USB 直通设备从 ESXi 主机添加到该虚拟机。请参见将 USB 设备从 ESXi 主机添加到虚拟机
    NVDIMM 为虚拟机类配置虚拟 NVDIMM 设备,以便其可以使用非易失性或持久性计算机内存。请参见将 NVDIMM 设备添加到虚拟机
    CD/DVD 驱动器 为虚拟机类配置 CD/DVD 设备。请参见如何添加或修改虚拟机 CD 或 DVD 驱动器
    NVMe 控制器SATA 控制器SCSI 控制器 为虚拟机类配置存储控制器。请参见SCSI、SATA 和 NVMe 存储控制器条件、限制和兼容性
    USB 控制器 将 USB 控制器添加到虚拟机类,以支持来自 ESXi 主机或客户端计算资源的 USB 直通。请参见将 USB 控制器添加到虚拟机
    PCI 设备 如果 vSphere IaaS control plane 环境中的 ESXi 主机具有一个或多个 NVIDIA GRID GPU 图形设备,请将虚拟机配置为使用 NVIDIA GRID 虚拟 GPU (vGPU) 技术。此外,还可以在 ESXi 主机上配置其他 PCI 设备,使其可用于直通模式下的虚拟机。

    如果选择此选项,则内存资源预留值将自动更改为 100%。

    有关详细信息和其他要求,请参见在 vSphere IaaS control plane 中部署具有 PCI 设备的虚拟机
    监视程序定时器 添加虚拟监视程序定时器 (VWDT) 设备,以确保与虚拟机中的系统性能相关的自依赖关系。请参见如何将虚拟监视程序定时器设备添加到虚拟机
    精度时钟 将精度时钟设备添加到虚拟机。精度时钟是一种虚拟时钟设备,可为虚拟机提供访问主 ESXi 主机系统时间的权限。请参见如何将精度时钟设备添加到虚拟机
    串行端口 配置虚拟串行端口到主机上的物理串行端口或文件的连接。请参见更改串行端口配置
    实例存储 为虚拟机配置实例存储。除了持久存储卷,虚拟机还可以使用实例存储。与独立于虚拟机存在的持久卷不同,实例存储卷依赖于虚拟机实例的生命周期。

    使用实例存储选项,可以添加适当的存储策略,并配置要在虚拟机中使用的卷。

    有关其他要求,请参见在 vSphere IaaS control plane 中部署具有实例存储的虚拟机

    网络适配器 为虚拟机类配置网络适配器。DevOps 用户使用虚拟机类部署虚拟机时,可以为适配器指定工作负载网络。必须将工作负载网络配置为运行虚拟机的 vSphere 命名空间。有关支持的适配器类型的详细信息,请参见网络适配器基础知识
  5. 虚拟机选项页面上,可以设置或更改虚拟机选项以运行 VMware Tools 脚本,控制用户对远程控制台的访问,配置启动行为,还可以执行其他操作。
    有关可为虚拟机类配置的虚拟机选项的详细信息,请参见 配置虚拟机选项
  6. 高级参数页面上,可在 VMware 技术支持代表指导下,或者通过查看指导您添加或更改参数来修复系统问题的 VMware 文档,更改或添加虚拟机配置参数。
    有关虚拟机高级参数的详细信息,请参见 配置虚拟机高级文件参数
  7. 完成对虚拟机类的编辑后,查看并确认所做更改,然后单击完成

使用 vSphere Client 将虚拟机类与命名空间相关联

作为 vSphere 管理员,可以将默认或自定义虚拟机类添加到 主管 上的一个或多个命名空间。将虚拟机类添加到命名空间时,您可以将此类提供给 DevOps 用户,以便他们可以在 Kubernetes 命名空间环境中启动自助虚拟机。分配给命名空间的虚拟机类也由构成 Tanzu Kubernetes Grid 集群的虚拟机使用。

可以将多个虚拟机类添加到单个命名空间。不同的虚拟机类是不同服务级别的指示器。如果发布多个虚拟机类,DevOps 用户在命令空间中创建和管理虚拟机时可在所有自定义类和默认类之间进行选择。

注:

为了能够在新创建的命名空间中部署 Tanzu Kubernetes Grid 集群,DevOps 工程师必须有权访问虚拟机类。作为 vSphere 管理员,您必须将默认或自定义虚拟机类明确关联到任何部署了 Tanzu Kubernetes Grid 集群的新命名空间。

前提条件

所需特权:
  • 命名空间.修改集群范围的配置
  • 命名空间.修改命名空间配置
  • 虚拟机类.管理虚拟机类

过程

  1. vSphere Client 中,转到命名空间。
    1. vSphere Client 主菜单中,选择工作负载管理
    2. 单击命名空间选项卡,然后单击命名空间。
  2. 添加虚拟机类。
    1. 虚拟机服务窗格中,单击添加虚拟机类
    2. 选择一个或多个虚拟机类,然后单击确定

结果

您添加的虚拟机类可在命名空间中供 DevOps 用于自助虚拟机。这些类也可以由构成 Tanzu Kubernetes Grid 集群的虚拟机使用。

使用 vSphere Client 管理命名空间上的虚拟机类

将虚拟机类与命名空间关联后,可以添加更多虚拟机类,也可以移除虚拟机类以将其从 Kubernetes 命名空间中取消发布。

前提条件

  • 如果要从命名空间移除虚拟机类,请确认 Tanzu Kubernetes Grid 未使用该虚拟机类。移除该虚拟机类可能会影响 Tanzu Kubernetes Grid 上的操作。
  • 所需特权:
    • 命名空间.修改集群范围的配置
    • 命名空间.修改命名空间配置
    • 虚拟机类.管理虚拟机类

过程

  1. vSphere Client 中,转到命名空间。
    1. vSphere Client 主菜单中,选择工作负载管理
    2. 单击命名空间选项卡,然后单击命名空间。
  2. 添加或移除虚拟机类。
    1. 虚拟机服务窗格中,单击管理 VM 类
    2. 执行以下操作之一。
      选项 描述
      移除虚拟机类 取消选择虚拟机类,然后单击确定
      添加虚拟机类 选择一个或多个虚拟机类,然后单击确定