【簡単】AWS CLIのセットアップ方法
AWSコマンドラインインターフェース (CLI)は、一言で言ってしまうと、AWSはマネジメントコンソールのWeb画面からいろいろ操作できるものをコマンドでもできる、というものです。
詳しくは公式の説明をご覧ください。
この記事は、
急ぎでAWS CLIが使いたいんだ!
という方向けにざっくり導入まで説明した記事になります。
たまにしかAWS触らない人は圧倒的にGUIのマネジメントコンソールが便利なのですが、毎日AWSの操作する人やコマンド打つ方がカッコいいぜ、というCUI派の方にオススメです。
またコマンドで操作できるので、バッチ化やスクリプト化することで自動化できるのもメリットです。あとは、マネジメントコンソールではかゆいところに手が届かないけれどCLIならできるというケースもありますので、GUI派の方も知っておいて損はないと思います。
事前準備
前置きはそれぐらいにして、準備をしていきましょう。
AWS CLIのインストール
AWS CLIを利用するには、コマンド群をインストールする必要がありますので、AWS公式サイトからダウンロードします。
お使いのOSを指定します。私はWindowsを使っているので一番下のリンクをクリックしました。
Windowsの場合は、MSIセットアップになるようです。ダウンロードリンクをクリックするとMSIファイルがダウンロードできますので、これを実行してNEXTで先に進めていけばインストールできます。
インストールが完了したら、コマンドプロンプトを起動して、awsコマンドが正常に動作するか確認してください。
とりあえず、aws –version を実行して、バージョン番号でも表示してみましょう。表示される内容は環境によって異なりますが、次のように aws-cli/X.X.X とような感じで表示されればインストールは完了です。
Microsoft Windows [Version 10.0.19042.1110]
(c) Microsoft Corporation. All rights reserved.
C:\> aws --version
aws-cli/2.2.25 Python/3.8.8 Windows/10 exe/AMD64 prompt/off
C:\>
AWS CLI接続時のアクセスキーの生成
CLI実行時にはAWSへの接続情報するためのアクセスキーが必要です。
アクセスキーを作成する方法は主に次の2つです。
- AWS CLI接続専用ユーザの作成する
- 既に存在するIAMユーザを使う
AWSマネジメントコンソールにログインしてAWS CLI用のユーザを作成するか、既存IAMユーザに対してアクセスキーの生成を行います。
【パターン①】AWS CLI接続専用ユーザの作成する場合
すでに接続で使うIAMユーザを持っている方はパターン②の方です。
AWSマネジメントコンソールにログインして、AWS CLIで接続する専用のIAMユーザを作成します。
サービス検索欄にiamと入力してIAMのリンクをクリックします。
「ユーザを追加」ボタンをクリックします。
①ユーザ名を入力します。
②アクセスの種類は、「プログラムによるアクセス」にチェックを付けてください。AWS CLIの接続でしか使わない場合は、AWSマネジメントコンソールへのアクセスはオフにします。
③次のステップへ移動します。
アクセス許可では、適切なアクセス権限を付与します。万が一、アクセスキーが流出してしまったことも想定すると、利用用途に応じた最低限の権限を付与するのがベストプラクティスです。
今回はピンポイントで必要なポリシーをアタッチ(①、②)して、次へ進みます(③)。
次はタグ画面があるのですが、今回は直接関係ないのでスキップします。
そして、この画面ではユーザ作成前の最終確認画面です。間違いがないか確認して「ユーザの追加」ボタンをクリックします。
アクセスIDとシークレットアクセスキーが生成されましたので、これをメモっておきましょう。
この画面を閉じると二度と確認できません。
【パターン②】既に存在するIAMユーザを使う場合
AWS CLIを利用するIAMユーザに対して、アクセスキーを設定する必要があります。
サービス検索欄にiamと入力してIAMのリンクをクリックします。
既存のユーザの詳細を表示します。
今回はこのbattanユーザのアクセスキーを作成してAWS CLIでアクセスできるようにします。
認証情報タブの「アクセスキーの作成」ボタンをクリックします。
アクセスキーはボタンを押すだけのワンタッチ生成です。
このキーの組み合わせが確認できるのは今表示されているウインドウだけですので、忘れずにメモしておきましょう。
AWS CLI 接続設定の登録
ここからは、コマンドプロンプトでの作業になります。
現在の接続設定を確認
aws configure list で確認できます。AWS CLIを初めて使う場合はこのように未設定です。
C:\> aws configure list
Name Value Type Location
---- ----- ---- --------
profile <not set> None None
access_key <not set> None None
secret_key <not set> None None
region <not set> None None
接続設定を登録
aws configure を実行して接続設定を登録します。
- AWS Access Key ID:さきほど生成したアクセスキーIDを指定します
- AWS Secret Access key:さきほど生成したシークレットアクセスキーを指定します
- Default region name:自分のホームリージョンを指定します。私は東京。
- Default output format:接続情報を出力する時の形式を指定できます。私はテキスト形式。
C:\> aws configure
AWS Access Key ID [None]: AKIA3HLRZJYTLC6WZ7NE
AWS Secret Access Key [None]: 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
Default region name [None]: ap-northeast-1
Default output format [None]: text
登録した接続情報を確認
再度、現在の設定を確認してみましょう。
設定ができていれば、次のように表示されます。
C:\> aws configure list
Name Value Type Location
---- ----- ---- --------
profile <not set> None None
access_key ****************Z7NE shared-credentials-file
secret_key ****************2G2M shared-credentials-file
region ap-northeast-1 config-file ~/.aws/config
【おまけ】複数の接続設定を登録する方法
接続先が複数のAWSアカウントだったりする場合、毎回接続情報を入力するのは面倒ですので、プロフィール登録して、適宜使うプロフィールを指定できるようにしておくと便利です。
プロフィールを登録する
AWS CLIの設定ファイルに直接接続定義を書き込みます。
AWS CLIの設定ファイルは、Windowsログインユーザのホームディレクトリ配下の .awsフォルダに格納されています。これを実行するとエクスプローラーで開けると思います。
c:\> start %USERPROFILE%\.aws
credentialsファイルをエディタで開いて、プロフィールを追加します。
下の例では、user1というプロフィールを追加して、利用するアクセスキーを定義しています。
[default]
aws_access_key_id = AKIA3HLRZJYTLC6WZ7NE
aws_secret_access_key = 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
[user1]
aws_access_key_id = AKIA3HLRZJYTEBPVEWTE
aws_secret_access_key = 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
プロフィールを使ってawsコマンドを実行する
作成したuser1のプロフィールを指定してawsコマンドを実行する時は、このように –profileオプションを使います。
c:\> aws ... --profile user1
AWS CLIを使ってみる
Windowsのコマンドプロンプトを起動して、awsコマンドを実行して正常に実行ができればAWS CLIのセットアップ完了です。
うまく設定できたか確認したいけれど、どう確認したらよいか分からない方は、AWS CLIを使って、S3バケットからファイルをダウンロードする方法を紹介していますので、こちらで確認してみてはいかがでしょうか。
コメント