可选:手动将 OVA 导入 vSphere

如果 gkectl prepare 无法为您导入节点操作系统映像,您可以手动将开放虚拟化设备 (OVA) 导入 vSphere,以便将节点操作系统映像暂存为虚拟机模板。典型工作流不需要此过程。但是,如果您的安全政策阻止管理员工作站访问 ESXi 主机,或者您想将 Windows Server 用于某些用户集群节点,则需要该文件。

为什么手动导入?

在典型的集群创建过程中,gkectl 会在标准部署过程中自动导入所需的 OVA。典型过程如下:

  1. 创建管理员工作站。
  2. 在管理员工作站上,创建集群配置文件。
  3. 运行 gkectl prepare。此命令会从 Cloud Storage 存储桶中提取 OVA,将 OVA 导入 vSphere,并将 OVA 标记为模板。
  4. 运行 gkectl create 以创建集群。

在以下情况下,您必须手动导入 OVA:

  • 如果您的安全政策不允许管理员工作站访问 ESXi 主机,则 gkectl prepare 将无法自动将 OVA 导入 vSphere。
  • 如果要将 Windows Server 用于某些用户集群节点,则必须手动导入 OVA。如需了解详情,请参阅 Windows Server。

确定您需要的 OVA

创建管理员集群之前,请先填写管理员集群配置文件。在配置文件中,设置 osImageType 字段以指定要用于管理员集群节点的操作系统映像类型。以下是各个选项:

  • 带有 containerd 的 Ubuntu
  • Ubuntu
  • Container Optimized OS (COS)

在创建用户集群之前,请填写用户集群配置文件。在配置文件中,您可以指定一个或多个节点池。对于每个节点池,您可以指定要用于池中节点的操作系统映像类型。

以下是各个选项:

  • 带有 containerd 的 Ubuntu
  • Ubuntu
  • Container Optimized OS (COS)
  • Windows Server 映像

对于您计划在管理员集群或用户集群中使用的每个操作系统,您需要从 Cloud Storage 下载操作系统映像并将其导入 vSphere。

Ubuntu 或带有 containerd 的 Ubuntu

从 Cloud Storage 下载 Ubuntu OVA:

gcloud storage cp gs://gke-on-prem-release/node-os-ubuntu/gke-on-prem-ubuntu-VERSION.ova ./

将 VERSION 替换为完整版本号,例如 1.36.200-gke.118。如需获取版本号,请参阅版本控制。

将 OVA 导入 vSphere 并将其标记为模板:

govc import.ova -options - gke-on-prem-release/node-os-ubuntu/gke-on-prem-ubuntu-VERSION.ova <<EOF
{
  "DiskProvisioning": "thin",
  "MarkAsTemplate": true
}
EOF

Container Optimized OS

从 Cloud Storage 下载 COS OVA:

gcloud storage cp gs://gke-on-prem-release/node-os-cos/gke-on-prem-cos-VERSION.ova ./

将 VERSION 替换为完整版本号,例如 1.36.200-gke.118。如需获取版本号,请参阅版本控制。

将 OVA 导入 vSphere 并将其标记为模板:

govc import.ova -options - gke-on-prem-release/node-os-cos/gke-on-prem-cos-VERSION.ova <<EOF
{
  "DiskProvisioning": "thin",
  "MarkAsTemplate": true
}
EOF

Windows Server 映像

遵循以下步骤:为 Windows Server 2019 创建 VMware vSphere 模板。

如需了解详情,请参阅 Windows Server 节点池。