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

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

安装aws-iam-authenticator

Amazon EKS 使用 IAM 通过适用于 Kubernetes 的 AWS IAM 身份验证器向 Kubernetes 集群提供身份验证。您可以将库存 kubectl 客户端配置为使用 Amazon EKS,方式是安装适用于 Kubernetes 的 AWS IAM 身份验证器,然后修改 kubectl 配置文件,以便使用它进行身份验证。

注意

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

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

使用 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 提供的 aws-iam-authenticator 版本。

  1. 使用与集群所在的区域对应的命令从 Amazon EKS 下载 aws-iam-authenticator 提供的 Amazon S3 二进制文件。

    • 区域之外的所有区域。中国

      curl -o aws-iam-authenticator https://amazon-eks.s3.us-west-2.amazonaws.com/1.18.9/2020-11-02/bin/darwin/amd64/aws-iam-authenticator
    • 北京和宁夏 中国区域。

      curl -o aws-iam-authenticator https://amazon-eks.s3.cn-north-1.amazonaws.com.cn/1.18.9/2020-11-02/bin/darwin/amd64/aws-iam-authenticator
  2. (可选)使用同一存储桶前缀中提供的 SHA-256 总和验证下载的二进制文件。

    1. 使用与集群所在的区域对应的命令下载系统的 SHA-256 总和。

      • 区域之外的所有区域。中国

        curl -o aws-iam-authenticator.sha256 https://amazon-eks.s3.us-west-2.amazonaws.com/1.18.9/2020-11-02/bin/darwin/amd64/aws-iam-authenticator.sha256
      • 北京和宁夏 中国区域。

        curl -o aws-iam-authenticator.sha256 https://amazon-eks.s3.cn-north-1.amazonaws.com.cn/1.18.9/2020-11-02/bin/darwin/amd64/aws-iam-authenticator.sha256
    2. 检查下载的二进制文件的 SHA-256 总和。

      openssl sha1 -sha256 aws-iam-authenticator
    3. 将命令输出中生成的 SHA-256 总和与下载的 aws-iam-authenticator.sha256 文件进行比较。这两者应该匹配。

  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 上安装 aws-iam-authenticator

  1. 使用与集群所在的区域对应的命令从 Amazon EKS 下载 aws-iam-authenticator 提供的 Amazon S3 二进制文件。要下载 Arm 版本,请先将 amd64 更改为 arm64,然后再运行命令。

    • 区域之外的所有区域。中国

      curl -o aws-iam-authenticator https://amazon-eks.s3.us-west-2.amazonaws.com/1.18.9/2020-11-02/bin/linux/amd64/aws-iam-authenticator
    • 北京和宁夏 中国区域。

      curl -o aws-iam-authenticator https://amazon-eks.s3.cn-north-1.amazonaws.com.cn/1.18.9/2020-11-02/bin/linux/amd64/aws-iam-authenticator
  2. (可选)使用同一存储桶前缀中提供的 SHA-256 总和验证下载的二进制文件。

    1. 使用与集群所在的区域对应的命令下载系统的 SHA-256 总和。要下载 Arm 版本,请先将 <amd64> 更改为 arm64,然后再运行命令。

      • 区域之外的所有区域。中国

        curl -o aws-iam-authenticator.sha256 https://amazon-eks.s3.us-west-2.amazonaws.com/1.18.9/2020-11-02/bin/linux/amd64/aws-iam-authenticator.sha256
      • 北京和宁夏 中国区域。

        curl -o aws-iam-authenticator.sha256 https://amazon-eks.s3.cn-north-1.amazonaws.com.cn/1.18.9/2020-11-02/bin/linux/amd64/aws-iam-authenticator.sha256
    2. 检查下载的二进制文件的 SHA-256 总和。

      openssl sha1 -sha256 aws-iam-authenticator
    3. 将命令输出中生成的 SHA-256 总和与下载的 aws-iam-authenticator.sha256 文件进行比较。这两者应该匹配。

  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

在安装有 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 终端窗口,然后使用与集群所在的区域对应的命令从 Amazon EKS 下载 aws-iam-authenticator 提供的 Amazon S3 二进制文件。

    • 区域之外的所有区域。中国

      curl -o aws-iam-authenticator.exe https://amazon-eks.s3.us-west-2.amazonaws.com/1.18.9/2020-11-02/bin/windows/amd64/aws-iam-authenticator.exe
    • 北京和宁夏 中国区域。

      curl -o aws-iam-authenticator.exe https://amazon-eks.s3.cn-north-1.amazonaws.com.cn/1.18.9/2020-11-02/bin/windows/amd64/aws-iam-authenticator.exe
  2. (可选)使用同一存储桶前缀中提供的 SHA-256 总和验证下载的二进制文件。

    1. 使用与集群所在的区域对应的命令下载系统的 SHA-256 总和。

      • 区域之外的所有区域。中国

        curl -o aws-iam-authenticator.sha256 https://amazon-eks.s3.us-west-2.amazonaws.com/1.18.9/2020-11-02/bin/windows/amd64/aws-iam-authenticator.exe.sha256
      • 北京和宁夏 中国区域。

        curl -o aws-iam-authenticator.sha256 https://amazon-eks.s3.cn-north-1.amazonaws.com.cn/1.18.9/2020-11-02/bin/windows/amd64/aws-iam-authenticator.exe.sha256
    2. 检查下载的二进制文件的 SHA-256 总和。

      Get-FileHash aws-iam-authenticator.exe
    3. 将命令输出中生成的 SHA-256 总和与下载的 SHA-256 文件进行比较。二者应匹配,但 PowerShell 输出为大写。

  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 集群。