16.4.11. 在 vSphere 中创建 Red Hat Enterprise Linux CoreOS (RHCOS) 机器

在 VMware vSphere 上安装包含用户置备基础架构的集群前,您必须在 vSphere 主机上创建 RHCOS 机器供其使用。

先决条件

流程

  1. 将 control plane、计算和 bootstrap Ignition 配置文件转换为 Base64 编码。

    例如,如果您使用 Linux 操作系统,可以使用 base64 命令来编码这些文件。

    $ base64 -w0 <installation_directory>/master.ign > <installation_directory>/master.64
    $ base64 -w0 <installation_directory>/worker.ign > <installation_directory>/worker.64
    $ base64 -w0 <installation_directory>/bootstrap.ign > <installation_directory>/bootstrap.64
    重要

    如果您计划在安装完成后在集群中添加更多计算机器,请不要删除这些文件。

  2. 获取 RHCOS OVA 镜像。镜像位于 RHCOS image 镜像页面。

    重要

    RHCOS 镜像可能不会随着 OpenShift Container Platform 的每一发行版本都有改变。您必须下载一个最高版本的镜像,其版本号应小于或等于您安装的 OpenShift Container Platform 版本。如果可用,请使用与 OpenShift Container Platform 版本匹配的镜像版本。

    文件名包含 OpenShift Container Platform 版本号,格式为 rhcos-vmware.<architecture>.ova

  3. 在 vSphere 客户端中,在数据中心中创建一个文件夹来存储您的虚拟机。

    1. 点击 VMs and Templates 视图。
    2. 右键点击您的数据中心名称。
    3. 点击 New FolderNew VM and Template Folder
    4. 在显示的窗口中输入文件夹名称。如果您没有在 install-config.yaml 文件中指定现有文件夹,请创建一个文件夹,其名称与基础架构 ID 相同。您可以使用这个文件夹名称,因此 vCenter 会在适当的位置为 Workspace 配置动态置备存储。
  4. 在 vSphere 客户端中,为 OVA 镜像创建一个模板,然后根据需要克隆模板。

    注意

    在以下步骤中,您将创建一个模板,然后克隆所有集群机器的模板。然后,在置备虚拟机时,为该克隆的机器类型提供 Ignition 配置文件的位置。

    1. Hosts and Clusters 选项卡中,右键点击您的集群名称并选择 Deploy OVF Template
    2. Select an OVF 选项卡中,指定您下载的 RHCOS OVA 文件的名称。
    3. Select a name and folder 选项卡中,为您的模板设置 虚拟机名称,如 Template-RHCOS。点击 vSphere 集群的名称并选择您在上一步中创建的文件夹。
    4. Select a compute resource 选项卡中,点击您的 vSphere 集群名称。
    5. Select storage 选项卡中,配置虚拟机的存储选项。

      • 根据您的存储要求,选择Thin ProvisionThick Provision
      • 选择您在 install-config.yaml 文件中指定的数据存储。
    6. Select network 选项卡中,指定您为集群配置的网络(如果可用)。
    7. 在创建 OVF 模板时,请不要在 Customize template 选项卡上指定值,或者不要再配置模板。

      重要

      不要启动原始虚拟机模板。VM 模板必须保持关闭状态,必须为新的 RHCOS 机器克隆。启动虚拟机模板会将虚拟机模板配置为平台上的虚拟机,这样可防止它被用作计算机集可以应用配置的模板。

  5. 部署模板后,为集群中的机器部署虚拟机。

    1. 右键点击模板的名称,再点击 CloneClone to Virtual Machine
    2. Select a name and folder 选项卡中,指定虚拟机的名称。名称中可以包括机器类型,如 control-plane-0compute-1
    3. Select a name and folder 选项卡中,选择您为集群创建的文件夹名称。
    4. Select a compute resource 选项卡中,选择数据中心中的主机名称。

      对于 bootstrap 机器,指定您托管的 bootstrap Ignition 配置文件的 URL。

    5. 可选:在 Select storage 选项卡中,自定义存储选项。
    6. Select clone options 中,选择 Customize this virtual machine’s hardware
    7. Customize hardware 选项卡中,点击 VM OptionsAdvanced

      • 可选:覆盖 vSphere 中的默认 DHCP 网络。启用静态 IP 网络:

        1. 设置静态 IP 配置:

          $ export IPCFG="ip=<ip>::<gateway>:<netmask>:<hostname>:<iface>:none nameserver=srv1 [nameserver=srv2 [nameserver=srv3 [...]]]"

          示例命令

          $ export IPCFG="ip=192.168.100.101::192.168.100.254:255.255.255.0:::none nameserver=8.8.8.8"

        2. 在从 vSphere 中的 OVA 引导虚拟机前,设置 guestinfo.afterburn.initrd.network-kargs 属性:

          $ govc vm.change -vm "<vm_name>" -e "guestinfo.afterburn.initrd.network-kargs=${IPCFG}"
      • 可选:在出现集群性能问题时,从 Latency Sensitivity 列表中选择 High
      • 点击 Edit Configuration,然后在 Configuration Parameters 窗口中点击 Add Configuration Params。定义以下参数名称和值:

        • guestinfo.ignition.config.data:粘贴此机器类型的 base64 编码 Ignition 配置文件的内容。bootstrap 节点的备注,Ignition 配置文件必须在 Configuration Parameters 窗口的 guestinfo.ignition.config.data 中提供。这是因为 vApp 属性中最大数据量的限制。
        • guestinfo.ignition.config.data.encoding:指定 base64
        • disk.EnableUUID:指定 TRUE
      • 另外,在打开虚拟机前,使用 vApp 属性:

        • 导航到 vCenter 服务器清单中的某一虚拟机。
        • Configure 选项卡中,展开 Settings 并选择 vApp options
        • 向下滚动,然后在 Properties 下应用您刚刚编辑的配置。
    8. Customize hardware 选项卡的 Virtual Hardware 面板中,根据需要修改指定的值。确保 RAM、CPU 和磁盘存储的数量满足机器类型的最低要求。
    9. 完成配置并打开虚拟机电源。
  6. 对于每台机器,按照前面的步骤为集群创建其余的机器。

    重要

    此刻您必须创建 bootstrap 和 control plane 机器。由于计算机器中已默认部署了一些 Pod,因此在安装集群前,还要创建至少两台计算机器。