AWSのCLI(コマンドラインインタフェース)のインストールについてまとめています。
AWSのCLIインストール方法
AWS CLIにはバージョン1とバージョン2があります。当記事では最新のバージョン2のインストール方法を解説します。
AWS CLIバージョン2は、Linux、macOS、Windowsにインストールが可能。Dockerイメージでの実行も可能です。以下、Linux(64ビット、Ubuntu 20.04)でのインストール手順です。
関連)AWS CLI バージョン 2 のインストール、更新、アンインストール – AWS Command Line Interface
コマンドラインから、curlコマンドで最新のcliインストーラー(zip形式)をダウンロードします。
$ curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip" % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 4 42.1M 4 1963k 0 0 2138k 0 0:00:20 --:--:-- 0:00:20 2136 11 42.1M 11 4853k 0 0 2532k 0 0:00:17 0:00:01 0:00:16 2531 17 42.1M 17 7548k 0 0 2590k 0 0:00:16 0:00:02 0:00:14 2589 23 42.1M 23 10.0M 0 0 2639k 0 0:00:16 0:00:03 0:00:13 2638 30 42.1M 30 12.8M 0 0 2679k 0 0:00:16 0:00:04 0:00:12 2679 : :
unzipコマンドで、ダウンロードしたファイルを展開します。
$ unzip awscliv2.zip Archive: awscliv2.zip creating: aws/ creating: aws/dist/ inflating: aws/README.md inflating: aws/THIRD_PARTY_LICENSES inflating: aws/install creating: aws/dist/_struct/ creating: aws/dist/awscli/ : :
以下のコマンドで、AWS CLIをインストールします。オプションに–updateを指定すると最新のバージョンに上書き更新します。
$ ./aws/install -i /usr/local/aws-cli -b /usr/local/bin Found preexisting AWS CLI installation: /usr/local/aws-cli/v2/current. Please rerun install script with --update flag. $ ./aws/install -i /usr/local/aws-cli -b /usr/local/bin --update Found same AWS CLI version: /usr/local/aws-cli/v2/2.2.31. Skipping install.
AWS CLIのバージョン2.2.31がインストールされました。実際のコマンドは「/user/local/bin/aws」になります。whichコマンドでコマンド実行パスが通っているかどうか確認し、aws –versionでバージョン確認をおこないました。
$ which aws /usr/local/bin/aws $ aws --version aws-cli/2.2.31 Python/3.8.8 Linux/5.4.72-microsoft-standard-WSL2 exe/x86_64.ubuntu.20 prompt/off
AWS CLIの環境設定
これでいったんAWS CLIのインストールは完了ですが、このままでは使用できません。環境設定を行いましょう。
aws configureを実行して、AWSアクセスキー、シークレットアクセスキー、デフォルトリージョン名、デフォルト出力形式を指定します。
$ aws configure AWS Access Key ID [****************]: AWS Secret Access Key [****************]: Default region name [None]: ap-northeast-1 Default output format [None]: text
AWSアクセスキーとシークレットアクセスキーは、AWSマネジメントコンソールにて生成できます。
AWSログイン後、画面右上の「マイセキュリティ資格情報」をクリックします。
「アクセスキー (アクセスキー ID とシークレットアクセスキー)」で「新しいアクセスキーの作成」ボタンをクリックするとアクセスキーが作成できます。なお、過去にアクセスキーを作成していて、2個アクセスキーが表示されている場合、以前のアクセスキーを無効化しないと新規作成ができません。新しいアクセスキーを作成すると古いアクセスキーは使えなくなります。
シークレットアクセスキーは、作成時にのみ表示されるので「キーファイルのダウンロード」をクリックして保管しておくか、表示されたシークレットアクセスキーをコピーして保存しておきましょう。シークレットアクセスキーがあれば、AWSでインスタンスを勝手に立ち上げることもできてしまうので、漏洩しないように保管しましょう。
さらに、デフォルトリージョン名とデフォルトの出力形式の指定が必要です。今回はデフォルトリージョン名をap-northeast-1(東京)、デフォルト出力形式をtextとしました。
指定できる値は、以下を参考にしてください。
参考)設定の基本 – AWS Command Line Interface
AWS CLIの疎通確認
AWS CLIバージョン2には、便利なコマンドの補完機能があります。aws –cli-auto-promptと実行すると、補完モードになります。膨大なAWSのコマンドを覚えていなくても一覧から選択していくだけでコマンドやオプション指定ができるんですね。
なお、この保管機能はバージョン1にはないので、この機能を使うためだけにバージョン1→バージョン2に変更するだけでも価値があると思います。
$ aws --cli-auto-prompt > aws accessanalyzer Access Analyzer acm AWS Certificate Manager acm-pca AWS Certificate Manager Private Certificate Authority alexaforbusiness Alexa For Business amp Amazon Prometheus Service amplify AWS Amplify amplifybackend AmplifyBackend apigateway Amazon API Gateway apigatewaymanagementapi AmazonApiGatewayManagementApi
選択肢はカーソルキーの上下で移動、Enterキーで選択になります。アルファベットを一文字入力するとその文字で始まるコマンドまたはオプションのみが表示されます。
$ aws --cli-auto-prompt > aws ec2 attach-vpn-gateway --color --profile [string] Use a specific profile from your credential file. --no-sign-request [boolean] Do not sign requests. Credentials will not be loaded if this argument is p... --ca-bundle [string] The CA certificate bundle to use when verifying SSL certificates. Overrides ... --cli-read-timeout [int] The maximum socket read time in seconds. If the value is set to 0, the socket r...
以下のコマンドを実行して、IAMユーザ情報を確認します。
> aws iam list-users USERS arn:aws:iam::…
ユーザ名が表示されれば、ローカル環境にインストールしたAWS CLIとAWSの疎通が確認できたことになります。
【関連記事】
▶AWSのIAMは、AWSサービスとリソースへのアクセス管理とアクセス分析が可能
AWS CLIインストール方法のまとめ
- AWS CLIは、Linux、Windows、macOS、Dockerでのインストールが可能。
- AWS CLIを使えるようにするには、aws configureでアクセスキー情報を登録する
- AWS CLIを更新するには、./aws/installコマンドに–updateオプションをつけて実行する