Linux 自定义计算机映像

此过程将指导您构建 Linux (Ubuntu) 自定义计算机映像,以便在 vSphere 上创建基于类的集群时使用。它分为以下部分:

要为基于计划的(旧版)集群构建 Linux 自定义计算机映像,请参见 Linux 自定义计算机映像(旧版)。有关 Tanzu Kubernetes Grid 中的集群类型的详细信息,请参见工作负载集群类型

Linux 映像必备条件

要构建 Linux 自定义计算机映像,您需要:

  • vSphere 的帐户
  • 安装了以下内容的 macOS 或 Linux 工作站:

检索操作系统映像版本

在此步骤中,您将检索与要用于自定义映像的 Kubernetes 版本的默认 Ubuntu OVA 关联的操作系统映像版本。您需要将此操作系统映像版本分配给以下构建 Linux 映像步骤中的自定义映像。

要检索操作系统映像版本,请根据您的用例执行以下操作之一:

  • 如果您有使用当前 Tanzu Kubernetes Grid 版本的默认 Kubernetes 版本创建的正在运行的管理集群,则可以从该集群中检索操作系统映像版本:

    1. kubectl 上下文设置为管理集群:

    2. 从可用 TKr 列表中,选择要用于自定义映像的 Kubernetes 版本的 Tanzu Kubernetes 版本 (TKr)。例如,v1.24.10---vmware.1-tkg.1。要列出可用的 TKr,请运行:

      kubectl get tkr
      
    3. 打开 TKr 并找到 osImages 属性。此属性指定与 TKr 关联的 OSImage 对象的名称。

    4. 找到并打开默认 Ubuntu OVA 的 OSImage 对象。OSImage 对象的名称与 TKr 中的 osImages 名称之一相匹配。

      kubectl get osimages
      
    5. 在默认 Ubuntu OVA 的 OSImage 对象中,找到 versionspec.image.ref 属性的值并记录下来。例如,v1.24.10+vmware.1-tkg.1-765d418b72c247c2310384e640ee075e

  • 如果您没有使用当前 Tanzu Kubernetes Grid 版本的默认 Kubernetes 版本创建的正在运行的管理集群,则可以直接从默认 Ubuntu OVA 检索操作系统映像版本(本地或从 vSphere):

    • 要在本地检索操作系统映像版本,请执行以下操作:

      1. 从 Customer Connect 下载目标 Kubernetes 版本的默认 Ubuntu OVA:
        1. 转到 Tanzu Kubernetes Grid 下载页面,使用您的 VMware Customer Connect 凭据登录,然后单击转到下载 (Go to Downloads)
        2. 下载 OVA。例如,Ubuntu 2004 Kubernetes v1.24.10 OVA
      2. 使用您选择的提取工具解压缩下载的 OVA。
      3. 在解压缩的目录中,找到 .ofv 文件。
      4. .ofv 文件中,搜索 OVA VERSION 属性并记录其值。例如,v1.24.10+vmware.1-tkg.1-765d418b72c247c2310384e640ee075e。属性看上去与下面类似:

        <Property ovf:key="VERSION" ovf:type="string" ovf:userConfigurable="false" ovf:value="v1.24.10+vmware.1-tkg.1-765d418b72c247c2310384e640ee075e"/>
        
    • 如果已为目标 Kubernetes 版本上载到 vSphere 的默认 Ubuntu OVA,也可以通过在 vSphere UI 中检查 OVA 虚拟机属性或使用 govc CLI 来检索操作系统映像版本。要使用此方法,请在将 OVA 虚拟机转换为模板之前检索操作系统映像版本。

      • 要从 vSphere UI 检索操作系统映像版本,请执行以下操作:

        1. 找到 OVA 虚拟机,然后打开 OVA 虚拟机摘要页面上的配置 (Configure) 选项卡。
        2. 转到设置 (Settings ) –> vApp 选项 (vApp Options)
        3. 属性 (Properties) 表中,找到版本 (VERSION)项并记录其默认值 (Default Value)。例如,v1.24.10+vmware.1-tkg.1-765d418b72c247c2310384e640ee075e
      • 要使用 govc CLI 检索操作系统映像版本,请运行 govc vm.info 命令。例如:

        govc vm.info -json /dc0/vm/ubuntu-2004-kube-v1.24.10+vmware.1-tkg.1 | jq
        

        在输出中,搜索 "Id": "VERSION" 并记录 "DefaultValue" 属性的值。例如:

        {
        "Key": 10,
        "ClassId": "",
        "InstanceId": "",
        "Id": "VERSION",
        "Category": "Cluster API Provider (CAPI)",
        "Label": "VERSION",
        "Type": "string",
        "TypeReference": "",
        "UserConfigurable": false,
        "DefaultValue": "v1.24.10+vmware.1-tkg.1-765d418b72c247c2310384e640ee075e",
        "Value": "",
        "Description": ""
        }
        

构建 Linux 映像

要构建 Linux 映像,请执行以下操作:

  1. 对于 vSphere 上基于计划的集群,请完成构建 Linux 映像步骤,但以下情况除外。在 metadata.json 中设置自定义映像的版本字符串时,请将其设置为在上述检索操作系统映像版本步骤中检索的值,而不是构建 Linux 映象部分中建议的 v1.24.10+vmware.1-myorg.0。例如:

    {
     "VERSION": "v1.24.10+vmware.1-tkg.1-765d418b72c247c2310384e640ee075e"
    }
    
  2. 完成构建 Linux 映象部分中的步骤后,返回到此页面,然后继续下面的将 Linux 映像上载到 vSphere

将 Linux 映象上载到 vSphere

完成构建 Linux 映象部分中的步骤后,执行以下操作:

  1. 如果您将目标 Kubernetes 版本的默认 Ubuntu OVA 上载到 vSphere,请在上载自定义 OVA 之前删除默认 OVA。
  2. 将自定义 OVA 上载到 vSphere。有关说明,请参见《将准备部署管理集群到 vSphere》中的将基础映像模板导入到 vSphere

下一步操作

现在,您可以使用自定义映像部署管理集群和工作负载集群。有关说明,请参见:

check-circle-line exclamation-circle-line close-line
Scroll to top icon