設定 AWS CLI 以及 AWS CLI 指令說明
介紹
AWS CLI 是用於使用 AWS 服務的命令列工具。它也用於對 IAM 使用者或角色進行身份驗證,以便從本機電腦存取 Amazon EKS 叢集和其他 AWS 資源。若要從命令列在 AWS 中設定資源,您需要取得要在命令列中使用的 AWS 存取金鑰 ID 和金鑰。
如何安裝 AWS CLI
Mac 安裝指令:
brew install awscli自動補齊指令:
complete -C '/usr/local/bin/aws_completer' aws如何設定 AWS CLI
AWS 跟 GCP 比較不一樣的是 CLI 在 Google (gcloud) 可以使用 Web 登入的方式來驗證 gcloud auto login,但是在 AWS 需要使用 Access Key ID 和 Secret Access Key 來驗證。
因此我們在開始使用前,需要先透過 UI 產生自己帳號的 Access Key ID 和 Secret Access Key,才能夠有權限下指令。
建立存取密鑰
需要先確認是否有以下的 IAM 權限:
"Action": [
"iam:CreateAccessKey",
"iam:DeleteAccessKey",
"iam:GetAccessKeyLastUsed",
"iam:ListAccessKeys",
"iam:UpdateAccessKey",
"iam:TagUser"
]- TagUser:是用來幫金鑰加上標籤值,方便管理。

沒有權限會噴錯
- 先登入 AWS 的管理控制台。
- 點擊右上角的 AWS 使用者名稱,並點選「安全憑證」。

在 AWS 的管理控制台,選擇安全憑證
- 找到存取金鑰,並點選「建立存取金鑰」,如果有建立過,也會顯示在這邊。

建立存取金鑰
- 點選「命令列介面 (CLI)」,下方要勾選一個確認建議的選項,最後按下一步。

選擇命令列介面 (CLI)案例
- 可以選擇是否要建立標籤,如果要建立,需要前面提到的
iam:TagUserIAM 權限。

設定描述標籤
- 就可以拿到存取金鑰 (Access Key ID) 以及私密存取金鑰 (Secret Access Key),要記住私密存取金鑰,只有這個畫面可以拿到,如果沒有儲存,就需要重新建立一個新的金鑰。

產生完金鑰
配置 AWS CLI
- 接下來我們要在本機把剛剛產生的 Access Key ID 和 Secret Access Key 設定到 AWS CLI,我們可以下這個指令。
aws configure- 下完後,就會顯示以下設定畫面,分別輸入 Access Key ID、Secret Access Key、預設區域以及輸出格式。
AWS Access Key ID [None]: AAKIA2HCM5WKG7R647HTV
AWS Secret Access Key [None]: ******************************
Default region name [None]: region-code (例如:亞太地區東京 ap-northeast-1)
Default output format [None]: json就代表成功設定完成囉 ლ(́◕◞౪◟◕‵ლ)
另外,設定的內容會寫到 ~/.aws/credentials 和 ~/.aws/config 這兩個檔案中,如果想要修改設定,也可以直接修改這兩個檔案。
[default]
aws_access_key_id = AAKIA2HCM5WKG7R647HTV
aws_secret_access_key = t5CMmR4Y7cuFC/RgxJS1XXXXXXXXXXXXXXXXXXXX[default]
region = ap-northeast-1常用 的 AWS CLI 指令說明
| 指令 | 描述 |
|---|---|
aws sts get-caller-identity | 驗證使用者身份 |
aws eks list-clusters --region {REGION} | 列出區域的 EKS |
aws iam list-mfa-devices --user-name {USER_NAME} | 列出使用者的 MFA 裝置 |
aws sts get-session-token --duration-seconds 129600 --serial-number ${MFA_DEVICES_NUMBER} --token-code ${MFA_CODE} | 取得 MFA Token |
參考資料
探索 AWS:從菜鳥到熟練的完全指南(四)IAM 登入方式:https://hackmd.io/@gdw7l5sPTOyNv76kZ_twjA/SkTPl-xP3
設定 AWS CLI:https://docs.aws.amazon.com/eks/latest/userguide/install-awscli.html
AWS CLI 指令參考:https://docs.aws.amazon.com/zh_tw/cli/latest/userguide/cli_code_examples_categorized.html