本主题介绍了如何在引导计算机上安装 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.4 独立管理集群》中相应的主题安装 Tanzu CLI 和 Kubernetes CLI 以与独立管理集群配合使用。
Tanzu CLI 与主管通信以在 vSphere with Tanzu 中创建和管理工作负载集群。
重要vSphere 8.0.1c 和更高版本中的 vSphere with Tanzu 主管运行 TKG v2.2。早期版本的 vSphere 8 运行 TKG v2.0,该版本并非独立于主管发布。由于主管中嵌入的 TKG 版本较低,因此,使用独立 TKG 2.4 管理集群时可用的某些功能,在使用 vSphere with Tanzu 主管创建工作集群时不可用。更高的 TKG 版本将嵌入到未来 vSphere 更新版本的主管中。因此,给定时间最新 vSphere with Tanzu 版本中嵌入的 TKG 版本可能不如最新的独立 TKG 版本新。但是,完全支持与所有 TKG v2.x 版本兼容的 Tanzu CLI 版本与 vSphere 8 中的主管一起使用。例如,Tanzu CLI v0.90.1 与主管提供的 TKG 2.2 插件完全向后兼容。
注意与 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.4 的 Tanzu CLI,您需要一个引导计算机以安装并运行具有以下Tanzu CLI:
要将主管集群用作管理集群,还需要:
具有以下条件的 vSphere 8 帐户:
以下其中一项:
kubectl vsphere
CLI 插件,如下载和安装适用于 vSphere 的 Kubernetes CLI 工具中所述。要安装 Tanzu CLI 以与 Tanzu Kubernetes Grid v2.4 配合使用,请安装兼容版本的 Tanzu Core CLI 和适用于 Tanzu Kubernetes Grid v2.4 的 Tanzu CLI 插件。这些插件提供的命令可启用集群和软件包操作。有关兼容 CLI 版本的列表,请参见产品互操作性列表。
要安装 Tanzu Core CLI,请执行以下步骤;要查看这些步骤,请单击使用软件包管理器安装或从二进制版本安装选项卡。
安装 Tanzu Core CLI 后,继续安装适用于 TKG v2.4 的 Tanzu CLI 插件。
注意如果要保留 Tanzu CLI 的现有安装,请先将 CLI 二进制文件从
/usr/local/bin/tanzu
移到其他位置,然后再执行以下步骤。
选择兼容版本的 Tanzu CLI。有关与此版本 Tanzu Kubernetes Grid 兼容的 CLI 版本列表,请参见产品互操作性矩阵。
按照下面适用于您的软件包管理器的说明进行操作。
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 [email protected]
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.
检查是否正确安装了正确版本的 CLI。例如:
tanzu version
version: v1.0.0
...
要从 Customer Connect 下载 Tanzu CLI 的二进制版本,然后进行安装,请执行以下操作:
下载并解压缩 Tanzu CLI 二进制文件:
解压缩操作系统的 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
。
使 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:
Program Files\tanzu
文件夹。tanzu-cli-windows_amd64.exe
文件到新的 Program Files\tanzu
文件夹。tanzu-cli-windows_amd64.exe
重命名为 tanzu.exe
。tanzu
文件夹,选择属性 (Properties) > 安全 (Security),并确保您的用户帐户具有完全控制 (Full Control) 权限。env
。Path
,然后单击编辑 (Edit)。tanzu
CLI 的路径。路径值不得包含 .exe
扩展名。例如,C:\Program Files\tanzu
。检查是否正确安装了正确版本的 CLI。例如:
tanzu version
version: v1.0.0
...
要从 GitHub 上的二进制版本下载并安装 Tanzu CLI,请按照《安装 Tanzu CLI》的从 GitHub 项目中的二进制版本部分的说明进行操作。
要安装适用于 Tanzu Kubernetes Grid v2.4 的独立 Tanzu CLI 插件,请执行以下操作:
列出适用于 Tanzu Kubernetes Grid v2.4 的独立 Tanzu CLI 插件:
tanzu plugin group get vmware-tkg/default:v2.4.0
输出看上去与下面类似:
Plugins in Group: vmware-tkg/default:v2.4.0
NAME TARGET VERSION
isolated-cluster global v0.31.0
management-cluster kubernetes v0.31.0
package kubernetes v0.31.0
pinniped-auth global v0.31.0
secret kubernetes v0.31.0
telemetry kubernetes v0.31.0
要列出 vmware-tkg/default
插件组的所有可用版本,请运行:
tanzu plugin group search -n vmware-tkg/default --show-details
安装适用于 Tanzu Kubernetes Grid v2.4 的独立插件:
tanzu plugin install --group vmware-tkg/default:v2.4.0
确认插件是否成功安装:
tanzu plugin list
tanzu plugin group get vmware-tkg/default:v2.4.0
返回的每个插件名称和插件版本必须包含在 tanzu plugin list
的输出中。
注意在为 Tanzu Kubernetes Grid 安装了 Tanzu CLI 和独立插件之后,但在使用其连接到管理集群之前,所有特定于上下文的 CLI 命令组(如
tanzu cluster
和tanzu kubernetes-release
)都不可用,并且不包含在 Tanzu CLI--help
输出中。Tanzu CLI 会在您连接到管理集群时自动安装上下文范围的插件。有关 Tanzu CLI 插件以及如何安装这些插件的详细信息,请参见安装 Tanzu CLI 插件。
在引导计算机上下载并解压缩 Kubernetes CLI kubectl
,然后使其可用于您的系统:
转到 VMware Customer Connect,然后使用 VMware Customer Connect 凭据登录。
在 VMware Tanzu Kubernetes Grid 行中,单击转到下载 (Go to Downloads)。
在选择版本 (Select Version) 下拉菜单中,选择 2.4.0。
在产品下载 (Product Downloads) 下,滚动到标有 Kubectl 1.27.5 for VMware Tanzu Kubernetes Grid 2.4.0 的部分。
(可选)验证下载的文件与原始文件相同。VMware 为每次下载提供 SHA-1、SHA-256 和 MD5 校验和。要获取这些校验和,请单击要下载的条目下的 阅读更多信息 (Read More)。有关详细信息,请参见使用加密哈希。
要解压缩操作系统的 kubectl
二进制文件,请使用您选择的提取工具。例如,gunzip
命令。
gunzip kubectl-mac-v1.27.5+vmware.1.gz
gunzip kubectl-linux-v1.27.5+vmware.1.gz
kubectl-windows-v1.27.5+vmware.2.exe.gz
。
使 CLI 可用于系统:
将下载的文件指定为可执行文件:
chmod ugo+x kubectl-mac-v1.27.5+vmware.1
将二进制文件安装到 /usr/local/bin
:
sudo install kubectl-mac-v1.27.5+vmware.1 /usr/local/bin/kubectl
运行 kubectl version
以检查 kubectl
的正确版本是否已安装且可执行。
kubectl version
将下载的文件指定为可执行文件:
chmod ugo+x kubectl-linux-v1.27.5+vmware.1
将二进制文件安装到 /usr/local/bin
:
sudo install kubectl-linux-v1.27.5+vmware.1 /usr/local/bin/kubectl
运行 kubectl version
以检查 kubectl
的正确版本是否已安装且可执行。
kubectl version
Program Files\kubectl
文件夹。kubectl-windows-v1.27.5+vmware.1.exe
文件并将其复制到新的 Program Files\kubectl
文件夹中。kubectl-windows-v1.27.5+vmware.1.exe
重命名为 kubectl.exe
。kubectl
文件夹,选择属性 (Properties) > 安全 (Security),并确保您的用户帐户具有完全控制 (Full Control) 权限。env
。Path
,然后单击编辑 (Edit)。kubectl
CLI 的路径。运行 kubectl version
以检查是否正确安装了正确版本的 CLI。
kubectl version
使用 Tanzu CLI 和 kubectl
部署工作负载集群和服务软件包到 Tanzu Kubernetes Grid 之前,将 Tanzu CLI 连接到主管,如下所述。
要将 Tanzu CLI 连接到主管,请执行以下操作:
从 vCenter 获取主管的 IP 地址:
https://192.168.123.3
。无 IDP:如果不使用外部身份提供程序:
(可选)使用可信证书配置 kubectl vsphere
插件,如配置 vSphere with Tanzu 集群的安全登录中所述。
运行 kubectl vsphere login
以登录到 vSphere。有关此步骤的详细信息,请参见以具有 Kubectl 的 vCenter Single Sign-On 用户身份连接到主管。
kubectl vsphere login --vsphere-username VSPHERE-USERNAME --server=SUPERVISOR-IP
其中,VSPHERE-USERNAME
是 vCenter 单点登录 (SSO) 帐户用户名(例如 [email protected]
),而 SUPERVISOR-IP
是上面获取的主管 IP 地址。
如果未使用可信证书配置 kubectl vsphere
插件,则可以通过将 --insecure-skip-tls-verify=true
附加到上述命令来以不安全的方式登录。
注意仅在开发环境中使用不安全的登录。
输入用于登录到 vCenter 的密码。
成功登录后,kubectl vsphere login
命令:
kubeconfig
文件,以添加通过 Kubernetes API 进行身份验证的令牌将 kubectl
的上下文设置为主管。
kubectl config use-context SUPERVISOR-IP
其中 SUPERVISOR-IP
是主管的上下文;请参见 vSphere with Tanzu 服务和工作负载中的获取和使用主管上下文。
收集信息以运行 tanzu context create
命令,该命令实现连接到主管:
kubeconfig
文件的路径,默认为~/.kube/config
,并由 KUBECONFIG
环境变量设置。运行 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 连接到主管。
检查是否通过运行 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
运行 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.31.0 installed
pinniped-auth Pinniped authentication operations (usually not directly invoked) global v0.31.0 installed
management-cluster Kubernetes management cluster operations kubernetes v0.31.0 installed
package Tanzu package management kubernetes v0.31.0 installed
secret Tanzu secret management kubernetes v0.31.0 installed
telemetry Configure cluster-wide settings for vmware tanzu telemetry kubernetes v0.31.0 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。