2021/01/13

AWS CLI v2をインストールして新機能を使ってみる

 
  

AWS CLIとは?

AWS CLI(Command Line Interface)は、AWSが提供する各種サービスをコマンドラインから管理するためのツールです。AWSのサービスを利用するには、GUIを使うのが一般的ですが、CLIを使うメリットについてGUIとの違いを交えながらご説明します。

AWS CLIのメリット

AWSのサービスは、当然ながらGUIを利用した方が直感的で分かりやすく、簡単に操作できます。ですので、個人で色々なサービスを大まかに使ってみたい場合などは、GUIだけで事足りますし、その方が楽でしょう。 しかし、多人数によるプロジェクト開発に携わる場合、GUIだけでは不都合なケースが多々出てきます。そして、AWS CLIを使うことによって、これらの不具合は解消されます。

マニュアル化が容易

AWS CLIは、マニュアル化の問題を解決し、プロジェクトの開発効率をアップしてくれます。 プロジェクト間で一定の操作やルーチンを共有化する場合、操作画面のキャプチャを取りながらマニュアル化していくという手法が取られます。 社内アプリなどはそれでも問題ありませんが、AWSのGUIは日々アップデートしています。昨日まで見ていた画面が、ある日レイアウトが変わっていたということが珍しくありません。その度にマニュアルを改訂していては、手間がかかり開発効率も落ちます。 その点、AWS CLIであればテキストベースですので、メモ帳アプリなどからコピー&ペーストするだけで全員同じ操作ができますし、マニュアル改訂の手間もありません。

ヒューマンエラーを減らせる

AWS CLIを使うことで、ヒューマンエラーを減らすことができます。 GUIによる操作は確かに直感的で分かりやすいですが、クリックミスなどによるヒューマンエラーが発生しやすいのも事実です。そして、単純な繰り返し作業であればあるほど、その確率は上昇します。 しかし、AWS CLIでこのような処理をテンプレートにまとめ自動化しておけば、ミスが起こることなくしかも高速に処理を完結させることができます。

サービスの細かい部分まで利用できる

AWS CLIを使うことで、AWSのサービスの細かい部分まで柔軟に利用できます。 実はAWSのGUIは、各サービスの全ての機能を提供しているわけではありません。この点についても、AWS CLIであればコマンド実行の際にオプションなどを指定することで、サービスの細かい機能まで利用可能です。

AWS CLI v2の新機能

AWS CLIを使うメリットについて理解頂いたところで、ここからはAWS CLIの新バージョンであるv2の解説に入ります。v2は、2019年12月にプレビューリリース、2020年2月に一般公開されました。以下、v1からどう変わったのかに焦点を当ててご紹介します。

インストールが容易に

v1に比べて、v2でのインストール作業は格段に楽になりました。 v1でのインストールは、実は一筋縄ではいかない作業でした。CLI自体がPythonで記述されていたため、Pythonのバージョンアップが原因でAWS CLIが動かなくなる事例がよくありました。そもそも前提として、Pythonがインストールされている必要もありました。 v2では、ビルド済みインストーラとして提供されているため、Pythonなどの他のソフトウェアへ依存することがなくなりました。前提条件としてのPythonのインストールも不要になりました。 なお、具体的なインストール手順については後述します。

リソース名の自動補完機能

v2から、コマンド入力の自動補完機能にリソース名が追加されました。 自動補完機能は、コンソール上でコマンド入力する際に文字列の途中まで打ち込んで[TAB]を押すことで、一致するコマンド名などが候補として表示される入力支援機能です。この自動補完機能は、v1でもコマンド名とプロパティ名で利用できました。 v2からはこの自動補完機能にリソース名が追加され、例えば作成したIAMロール名などをコマンドのプロパティとして指定したい場合など、都度listで一覧表示させて確認しなくてもよくなり、入力スピードが格段にアップしました。

自動プロンプト機能

v2から新たに追加された自動プロンプト機能は、コマンド入力効率を更に高めてくれます。 コマンドを入力していると、パラメータとして何を指定すべきだったか、このパラメータはどんな意味であったか、等ということが分からなくなることがあります。 自動プロンプト機能では、実行したいコマンドに「–cli-auto-prompt」オプションを指定することで、まず必須パラメータの入力を求められます。続けて任意パラメータが、簡単な説明付きでリスト表示されるので、その中から目的のものを選んでコマンドを実行できます。

ウィザード機能

v2から新たに追加されたウィザード機能は、対話形式でコマンドを実行できる機能です。 現時点で全てのサービスに対応しているわけではありませんが、「aws wizard 」という形式でコマンド入力して質問に回答していくことで、例えばDynamoDBのテーブルが作れたりします。

AWS CLI v2のインストール

それでは、実際にAWS CLI v2をインストールしてみましょう。Linuxの場合とWindowsの場合に分けて解説しますが、どちらも簡単な手順でインストールできます。

Linuxへのインストール

64ビットLinuxに、最新バージョンのAWS CLI v2をインストールする手順を解説します。 Linuxのコマンドラインより以下のcurlコマンドを実行して、カレントディレクトリにパッケージをダウンロードします。-oオプションは、ダウンロードパッケージを書き込むファイル名です。
curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
ダウンロードしたファイルを解凍します。
unzip awscliv2.zip
インストーラを実行します。-iオプションで、すべてのファイルのコピー先ディレクトリを指定できます(デフォルトは「/usr/local/aws-cli」)。
sudo ./aws/install
「aws –version」を実行し、バージョン情報が表示されればインストール完了です。

Windowsへのインストール

Windowsの場合は、MSIインストーラが提供されていますので、基本的に画面の指示に従っていけばインストールできます。なお、WindowsのAWS CLI v2は64bit版のみサポートしていますので、ご注意ください。 こちらから最新バージョンのインストーラをダウンロードします。 ダウンロードしたMSIインストーラを実行し、画面の指示に従ってインストールします。インストール先は、デフォルトの場合「C:\Program Files\Amazon\AWSCLIV2」です。 コマンドプロンプト、またはPowerShellから「aws –version」を実行し、バージョン情報が表示されればインストール完了です。

AWS CLI v2の設定

AWS CLI v2からAWSのサービスにアクセスできるよう、認証情報を設定します。 「aws configure」コマンドを実行すると、対話形式で以下の情報の入力を求められます。
$ aws configure
AWS Access Key ID [None]: {アクセスキーID}
AWS Secret Access Key [None]: {シークレットアクセスキー}
Default region name [None]: {デフォルトリージョン}
Default output format [None]: {コマンド出力の表示形式}
アクセスキーIDとシークレットアクセスキーは、セキュリティ認証情報より確認できます。デフォルトリージョンは最寄りのリージョン(東京なら「ap-northeast-1」)を指定します。出力の表示形式は「json / yaml / yaml-stream / table / text」より指定します。

AWS CLI v1とv2は併用できる?

結論から言うと、AWS CLIのv1とv2は、インストーラが別物でありインストールパスも異なるので、併用が可能です。 但し、PATH環境変数は先に設定されたものの方が優先順位が高いので、既に環境にAWS CLI v1がインストールされており、かつv2を優先して使いたい場合は、PATHの順位を変更するかv1をアンインストールする必要があります。

AWS CLI v2を使ってみよう

今回は、AWS CLI v2を使うメリットを、その新機能と共にご紹介しました。 v2になって、コマンドラインツールとしての機能が大幅に強化されただけでなく、インストールも簡略化され導入へのハードルも低くなりました。 GUIだけでは実現できないAWSサービスの細かい機能も、AWS CLI v2であれば柔軟に利用できます。是非この機会に試してみてください。
]]>

ITエンジニアへのキャリアチェンジならキャリアチェンジアカデミー

この記事の監修者・著者

株式会社オープンアップITエンジニア
株式会社オープンアップITエンジニア
未経験からITエンジニアへのキャリアチェンジを支援するサイト「キャリアチェンジアカデミー」を運営。これまで4500人以上のITエンジニアを未経験から育成・排出してきました。
・AWS、salesforce、LPICの合計認定資格取得件数:2100以上(2023年6月時点)
・AWS Japan Certification Award 2020 ライジングスター of the Year 受賞

おすすめの動画

  • 【未経験からIT業界へ転職するなら】相談窓口とスキルの獲得はここで解決!IT転職が一気に有利に!【キャリアチェンジアカデミー】

  • 【費用一切不要】未経験からIT業界へ転職するならまずはここへ相談!【キャリアチェンジアカデミー】

  • 【何のエンジニアになれるのか?】未経験からITエンジニアを目指すとこんな道がある【キャリアチェンジアカデミー】