# 步骤1 准备实验环境 本次workshop 需要的软件环境有 aws cli , eksctl ,kubectl,以及eks对应操作的IAM权限。 1.1 安装配置 aws cli , version > 1.18.200 >1.1.1 安装 利用pip安装 ```bash pip3 install awscli --upgrade --user ``` 利用awscli-bundle安装 [linux / macOS ](https://s3.amazonaws.com/aws-cli/awscli-bundle.zip) ```bash curl "https://s3.amazonaws.com/aws-cli/awscli-bundle.zip" -o "awscli-bundle.zip" unzip awscli-bundle.zip sudo ./awscli-bundle/install -i /usr/local/aws -b /usr/local/bin/aws ``` >[windows 64 bit MSI installer](https://s3.amazonaws.com/aws-cli/AWSCLI64PY3.msi) windows 默认的安装路径在C:\Program Files\Amazon\AWSCLI (64-bit version)\ ```bash $aws --version aws-cli/1.18.203 Python/3.8.2 Darwin/19.6.0 botocore/1.19.43 ``` >1.1.2 配置aws cli 角色 ```bash #配置aws cli的用户权限 $aws configure AWS Access Key ID : AWS Secret Access Key : Default region name: Default output format [None]: #测试AK/SK是否生效 aws sts get-caller-identity #如果可以正常返回以下内容(包含account id),则表示已经正确设置角色权限 { "Account": "", "UserId": "AIDAIG42GHSYU2TYCMCZW", "Arn": "arn:aws-cn:iam:::user/" } ``` 1.2 安装eksctl (0.36.0-rc.0), kubectl (v1.18.9) * [masOS](https://github.com/weaveworks/eksctl/releases/download/0.15.0/eksctl_Darwin_amd64.tar.gz) * [linux](https://github.com/weaveworks/eksctl/releases/download/0.15.0/eksctl_Linux_amd64.tar.gz) * [windows](https://github.com/weaveworks/eksctl/releases/download/0.15.0/eksctl_Windows_amd64.zip) ```bash #设置默认region export AWS_REGION=cn-northwest-1 #eksctl #linux/macOS curl -OL "https://github.com/weaveworks/eksctl/releases/download/0.36.0-rc.0/eksctl_$(uname -s)_amd64.tar.gz" tar -zxf eksctl_$(uname -s)_amd64.tar.gz sudo mv ./eksctl /usr/local/bin #kubectl v1.18.9 https://docs.aws.amazon.com/eks/latest/userguide/install-kubectl.html #macOS curl -o kubectl https://amazon-eks.s3.us-west-2.amazonaws.com/1.18.9/2020-11- 02/bin/darwin/amd64/kubectl #Linux curl -o kubectl https://amazon-eks.s3.us-west-2.amazonaws.com/1.18.9/2020-11- 02/bin/linux/amd64/kubectl chmod +x ./kubectl sudo mv ./kubectl /usr/local/bin ``` >检查工具的版本 eksctl (版本>=0.15.0), kubectl(版本>=1.15) ```bash $eksctl version 0.36.0-rc.0 $kubectl version Client Version: version.Info{Major:"1", Minor:"18+", GitVersion:"v1.18.9-eks-d1db3c", GitCommit:"d1db3c46e55f95d6a7d3e5578689371318f95ff9", GitTreeState:"clean", BuildDate:"2020-10-20T22:21:03Z", GoVersion:"go1.13.15", Compiler:"gc", Platform:"darwin/amd64"} ```