安装 Tanzu CLI 和 Kubernetes CLI 以与 vSphere with Tanzu 主管配合使用

本主题介绍了如何在引导计算机上安装 Tanzu 命令行界面 (CLI)。引导计算机是从中部署管理和工作负载集群的笔记本电脑、主机或服务器,用于保留部署的 Tanzu 和 Kubernetes 配置文件。引导计算机通常是本地计算机,但也可以是您远程访问的物理机或虚拟机。有关 Tanzu CLI 的详细信息(包括命令参考),请参见 VMware Tanzu CLI v1.0.x 文档。

如果要将 vSphere 8 上的 vSphere with Tanzu 主管用作管理集群,则安装 Tanzu CLI 后,可以将其连接到主管。

注意

本主题中的说明特定于在 vSphere 8 上安装 Tanzu CLI 以与 vSphere with Tanzu 主管配合使用。如果要安装 Tanzu CLI 以在没有主管的 vSphere 上部署独立管理集群,在 AWS 或 Azure 上部署独立管理集群,请参见《部署和管理 Tanzu Kubernetes Grid 2.3 独立管理集群》中相应的主题安装 Tanzu CLI 和 Kubernetes CLI 以与独立管理集群配合使用

Tanzu CLI 与主管通信以在 vSphere with Tanzu 中创建和管理工作负载集群。

Tanzu Kubernetes Grid v2.x 和 vSphere 8 中的 vSphere with Tanzu 主管

重要

vSphere 8.0.1c 和更高版本中的 vSphere with Tanzu 主管运行 TKG v2.2。早期版本的 vSphere 8 运行 TKG v2.0,该版本并非独立于主管发布。由于主管中嵌入的 TKG 版本较低,因此,使用独立 TKG 2.3 管理集群时可用的某些功能,在使用 vSphere with Tanzu 主管创建工作集群时不可用。更高的 TKG 版本将嵌入到未来 vSphere 更新版本的主管中。因此,给定时间最新 vSphere with Tanzu 版本中嵌入的 TKG 版本可能不如最新的独立 TKG 版本新。但是,完全支持与所有 TKG v2.x 版本兼容的 Tanzu CLI 版本与 vSphere 8 中的主管一起使用。例如,Tanzu CLI v1.0.0 完全向后兼容主管提供的 TKG 2.2 插件。

Tanzu Kubernetes Grid v2.x 和 vSphere 7 中的 vSphere with Tanzu

注意

与 vSphere 8 中的 TKG 2.x 和 vSphere with Tanzu 主管兼容的 Tanzu CLI 版本与 vSphere 7 中的主管集群不兼容。要在 vSphere 7 上对 vSphere with Tanzu 主管集群使用 Tanzu CLI,请使用 TKG v1.6 中的 Tanzu CLI 版本。要使用与具有主管的 TKG 2.x 兼容的 Tanzu CLI 版本,请升级到 vSphere 8。如果 vSphere with Tanzu 主管集群不存在,可以将独立 TKG 2.x 管理集群部署到 vSphere 7。有关 Tanzu CLI 与 VMware 产品之间兼容性的信息,请参见 Tanzu CLI 文档

必备条件

安装并运行 Tanzu CLI 以与 Tanzu Kubernetes Grid 配合使用的引导计算机必须满足特定要求。还有一个进一步的要求,具体取决于您是打算将具有 vSphere with Tanzu 主管的 Tanzu CLI 用作管理集群,部署独立管理集群,或者同时部署这两者。

要通过 Tanzu Kubernetes Grid v2.3 运行 Tanzu CLI,您需要一个用于安装并运行 Tanzu CLI 的引导计算机,该引导计算机需要满足以下特定要求:

  • 在具有以下硬件的物理机或虚拟机上运行的 Linux、Windows 或 macOS 操作系统:
    • 最少 8 GB RAM。VMware 建议使用 16 GB RAM。
    • 具有 50 GB 可用存储空间的磁盘。
    • 2 或 4 个双核 CPU。
  • 如果要使用 Tanzu Kubernetes Grid 安装程序界面部署独立管理集群,则使用浏览器或从具有浏览器的计算机进行远程访问。无需浏览器即可使用 Tanzu CLI,但对于首次部署,强烈建议使用安装程序界面。
  • 系统时间与网络时间协议 (NTP) 服务器同步。
  • 如果引导计算机运行 Windows,VMware 建议将 Windows Subsystem for Linux (WSL) 与 Ubuntu 20.04.4 LTS 一起安装,以便在 Windows 上运行 Linux 命令。有关 WSL 的详细信息,请参见 Microsoft 文档中的安装 WSL

要将主管集群用作管理集群,还需要:

安装 Tanzu CLI

要安装 Tanzu CLI 以与 Tanzu Kubernetes Grid v2.3 配合使用,请安装 Tanzu Core CLI 的兼容版本和适用于 Tanzu Kubernetes Grid v2.3 的 Tanzu CLI 插件。这些插件提供的命令可启用集群和软件包操作。有关兼容 CLI 版本的列表,请参见产品互操作性列表

安装 Tanzu Core CLI

要安装 Tanzu Core CLI,请执行以下步骤;要查看这些步骤,请单击使用软件包管理器安装从二进制版本安装选项卡。

安装 Tanzu Core CLI 后,继续安装适用于 TKG v2.3 的 Tanzu CLI 插件

注意

如果要保留 Tanzu CLI 的现有安装,请先将 CLI 二进制文件从 /usr/local/bin/tanzu 移到其他位置,然后再执行以下步骤。

使用软件包管理器安装
要使用软件包管理器安装 Tanzu CLI,请执行以下操作:
  1. 选择兼容版本的 Tanzu CLI。有关与此版本 Tanzu Kubernetes Grid 兼容的 CLI 版本列表,请参见产品互操作性矩阵

  2. 按照下面适用于您的软件包管理器的说明进行操作。

    • APT(Debian 或 Ubuntu):

      • 如果要安装的版本是 Tanzu CLI 的最新可用版本,例如 v1.0.0,请运行:

        sudo apt update
        sudo apt install -y ca-certificates curl gpg
        sudo mkdir -p /etc/apt/keyrings
        curl -fsSL https://packages.vmware.com/tools/keys/VMWARE-PACKAGING-GPG-RSA-KEY.pub | sudo gpg --dearmor -o /etc/apt/keyrings/tanzu-archive-keyring.gpg
        echo "deb [signed-by=/etc/apt/keyrings/tanzu-archive-keyring.gpg] https://storage.googleapis.com/tanzu-cli-os-packages/apt tanzu-cli-jessie main" | sudo tee /etc/apt/sources.list.d/tanzu.list
        sudo apt update
        sudo apt install -y tanzu-cli
        
      • 如果要安装早期版本的 Tanzu CLI,例如 v0.90.1,请运行:

        sudo apt update
        sudo apt install -y ca-certificates curl gpg
        sudo mkdir -p /etc/apt/keyrings
        curl -fsSL https://packages.vmware.com/tools/keys/VMWARE-PACKAGING-GPG-RSA-KEY.pub | sudo gpg --dearmor -o /etc/apt/keyrings/tanzu-archive-keyring.gpg
        echo "deb [signed-by=/etc/apt/keyrings/tanzu-archive-keyring.gpg] https://storage.googleapis.com/tanzu-cli-os-packages/apt tanzu-cli-jessie main" | sudo tee /etc/apt/sources.list.d/tanzu.list
        sudo apt update
        sudo apt install tanzu-cli=0.90.1
        
    • Chocolatey (Windows):

      • 如果要安装的版本是 Tanzu CLI 的最新可用版本,例如 v1.0.0,请运行:

        choco install tanzu-cli
        
      • 如果要安装早期版本的 Tanzu CLI,例如 v0.90.1,请运行:

        choco install tanzu-cli --version 0.90.1
        
    • Homebrew (MacOS):

      • 如果要安装的版本是 Tanzu CLI 的最新可用版本,例如 v1.0.0,请运行:

        brew update
        brew install vmware-tanzu/tanzu/tanzu-cli
        
      • 如果要安装早期版本的 Tanzu CLI,例如 v0.90.1,请运行:

        brew update
        brew tap-new local/tap
        brew extract --version=0.90.1 vmware-tanzu/tanzu/tanzu-cli local/tap
        brew install tanzu-cli@0.90.1
        
    • YUM 或 DNF (RHEL):

      • 如果要安装的版本是 Tanzu CLI 的最新可用版本,例如 v1.0.0,请运行:

        cat << EOF | sudo tee /etc/yum.repos.d/tanzu-cli.repo
        [tanzu-cli]
        name=Tanzu CLI
        baseurl=https://storage.googleapis.com/tanzu-cli-os-packages/rpm/tanzu-cli
        enabled=1
        gpgcheck=1
        repo_gpgcheck=1
        gpgkey=https://packages.vmware.com/tools/keys/VMWARE-PACKAGING-GPG-RSA-KEY.pub
        EOF
        
        sudo yum install -y tanzu-cli # If you are using DNF, run sudo dnf install -y tanzu-cli.
        
      • 如果要安装早期版本的 Tanzu CLI,例如 v0.90.1,请运行:

        cat << EOF | sudo tee /etc/yum.repos.d/tanzu-cli.repo
        [tanzu-cli]
        name=Tanzu CLI
        baseurl=https://storage.googleapis.com/tanzu-cli-os-packages/rpm/tanzu-cli
        enabled=1
        gpgcheck=1
        repo_gpgcheck=1
        gpgkey=https://packages.vmware.com/tools/keys/VMWARE-PACKAGING-GPG-RSA-KEY.pub
        EOF
        
        sudo yum install tanzu-cli-0.90.1 # If you are using DNF, run sudo dnf install tanzu-cli-0.90.1.
        
  3. 检查是否正确安装了正确版本的 CLI。例如:

    tanzu version
    version: v1.0.0
    ...
    
从二进制版本安装
您可以从 VMware Customer Connect 或 GitHub 下载 Tanzu CLI 二进制文件。有关所有兼容 CLI 版本的列表,请参见 产品互操作性矩阵

要从 Customer Connect 下载 Tanzu CLI 的二进制版本,然后进行安装,请执行以下操作:

  1. 下载并解压缩 Tanzu CLI 二进制文件:

    1. 转到 VMware Customer Connect 上的 VMware Tanzu CLI 页面,然后在 Tanzu CLI v1.0.0 的产品下载 (Product Downloads) 下,找到并下载操作系统 (OS) 的 Tanzu CLI 二进制文件。
    2. 解压缩操作系统的 Tanzu CLI 文件。要解压缩包文件,请使用您选择的提取工具。例如,在 Linux 或 macOS 上,可以使用 tar 命令。

      • MacOS:

        tar -xvf tanzu-cli-darwin-amd64.tar.gz
        
      • Linux:

        tar -xvf tanzu-cli-linux-amd64.tar.gz
        
      • Windows:

        使用 Windows 提取器工具解压缩 tanzu-cli-windows-amd64.zip

  2. 使 CLI 可用于系统:

    • MacOS:

      将二进制文件安装到 /usr/local/bin

      install tanzu-cli-darwin_amd64 /usr/local/bin/tanzu
      
    • Linux:

      将二进制文件安装到 /usr/local/bin

      sudo install tanzu-cli-linux_amd64 /usr/local/bin/tanzu
      
    • Windows:

      1. 创建新的 Program Files\tanzu 文件夹。
      2. tanzu-cli-windows_amd64.exe 文件到新的 Program Files\tanzu 文件夹。
      3. tanzu-cli-windows_amd64.exe 重命名为 tanzu.exe
      4. 右键单击 tanzu 文件夹,选择属性 (Properties) > 安全 (Security),并确保您的用户帐户具有完全控制 (Full Control) 权限。
      5. 使用 Windows Search 搜索 env
      6. 选择编辑系统环境变量 (Edit the system environment variables),然后单击环境变量 (Environment Variables)按钮。
      7. 选择系统变量 (System variables)下的 Path,然后单击编辑 (Edit)
      8. 单击新建 (New)添加新行,然后输入 tanzu CLI 的路径。路径值不得包含 .exe 扩展名。例如,C:\Program Files\tanzu
  3. 检查是否正确安装了正确版本的 CLI。例如:

    tanzu version
    version: v1.0.0
    ...
    

要从 GitHub 上的二进制版本下载并安装 Tanzu CLI,请按照《安装 Tanzu CLI》的从 GitHub 项目中的二进制版本部分的说明进行操作。

安装适用于 TKG v2.3 的 Tanzu CLI 插件

要安装适用于 Tanzu Kubernetes Grid v2.3 的独立 Tanzu CLI 插件,请执行以下操作:

  1. 列出适用于 Tanzu Kubernetes Grid v2.3 的独立 Tanzu CLI 插件:

    tanzu plugin group get vmware-tkg/default:v2.3.1
    

    输出看上去与下面类似:

    Plugins in Group:  vmware-tkg/tkg:v2.3.1
    NAME                TARGET      VERSION
    isolated-cluster    global      v0.30.2
    management-cluster  kubernetes  v0.30.2
    package             kubernetes  v0.30.2
    pinniped-auth       global      v0.30.2
    secret              kubernetes  v0.30.2
    telemetry           kubernetes  v0.30.2
    

    要列出 vmware-tkg/default 插件组的所有可用版本,请运行:

    tanzu plugin group search -n vmware-tkg/default --show-details
    
  2. 安装适用于 Tanzu Kubernetes Grid v2.3 的独立插件:

    tanzu plugin install --group vmware-tkg/default:v2.3.1
    
  3. 确认插件是否成功安装:

    tanzu plugin list
    

    tanzu plugin group get vmware-tkg/default:v2.3.1 返回的每个插件名称和插件版本必须包含在 tanzu plugin list 的输出中。

    注意

    在为 Tanzu Kubernetes Grid 安装了 Tanzu CLI 和独立插件之后,但在使用其连接到管理集群之前,所有特定于上下文的 CLI 命令组(如 tanzu clustertanzu kubernetes-release)都不可用,并且不包含在 Tanzu CLI --help 输出中。Tanzu CLI 会在您连接到管理集群时自动安装上下文范围的插件。有关 Tanzu CLI 插件以及如何安装这些插件的详细信息,请参见安装 Tanzu CLI 插件

安装 Kubernetes CLI

在引导计算机上下载并解压缩 Kubernetes CLI kubectl,然后使其可用于您的系统:

  1. 转到 VMware Customer Connect,然后使用 VMware Customer Connect 凭据登录。

  2. 浏览到 Tanzu Kubernetes Grid v2.3.1 产品下载

  3. 滚动到标有 Kubectl 1.26.8 for VMware Tanzu Kubernetes Grid 2.3.1 的部分。

    macOS
    找到 kubectl cli v1.26.8 for Mac,然后单击 立即下载 (Download Now)
    Linux
    找到 kubectl cli v1.26.8 for Linux,然后单击 立即下载 (Download Now)
    Windows
    找到 kubectl cli v1.26.8 for Windows,然后单击 立即下载 (Download Now)
  4. (可选)验证下载的文件与原始文件相同。VMware 为每次下载提供 SHA-1、SHA-256 和 MD5 校验和。要获取这些校验和,请单击要下载的条目下的 阅读更多信息 (Read More)。有关详细信息,请参见使用加密哈希

  5. 要解压缩操作系统的 kubectl 二进制文件,请使用您选择的提取工具。例如,gunzip 命令。

    macOS
    gunzip kubectl-mac-v1.26.8+vmware.2.gz
    
    Linux
    gunzip kubectl-linux-v1.26.8+vmware.2.gz
    
    Windows
    使用 Windows 提取器工具解压缩 kubectl-windows-v1.26.8+vmware.2.exe.gz
  6. 使 CLI 可用于系统:

    macOS
    1. 将下载的文件指定为可执行文件:

      chmod ugo+x kubectl-mac-v1.26.8+vmware.2
      
    2. 将二进制文件安装到 /usr/local/bin

      sudo install kubectl-mac-v1.26.8+vmware.2 /usr/local/bin/kubectl
      
    3. 运行 kubectl version 以检查 kubectl 的正确版本是否已安装且可执行。

      kubectl version
      
    Linux
    1. 将下载的文件指定为可执行文件:

      chmod ugo+x kubectl-linux-v1.26.8+vmware.2
      
    2. 将二进制文件安装到 /usr/local/bin

      sudo install kubectl-linux-v1.26.8+vmware.2 /usr/local/bin/kubectl
      
    3. 运行 kubectl version 以检查 kubectl 的正确版本是否已安装且可执行。

      kubectl version
      
    Windows
    1. 创建新的 Program Files\kubectl 文件夹。
    2. 找到 kubectl-windows-v1.26.8+vmware.2.exe 文件并将其复制到新的 Program Files\kubectl 文件夹中。
    3. kubectl-windows-v1.26.8+vmware.2.exe 重命名为 kubectl.exe
    4. 右键单击 kubectl 文件夹,选择属性 (Properties) > 安全 (Security),并确保您的用户帐户具有完全控制 (Full Control) 权限。
    5. 使用 Windows Search 搜索 env
    6. 选择编辑系统环境变量 (Edit the system environment variables),然后单击环境变量 (Environment Variables)按钮。
    7. 选择系统变量 (System variables)下的 Path,然后单击编辑 (Edit)
    8. 单击新建 (New)添加新行,然后输入 kubectl CLI 的路径。
    9. 运行 kubectl version 以检查是否正确安装了正确版本的 CLI。

      kubectl version
      

下一步操作

使用 Tanzu CLI 和 kubectl 部署工作负载集群和服务软件包到 Tanzu Kubernetes Grid 之前,将 Tanzu CLI 连接到主管,如下所述。

将 Tanzu CLI 连接到主管

要将 Tanzu CLI 连接到主管,请执行以下操作:

  1. 从 vCenter 获取主管的 IP 地址:

    1. 主机和集群视图中,选择托管主管的数据中心。
    2. 命名空间下,选择包含或邻近三个 SupervisorControlPlaneVM 实例的命名空间。
    3. 在主窗格中的摘要 (Summary) > 状态 (Status) > CLI 工具链接 (Link to CLI Tools)下单击复制链接 (Copy link) 并记录 URL,例如 https://192.168.123.3
  2. 无 IDP:如果不使用外部身份提供程序:

    1. (可选)使用可信证书配置 kubectl vsphere 插件,如配置 vSphere with Tanzu 集群的安全登录中所述。

    2. 运行 kubectl vsphere login 以登录到 vSphere。有关此步骤的详细信息,请参见以具有 Kubectl 的 vCenter Single Sign-On 用户身份连接到主管

      kubectl vsphere login --vsphere-username VSPHERE-USERNAME --server=SUPERVISOR-IP
      

      其中,VSPHERE-USERNAME 是 vCenter 单点登录 (SSO) 帐户用户名(例如 administrator@vsphere.local),而 SUPERVISOR-IP 是上面获取的主管 IP 地址。

      如果未使用可信证书配置 kubectl vsphere 插件,则可以通过将 --insecure-skip-tls-verify=true 附加到上述命令来以不安全的方式登录。

      注意

      仅在开发环境中使用不安全的登录。

    3. 输入用于登录到 vCenter 的密码。

      成功登录后,kubectl vsphere login 命令:

      • 创建或修改本地 kubeconfig 文件,以添加通过 Kubernetes API 进行身份验证的令牌
      • 列出您有权访问的所有 Kubernetes 上下文。此列表应包含主管 IP 地址。
    4. kubectl 的上下文设置为主管。

      kubectl config use-context SUPERVISOR-IP
      

      其中 SUPERVISOR-IP 是主管的上下文;请参见 vSphere with Tanzu 服务和工作负载中的获取和使用主管上下文

  3. 收集信息以运行 tanzu context create 命令,该命令实现连接到主管:

    • 确定要用于主管的 Tanzu CLI 的名称。
    • 本地 kubeconfig 文件的路径,默认为~/.kube/config,并由 KUBECONFIG 环境变量设置。
  4. 运行 tanzu context create 命令,传递上述值,例如:

    无 IDP:

    tanzu context create my-supervisor --kubeconfig ~/.kube/config --kubecontext 192.168.123.3
    

    这会在 Tanzu CLI 中注册主管上下文,并下载特定于主管的插件。

    [ok] successfully logged in to management cluster using the kubeconfig my-supervisor
    [i] Checking for required plugins...
    [i] Installing plugin 'cluster:v0.29' with target 'kubernetes'
    [i] Plugin binary for 'cluster:v0.29' found in cache
    [i] Installing plugin 'feature:v0.29' with target 'kubernetes'
    [i] Plugin binary for 'feature:v0.29' found in cache
    [i] Installing plugin 'kubernetes-release:v0.29' with target 'kubernetes'
    [i] Plugin binary for 'kubernetes-release:v0.29' found in cache
    [i] Installing plugin 'namespaces:v1.0.0' with target 'kubernetes'
    [i] Plugin binary for 'namespaces:v1.0.0' found in cache
    [i] Successfully installed all required plugins
    

    使用 IDP:

    tanzu context create --endpoint https://10.73.27.32 --name oidc-user
    
    tanzu context use https://10.73.27.32 oidc-user
    
    Detected a vSphere Supervisor being used
    Log in by visiting this link:
    ...
    https://10.27.62.33/wcp/pinniped/oauth2/authorize?..
    ...
    Optionally, paste your authorization code: G2TcS145Q4e6A1YKf743n3BJlfQAQ_UdjXy38TtEEIo.ju4QV3PTsUvOigVUtQllZ7AJFU0YnjuLHTRVoNxvdZc
    ...
    ??? successfully logged in to management cluster using the kubeconfig oidc-user
    Checking for required plugins...
    All required plugins are already installed and up-to-date
    

    在上面的示例中,https://10.73.27.32 是主管控制平面 IP 地址。有关此步骤的详细信息,请参见使用 Tanzu CLI 和外部 IDP 连接到主管

  5. 检查是否通过运行 tanzu context list 添加了主管,例如:

    tanzu context list
    
    NAME            ISACTIVE  ENDPOINT                      KUBECONFIGPATH                KUBECONTEXT
    my-supervisor   true      https://192.168.123.3:443     /home/vmware/.kube/config     192.168.123.3
    

    tanzu context use 现在应按您提供的名称列出主管:

    tanzu context use
    
    ? Select a server  [Use arrows to move, type to filter]
    > my-supervisor  ()
     + new server
    
  6. 运行 tanzu plugin list 以查看主管特定插件以及独立 CLI 插件的列表。

    tanzu plugin list
    
    Standalone Plugins
      NAME                DESCRIPTION                                                        TARGET      VERSION  STATUS
      isolated-cluster    Prepopulating images/bundle for internet-restricted environments   global      v0.30.2  installed
      pinniped-auth       Pinniped authentication operations (usually not directly invoked)  global      v0.30.2  installed
      management-cluster  Kubernetes management cluster operations                           kubernetes  v0.30.2  installed
      package             Tanzu package management                                           kubernetes  v0.30.2  installed
      secret              Tanzu secret management                                            kubernetes  v0.30.2  installed
      telemetry           Configure cluster-wide settings for vmware tanzu telemetry         kubernetes  v0.30.2  installed
    
    Plugins from Context:  my-supervisor
      NAME                DESCRIPTION                                                TARGET      VERSION  STATUS
      cluster             Kubernetes cluster operations                              kubernetes  v0.29.0  installed
      feature             Operate on features and featuregates                       kubernetes  v0.29.0  installed
      kubernetes-release  Kubernetes release operations                              kubernetes  v0.29.0  installed
      namespaces          Discover vSphere Supervisor namespaces you have access to  kubernetes  v1.0.0   installed
    
    注意

    在 vSphere 8.0.1c 中,适用于主管上下文的插件的版本为 v0.29.0。

  7. (可选)继续创建工作负载集群
check-circle-line exclamation-circle-line close-line
Scroll to top icon