安装或更新 kubectl - Amazon EKS
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

帮助改进此页面

想为本用户指南做出贡献? 滚动到页面底部,然后选择在 GitHub 上编辑此页面。您的贡献有助于我们的用户指南为每个人提供更充分的参考。

安装或更新 kubectl

Kubectl 是一个命令行工具,用于与 Kubernetes API 服务器进行通信。很多操作系统程序包管理器中都提供 kubectl 二进制文件。使用程序包管理器进行安装通常比手动下载并安装这一过程更简单。

本主题将帮助您下载并安装或更新设备上的 kubectl 二进制文件。该二进制文件与上游社区版本相同。该二进制文件不为 Amazon EKS 或 Amazon 所特有。

注意

您必须使用与您的 Amazon EKS 集群控制层面不同的一个次要版本内的 kubectl 版本。例如,1.29 kubectl 客户端使用 Kubernetes 1.281.291.30 集群。

要安装或更新 kubectl
  1. 确定您是否已将 kubectl 安装在设备上。

    kubectl version --client

    如果您已将 kubectl 安装在设备路径中,示例输出包括类似于如下的信息。如果要使用更高版本更新当前已安装的版本,请完成下一步,确保将新版本安装在当前版本所在的位置。

    Client Version: v1.30.X-eks-1234567

    如果您没有收到任何输出,则可能尚未安装 kubectl,或者未安装在设备路径中的位置。

  2. macOS、Linux 和 Windows 操作系统上安装或更新 kubectl

    macOS
    要在 macOS 上安装或更新 kubectl
    1. 从 Amazon S3 为集群的 Kubernetes 版本下载二进制文件。

      • Kubernetes 1.30

        curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.30.0/2024-05-12/bin/darwin/amd64/kubectl
      • Kubernetes 1.29

        curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.29.3/2024-04-19/bin/darwin/amd64/kubectl
      • Kubernetes 1.28

        curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.28.8/2024-04-19/bin/darwin/amd64/kubectl
      • Kubernetes 1.27

        curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.27.12/2024-04-19/bin/darwin/amd64/kubectl
      • Kubernetes 1.26

        curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.26.15/2024-04-19/bin/darwin/amd64/kubectl
      • Kubernetes 1.25

        curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.25.16/2024-04-19/bin/darwin/amd64/kubectl
      • Kubernetes 1.24

        curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.24.17/2024-04-19/bin/darwin/amd64/kubectl
      • Kubernetes 1.23

        curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.23.17/2024-04-19/bin/darwin/amd64/kubectl
      • Kubernetes 1.22

        curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.22.17/2024-04-19/bin/darwin/amd64/kubectl
      • Kubernetes 1.21

        curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.21.14/2024-04-19/bin/darwin/amd64/kubectl
    2. (可选)使用二进制文件的 SHA-256 校验和验证下载的二进制文件。

      1. 下载集群 Kubernetes 版本的 SHA-256 校验和。

        • Kubernetes 1.30

          curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.30.0/2024-05-12/bin/darwin/amd64/kubectl.sha256
        • Kubernetes 1.29

          curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.29.3/2024-04-19/bin/darwin/amd64/kubectl.sha256
        • Kubernetes 1.28

          curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.28.8/2024-04-19/bin/darwin/amd64/kubectl.sha256
        • Kubernetes 1.27

          curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.27.12/2024-04-19/bin/darwin/amd64/kubectl.sha256
        • Kubernetes 1.26

          curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.26.15/2024-04-19/bin/darwin/amd64/kubectl.sha256
        • Kubernetes 1.25

          curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.25.16/2024-04-19/bin/darwin/amd64/kubectl.sha256
        • Kubernetes 1.24

          curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.24.17/2024-04-19/bin/darwin/amd64/kubectl.sha256
        • Kubernetes 1.23

          curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.23.17/2024-04-19/bin/darwin/amd64/kubectl.sha256
        • Kubernetes 1.22

          curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.22.17/2024-04-19/bin/darwin/amd64/kubectl.sha256
        • Kubernetes 1.21

          curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.21.14/2024-04-19/bin/darwin/amd64/kubectl.sha256
      2. 检查下载的二进制文件的 SHA-256 校验和。

        openssl sha1 -sha256 kubectl
      3. 确保输出中生成的校验和与下载的 kubectl.sha256 文件中的校验和相匹配。

    3. 将执行权限应用于二进制文件。

      chmod +x ./kubectl
    4. 将二进制文件复制到您的 PATH 中的文件夹。如果您已经安装了某个版本的 kubectl,建议您创建一个 $HOME/bin/kubectl 并确保 $HOME/bin 先出现在您的 $PATH 中。

      mkdir -p $HOME/bin && cp ./kubectl $HOME/bin/kubectl && export PATH=$HOME/bin:$PATH
    5. (可选) 将 $HOME/bin 路径添加到 shell 初始化文件,以便在打开 shell 时配置此路径。

      echo 'export PATH=$HOME/bin:$PATH' >> ~/.bash_profile
    Linux (amd64)
    要在 Linux(amd64)上安装或更新 kubectl
    1. 从 Amazon S3 为集群的 Kubernetes 版本下载 kubectl 二进制文件。

      • Kubernetes 1.30

        curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.30.0/2024-05-12/bin/linux/amd64/kubectl
      • Kubernetes 1.30

        curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.30.0/2024-05-12/bin/linux/amd64/kubectl
      • Kubernetes 1.29

        curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.29.3/2024-04-19/bin/linux/amd64/kubectl
      • Kubernetes 1.28

        curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.28.8/2024-04-19/bin/linux/amd64/kubectl
      • Kubernetes 1.27

        curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.27.12/2024-04-19/bin/linux/amd64/kubectl
      • Kubernetes 1.26

        curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.26.15/2024-04-19/bin/linux/amd64/kubectl
      • Kubernetes 1.25

        curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.25.16/2024-04-19/bin/linux/amd64/kubectl
      • Kubernetes 1.24

        curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.24.17/2024-04-19/bin/linux/amd64/kubectl
      • Kubernetes 1.23

        curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.23.17/2024-04-19/bin/linux/amd64/kubectl
      • Kubernetes 1.22

        curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.22.17/2024-04-19/bin/linux/amd64/kubectl
      • Kubernetes 1.21

        curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.21.14/2024-04-19/bin/linux/amd64/kubectl
    2. (可选)使用二进制文件的 SHA-256 校验和验证下载的二进制文件。

      1. 使用适用于您的设备硬件平台的命令从 Amazon S3 为集群的 Kubernetes 版本下载 SHA-256 校验和。每个版本的第一个链接对应的是 amd64,第二个链接对应的是 arm64

        • Kubernetes 1.30

          curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.30.0/2024-05-12/bin/linux/amd64/kubectl.sha256
        • Kubernetes 1.30

          curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.30.0/2024-05-12/bin/linux/amd64/kubectl.sha256
        • Kubernetes 1.29

          curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.29.3/2024-04-19/bin/linux/amd64/kubectl.sha256
        • Kubernetes 1.28

          curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.28.8/2024-04-19/bin/linux/amd64/kubectl.sha256
        • Kubernetes 1.27

          curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.27.12/2024-04-19/bin/linux/amd64/kubectl.sha256
        • Kubernetes 1.26

          curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.26.15/2024-04-19/bin/linux/amd64/kubectl.sha256
        • Kubernetes 1.25

          curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.25.16/2024-04-19/bin/linux/amd64/kubectl.sha256
        • Kubernetes 1.24

          curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.24.17/2024-04-19/bin/linux/amd64/kubectl.sha256
        • Kubernetes 1.23

          curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.23.17/2024-04-19/bin/linux/amd64/kubectl.sha256
        • Kubernetes 1.22

          curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.22.17/2024-04-19/bin/linux/amd64/kubectl.sha256
        • Kubernetes 1.21

          curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.21.14/2024-04-19/bin/linux/amd64/kubectl.sha256
      2. 使用下面的命令之一检查下载的二进制文件的 SHA-256 校验和。

        • sha256sum -c kubectl.sha256

          使用此命令时,请确保看到以下输出:

          kubectl: OK
        • openssl sha1 -sha256 kubectl

          使用此命令时,请确保输出中生成的校验和与下载的 kubectl.sha256 文件中的校验和相匹配。

    3. 将执行权限应用于二进制文件。

      chmod +x ./kubectl
    4. 将二进制文件复制到您的 PATH 中的文件夹。如果您已经安装了某个版本的 kubectl,建议您创建一个 $HOME/bin/kubectl 并确保 $HOME/bin 先出现在您的 $PATH 中。

      mkdir -p $HOME/bin && cp ./kubectl $HOME/bin/kubectl && export PATH=$HOME/bin:$PATH
    5. (可选) 将 $HOME/bin 路径添加到 shell 初始化文件,以便在打开 shell 时配置此路径。

      注意

      这一步假设您使用 Bash Shell;如果使用其他 Shell,请将命令更改为使用您的特定 Shell 的初始化文件。

      echo 'export PATH=$HOME/bin:$PATH' >> ~/.bashrc
    Linux(arm64)
    要在 Linux(arm64)上安装或更新 kubectl
    1. 从 Amazon S3 为集群的 Kubernetes 版本下载 kubectl 二进制文件。

      • Kubernetes 1.30

        curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.30.0/2024-05-12/bin/linux/arm64/kubectl
      • Kubernetes 1.30

        curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.30.0/2024-05-12/bin/linux/arm64/kubectl
      • Kubernetes 1.29

        curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.29.3/2024-04-19/bin/linux/arm64/kubectl
      • Kubernetes 1.28

        curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.28.8/2024-04-19/bin/linux/arm64/kubectl
      • Kubernetes 1.27

        curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.27.12/2024-04-19/bin/linux/arm64/kubectl
      • Kubernetes 1.26

        curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.26.15/2024-04-19/bin/linux/arm64/kubectl
      • Kubernetes 1.25

        curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.25.16/2024-04-19/bin/linux/arm64/kubectl
      • Kubernetes 1.24

        curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.24.17/2024-04-19/bin/linux/arm64/kubectl
      • Kubernetes 1.23

        curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.23.17/2024-04-19/bin/linux/arm64/kubectl
      • Kubernetes 1.22

        curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.22.17/2024-04-19/bin/linux/arm64/kubectl
      • Kubernetes 1.21

        curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.21.14/2024-04-19/bin/linux/arm64/kubectl
    2. (可选)使用二进制文件的 SHA-256 校验和验证下载的二进制文件。

      1. 使用适用于您的设备硬件平台的命令从 Amazon S3 为集群的 Kubernetes 版本下载 SHA-256 校验和。每个版本的第一个链接对应的是 amd64,第二个链接对应的是 arm64

        • Kubernetes 1.30

          curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.30.0/2024-05-12/bin/linux/arm64/kubectl.sha256
        • Kubernetes 1.30

          curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.30.0/2024-05-12/bin/linux/arm64/kubectl.sha256
        • Kubernetes 1.29

          curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.29.3/2024-04-19/bin/linux/arm64/kubectl.sha256
        • Kubernetes 1.28

          curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.28.8/2024-04-19/bin/linux/arm64/kubectl.sha256
        • Kubernetes 1.27

          curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.27.12/2024-04-19/bin/linux/arm64/kubectl.sha256
        • Kubernetes 1.26

          curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.26.15/2024-04-19/bin/linux/arm64/kubectl.sha256
        • Kubernetes 1.25

          curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.25.16/2024-04-19/bin/linux/arm64/kubectl.sha256
        • Kubernetes 1.24

          curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.24.17/2024-04-19/bin/linux/arm64/kubectl.sha256
        • Kubernetes 1.23

          curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.23.17/2024-04-19/bin/linux/arm64/kubectl.sha256
        • Kubernetes 1.22

          curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.22.17/2024-04-19/bin/linux/arm64/kubectl.sha256
        • Kubernetes 1.21

          curl -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.21.14/2024-04-19/bin/linux/arm64/kubectl.sha256
      2. 使用下面的命令之一检查下载的二进制文件的 SHA-256 校验和。

        • sha256sum -c kubectl.sha256

          使用此命令时,请确保看到以下输出:

          kubectl: OK
        • openssl sha1 -sha256 kubectl

          使用此命令时,请确保输出中生成的校验和与下载的 kubectl.sha256 文件中的校验和相匹配。

    3. 将执行权限应用于二进制文件。

      chmod +x ./kubectl
    4. 将二进制文件复制到您的 PATH 中的文件夹。如果您已经安装了某个版本的 kubectl,建议您创建一个 $HOME/bin/kubectl 并确保 $HOME/bin 先出现在您的 $PATH 中。

      mkdir -p $HOME/bin && cp ./kubectl $HOME/bin/kubectl && export PATH=$HOME/bin:$PATH
    5. (可选) 将 $HOME/bin 路径添加到 shell 初始化文件,以便在打开 shell 时配置此路径。

      注意

      这一步假设您使用 Bash Shell;如果使用其他 Shell,请将命令更改为使用您的特定 Shell 的初始化文件。

      echo 'export PATH=$HOME/bin:$PATH' >> ~/.bashrc
    Windows
    要在 Windows 上安装或更新 kubectl
    1. 打开 PowerShell 终端。

    2. 从 Amazon S3 为集群的 Kubernetes 版本下载 kubectl 二进制文件。

      • Kubernetes 1.30

        curl.exe -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.30.0/2024-05-12/bin/windows/amd64/kubectl.exe
      • Kubernetes 1.29

        curl.exe -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.29.3/2024-04-19/bin/windows/amd64/kubectl.exe
      • Kubernetes 1.28

        curl.exe -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.28.8/2024-04-19/bin/windows/amd64/kubectl.exe
      • Kubernetes 1.27

        curl.exe -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.27.12/2024-04-19/bin/windows/amd64/kubectl.exe
      • Kubernetes 1.26

        curl.exe -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.26.15/2024-04-19/bin/windows/amd64/kubectl.exe
      • Kubernetes 1.25

        curl.exe -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.25.16/2024-04-19/bin/windows/amd64/kubectl.exe
      • Kubernetes 1.24

        curl.exe -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.24.17/2024-04-19/bin/windows/amd64/kubectl.exe
      • Kubernetes 1.23

        curl.exe -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.23.17/2024-04-19/bin/windows/amd64/kubectl.exe
      • Kubernetes 1.22

        curl.exe -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.22.17/2024-04-19/bin/windows/amd64/kubectl.exe
      • Kubernetes 1.21

        curl.exe -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.21.14/2024-04-19/bin/windows/amd64/kubectl.exe
    3. (可选)使用二进制文件的 SHA-256 校验和验证下载的二进制文件。

      1. 为 Windows 的集群的 Kubernetes 版本下载 SHA-256 校验和。

        • Kubernetes 1.30

          curl.exe -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.30.0/2024-05-12/bin/windows/amd64/kubectl.exe.sha256
        • Kubernetes 1.29

          curl.exe -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.29.3/2024-04-19/bin/windows/amd64/kubectl.exe.sha256
        • Kubernetes 1.28

          curl.exe -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.28.8/2024-04-19/bin/windows/amd64/kubectl.exe.sha256
        • Kubernetes 1.27

          curl.exe -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.27.12/2024-04-19/bin/windows/amd64/kubectl.exe.sha256
        • Kubernetes 1.26

          curl.exe -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.26.15/2024-04-19/bin/windows/amd64/kubectl.exe.sha256
        • Kubernetes 1.25

          curl.exe -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.25.16/2024-04-19/bin/windows/amd64/kubectl.exe.sha256
        • Kubernetes 1.24

          curl.exe -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.24.17/2024-04-19/bin/windows/amd64/kubectl.exe.sha256
        • Kubernetes 1.23

          curl.exe -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.23.17/2024-04-19/bin/windows/amd64/kubectl.exe.sha256
        • Kubernetes 1.22

          curl.exe -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.22.17/2024-04-19/bin/windows/amd64/kubectl.exe.sha256
        • Kubernetes 1.21

          curl.exe -O https://s3.cn-north-1.amazonaws.com.cn/amazon-eks/1.21.14/2024-04-19/bin/windows/amd64/kubectl.exe.sha256
      2. 检查下载的二进制文件的 SHA-256 校验和。

        Get-FileHash kubectl.exe
      3. 确保输出中生成的校验和与下载的 kubectl.sha256 文件中的校验和相匹配。PowerShell 的输出应为等效的大写字符串。

    4. 将二进制文件复制到您的 PATH 中的文件夹。如果 PATH 中有现有目录可用于命令行实用程序,请将二进制文件复制到该目录。否则,请完成以下步骤。

      1. 为命令行二进制文件创建一个新目录,例如 C:\bin

      2. kubectl.exe 二进制文件复制到新目录。

      3. 编辑用户或系统 PATH 环境变量,将新目录添加到 PATH 中。

      4. 关闭 PowerShell 终端并打开一个新的终端来选取新的 PATH 变量。

  3. 安装 kubectl 后,您可以验证其版本。

    kubectl version --client

首次安装 kubectl 时,它尚未配置为与任何服务器通信。我们将根据需要在其他过程中介绍此配置。如果您需要更新配置以与特定集群通信,可以运行以下命令。region-code 替换为集群所在的 Amazon Web Services 区域。my-cluster 替换为您的集群名称。

aws eks update-kubeconfig --region region-code --name my-cluster