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

安装 aws-iam-authenticator

Amazon EKS 使用 IAM 向您的 Kubernetes 集群提供身份验证(通过适用于 Kubernetes 的 Amazon IAM 身份验证器)。您可以将库存 kubectl 客户端配置为与 Amazon EKS 搭配使用,方法为:安装适用于 Kubernetes 的 Amazon IAM 身份验证器,然后修改 kubectl 配置文件,从而用其进行身份验证。

注意

如果您正在运行 Amazon CLI 版本 1.16.156 或更高版本,则无需安装身份验证器。相反,您可以使用 aws eks get-token 命令。有关更多信息,请参阅手动创建 kubeconfig 文件

如果您无法使用 Amazon CLI 版本 1.16.156 或更高版本创建 kubeconfig 文件,则您可以在 macOS、Linux 或 Windows 上安装适用于 Kubernetes 的 Amazon IAM 身份验证器。

macOS

使用 Homebrew 安装 aws-iam-authenticator

安装 aws-iam-authenticator 的最简单方法是使用 Homebrew

  1. 如果您的 Mac 上尚未安装 Homebrew,请使用以下命令安装它。

    /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
  2. 使用以下命令安装 aws-iam-authenticator

    brew install aws-iam-authenticator
  3. 测试 aws-iam-authenticator 二进制文件的工作原理。

    aws-iam-authenticator help

在 macOS 上安装 aws-iam-authenticator

您还可以按照以下步骤安装 aws-iam-authenticator

  1. 从 GitHub 下载适用于您的硬件平台的 aws-iam-authenticator 二进制文件。第一个命令将下载 amd64 版本。第二个命令将下载 arm64 版本。

    curl -Lo aws-iam-authenticator https://github.com/kubernetes-sigs/aws-iam-authenticator/releases/download/v0.5.9/aws-iam-authenticator_0.5.9_darwin_amd64
    curl -Lo aws-iam-authenticator https://github.com/kubernetes-sigs/aws-iam-authenticator/releases/download/v0.5.9/aws-iam-authenticator_0.5.9_darwin_arm64
  2. (可选)使用文件的 SHA-256 校验和验证下载的二进制文件。

    1. 下载 SHA-256 校验和文件。

      curl -Lo aws-iam-authenticator.txt https://github.com/kubernetes-sigs/aws-iam-authenticator/releases/download/v0.5.9/authenticator_0.5.9_checksums.txt
    2. 查看您下载的身份验证器二进制文件的校验和。第一个命令将返回 amd64 校验和。第二个命令将返回 arm64 校验和。

      awk '/aws-iam-authenticator_0.5.9_darwin_amd64/ {print $1}' aws-iam-authenticator.txt
      awk '/aws-iam-authenticator_0.5.9_darwin_arm64/ {print $1}' aws-iam-authenticator.txt

      输出示例如下。

      7656bd290a7e9cb588df1d9ccec43fab7f2447b88ed4f41d3f5092fd114b0939
    3. 确定下载的二进制文件的 SHA-256 校验和。

      openssl sha1 -sha256 aws-iam-authenticator

      输出示例如下。

      SHA256(aws-iam-authenticator)= 7656bd290a7e9cb588df1d9ccec43fab7f2447b88ed4f41d3f5092fd114b0939

      返回的输出应与上一步中返回的输出相匹配。

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

    chmod +x ./aws-iam-authenticator
  4. 将二进制文件复制到您的 $PATH 中的文件夹。我们建议创建一个 $HOME/bin/aws-iam-authenticator 并确保 $HOME/bin 首先显示在您的 $PATH 中。

    mkdir -p $HOME/bin && cp ./aws-iam-authenticator $HOME/bin/aws-iam-authenticator && export PATH=$PATH:$HOME/bin
  5. $HOME/bin 添加到 PATH 环境变量。

    echo 'export PATH=$PATH:$HOME/bin' >> ~/.bash_profile
  6. 测试 aws-iam-authenticator 二进制文件的工作原理。

    aws-iam-authenticator help
Linux

在 Linux 上安装 aws-iam-authenticator

  1. 从 GitHub 下载适用于您的硬件平台的 aws-iam-authenticator 二进制文件。第一个命令将下载 amd64 版本。第二个命令将下载 arm64 版本。

    curl -Lo aws-iam-authenticator https://github.com/kubernetes-sigs/aws-iam-authenticator/releases/download/v0.5.9/aws-iam-authenticator_0.5.9_linux_amd64
    curl -Lo aws-iam-authenticator https://github.com/kubernetes-sigs/aws-iam-authenticator/releases/download/v0.5.9/aws-iam-authenticator_0.5.9_linux_arm64
  2. (可选)使用文件的 SHA-256 校验和验证下载的二进制文件。

    1. 下载 SHA-256 校验和文件。

      curl -Lo aws-iam-authenticator.txt https://github.com/kubernetes-sigs/aws-iam-authenticator/releases/download/v0.5.9/authenticator_0.5.9_checksums.txt
    2. 查看您下载的身份验证器二进制文件的校验和。第一个命令将返回 amd64 校验和。第二个命令将返回 arm64 校验和。

      awk '/aws-iam-authenticator_0.5.9_linux_amd64/ {print $1}' aws-iam-authenticator.txt
      awk '/aws-iam-authenticator_0.5.9_linux_arm64/ {print $1}' aws-iam-authenticator.txt

      输出示例如下。

      b192431c22d720c38adbf53b016c33ab17105944ee73b25f485aa52c9e9297a7
    3. 确定下载的二进制文件的 SHA-256 校验和。

      openssl sha1 -sha256 aws-iam-authenticator

      输出示例如下。

      SHA256(aws-iam-authenticator)= b192431c22d720c38adbf53b016c33ab17105944ee73b25f485aa52c9e9297a7

      返回的输出应与上一步中返回的输出相匹配。

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

    chmod +x ./aws-iam-authenticator
  4. 将二进制文件复制到您的 $PATH 中的文件夹。我们建议创建一个 $HOME/bin/aws-iam-authenticator 并确保 $HOME/bin 首先显示在您的 $PATH 中。

    mkdir -p $HOME/bin && cp ./aws-iam-authenticator $HOME/bin/aws-iam-authenticator && export PATH=$PATH:$HOME/bin
  5. $HOME/bin 添加到 PATH 环境变量。

    echo 'export PATH=$PATH:$HOME/bin' >> ~/.bashrc
  6. 测试 aws-iam-authenticator 二进制文件的工作原理。

    aws-iam-authenticator help
Windows

要在安装有 Chocolatey 的 Windows 上安装 aws-iam-authenticator

  1. 如果您尚未在 Windows 系统上安装 Chocolatey,请参阅安装 Chocolatey

  2. 打开 PowerShell 终端窗口并使用以下命令安装 aws-iam-authenticator 程序包:

    choco install -y aws-iam-authenticator
  3. 测试 aws-iam-authenticator 二进制文件的工作原理。

    aws-iam-authenticator help

在 Windows 上安装 aws-iam-authenticator

  1. 打开一个 PowerShell 终端窗口,然后从 GitHub 下载 aws-iam-authenticator 二进制文件。

    curl -Lo aws-iam-authenticator.exe https://github.com/kubernetes-sigs/aws-iam-authenticator/releases/download/v0.5.9/aws-iam-authenticator_0.5.9_windows_amd64.exe
  2. (可选)使用文件的 SHA-256 校验和验证下载的二进制文件。

    1. 下载 SHA-256 校验和文件。

      curl -Lo aws-iam-authenticator.txt https://github.com/kubernetes-sigs/aws-iam-authenticator/releases/download/v0.5.9/authenticator_0.5.9_checksums.txt
    2. 查看您下载的身份验证器二进制文件的校验和。

      $checksum = Get-Content aws-iam-authenticator.txt $checksum[3]

      输出示例如下。

      b7345e06c5f1d31b9459a38baffe0744343711cb5042cb31ff1e072d870c42f9 aws-iam-authenticator_0.5.9_windows_amd64.exe
    3. 确定下载的二进制文件的 SHA-256 校验和。

      Get-Filehash aws-iam-authenticator.exe

      输出示例如下。

      Algorithm Hash Path --------- ---- ---- SHA256 B7345E06C5F1D31B9459A38BAFFE0744343711CB5042CB31FF1E072D870C42F9 /home/cloudshell-user/temp/aws-iam-authenticator

      尽管返回的输出是大写的,但它应与上一步中返回的小写输出相匹配。

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

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

    2. aws-iam-authenticator.exe 二进制文件复制到新目录。

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

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

  4. 测试 aws-iam-authenticator 二进制文件的工作原理。

    aws-iam-authenticator help

如果您现有一个 Amazon EKS 集群,则为该集群创建一个 kubeconfig 文件。有关更多信息,请参阅为 Amazon EKS 集群创建或更新 kubeconfig 文件。否则,请参阅 创建 Amazon EKS 集群 以创建新的 Amazon EKS 集群。