AWS Command Line Interface とは - AWS Command Line Interface

AWS Command Line Interface とは

重要

2020 年 1 月 10 日、動作に Python の個別インストールが必要な AWS CLI バージョン 1 は、Python バージョン 2.6 および 3.3 のサポートを終了しました。2020 年 1 月 10 日以降にリリースされた AWS CLI バージョン 1 のすべてのビルドでは、バージョン 1.17 から、AWS CLI の正常な使用のために、Python 2.7、Python 3.4、またはそれ以降のバージョンが必要です。

この変更は、AWS CLI の以下のバージョンには影響しません。

  • AWS CLI バージョン 1 の Windows MSI インストーラバージョン。 AWS CLI バージョン 1 の Windows MSI インストーラには、インストールされている可能性のある Python のバージョンに関係なく、Python の組み込みコピーが含まれており、使用されます。MSI インストーラベースの AWS CLI を使用する場合、変更は必要ありません。

  • AWS CLI バージョン 2。 AWS CLI バージョン 2 のすべてのインストーラには、インストールされている可能性のある Python のバージョンに関係なく、Python の組み込みコピーが含まれており、使用されます。AWS CLI バージョン 2 を使用する場合、変更は必要ありません。

詳細については、このガイドの「Python の以前のバージョンでの AWS CLI バージョン 1 の使用」、およびこのブログ投稿の廃止に関するお知らせを参照してください。

AWS Command Line Interface (AWS CLI) は、コマンドラインシェルでコマンドを使用して AWS サービスとやり取りするためのオープンソースツールです。

AWS CLI には 2 つのバージョンがあります。

  • バージョン 2.x – 本番稼働用環境での使用を目的とした AWS CLI の現在一般に入手可能なリリース。このバージョンには、想定どおりに動作し続けるためにスクリプトの変更が必要になる場合がある、バージョン 1 からの「重要な」変更が含まれています。バージョン 2 の新機能と変更点のリストについては、「重要な変更 – AWS CLI バージョン 1 からバージョン 2 移行」を参照してください。

  • バージョン 1.x – 下位互換性のために使用できる AWS CLI の以前のバージョン。

このガイドの情報は、特定のバージョンだけに適用されることが明記されていない限り、両方のバージョンに適用されます。

AWS CLI は、最小限の設定で、任意のターミナルプログラムのコマンドプロンプトから、ブラウザベースの AWS マネジメントコンソール で提供される機能と同等の機能を実装するコマンドの実行を開始できます。

  • Linux シェルbashzshtcsh などの一般的なシェルプログラムを使用して、Linux または macOS でコマンドを実行します。

  • Windows コマンドライン – Windows で、PowerShell または Windows コマンドプロンプトでコマンドを実行します。

  • リモート – PuTTY や SSH などのリモートターミナルプログラムを通じて、または AWS Systems Manager を使用して、Amazon Elastic Compute Cloud (Amazon EC2) インスタンスでコマンドを実行します。

AWS マネジメントコンソール で使用できる AWS IaaS (infrastructure as a Service) の管理、運用、アクセスの全機能は、AWS API と CLI でも使用できます。AWS マネジメントコンソール で使用できる AWS IaaS の新しい機能およびサービスは、開始時、または開始から 180 日以内に、API と CLI からも使用できます。

AWS CLI では、AWS のサービスのパブリック API に直接アクセスできます。AWS CLI を使用してサービスの機能を調べ、シェルスクリプトを開発してリソースを管理できます。または、AWSSDK を使用して、他の言語でのプログラム開発で得た経験を活用することもできます。

低レベルの同等の API コマンドに加えて、複数の AWS サービスでは AWS CLI のカスタマイズを提供します。カスタマイズには、複雑な API によるサービスの使用を簡略化する高レベルのコマンドが含まれます。たとえば、Amazon Simple Storage Service (Amazon S3) のコマンドでは、使い慣れた構文を使用して aws s3 のファイルを管理できます。

例 Amazon S3 へのファイルのアップロード

aws s3 cp はシェルに類似したコピーコマンドを提供し、マルチパートアップロードを自動的に実行して、大きなファイルをすばやく復元力の高い方法で転送します。

$ aws s3 cp myvideo.mp4 s3://mybucket/

同じタスクを低レベルのコマンド (aws s3api で使用可能) で実行すると、はるかに多くの労力がかかります。

ユースケースによっては、AWS SDK のいずれか、または AWS Tools for PowerShell を使用することをお勧めします。

GitHub の aws-cli レポジトリで、AWS CLI のソースコードを表示 (およびフォーク) できます。GitHub でユーザーのコミュニティに参加して、フィードバックを提供したり、機能をリクエストしたり、独自の投稿を提出したりしてください。

例の使用

このガイドの例は、次の規則に従った形式となります。

  • プロンプト – コマンドプロンプトは通常、ドル記号にスペースを追加した形式 ($ ) で表示されます。Windows 固有のコマンドの場合、C:\> がプロンプトとして使用されます。コマンドを入力した場合はプロンプトを含めないでください。

  • ディレクトリ – 特定のディレクトリからコマンドを実行する必要がある場合は、プロンプト記号の前にディレクトリ名が表示されます。

  • ユーザー入力 – コマンドラインに入力する必要があるコマンドテキストは、user input の形式となります。

  • 置き換え可能なテキスト – 選択したリソースの名前、またはコマンドに含める必要のある AWS のサービスによって生成された ID を含む変更可能なテキストで、replaceable text の形式となります。複数行のコマンドまたは特定のキーボード入力が必要なコマンドの場合、キーボードコマンドも置き換え可能なテキストとして表示できます。

  • 出力 – AWS サービスによって返される出力は、computer output の形式でユーザー入力の下に表示されます。

たとえば、次のコマンドには、ユーザー入力、置き換え可能なテキスト、出力が含まれています。

$ aws configure AWS Access Key ID [None]: AKIAIOSFODNN7EXAMPLE AWS Secret Access Key [None]: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY Default region name [None]: us-west-2 Default output format [None]: ENTER

この例を使用するには、コマンドラインに「aws configure」と入力し、Enter キーを押します。コマンドは aws configure です。このコマンドはインタラクティブであるため、AWS CLI はテキストの行を出力し、追加情報の入力が求められます。各アクセスキーを順に入力して、[Enter] キーを押します。その後、表示されている形式で AWS リージョン名を入力して Enter キーを押し、最後に Enter キーをもう一度押して出力形式の設定をスキップします。最後の Enter コマンドは、その行にユーザー入力がないため、置き換え可能なテキストとして表示されます。それ以外の場合は、暗黙的に示されます。

以下の例では、JSON 形式でサービスからの出力がある単純な非インタラクティブコマンドを示します。

$ aws ec2 create-security-group --group-name my-sg --description "My security group" { "GroupId": "sg-903004f8" }

この例を使用するには、コマンドのフルテキスト (プロンプトの後の強調表示されたテキスト) を入力し、Enter キーを押します。セキュリティグループの名前 my-sg は、置き換え可能です。表示されているようにグループ名を使用できますが、分かりやすい名前を使用する方がよいかもしれません。

注記

必ず置き換える必要のある引数 (AWS Access Key ID など) と、置き換えるべき引数 (group name など) はいずれも、置き換え可能な斜体のテキストとして表示されます。引数を置き換える必要がある場合は、例を示すテキストにその旨が記載されています。

JSON ドキュメントは中括弧を含めて出力です。CLI を TEXT または TABLE 形式で出力するように設定した場合、出力は異なる形式になります。JSON がデフォルトの出力形式です。

アマゾン ウェブ サービスについて

アマゾン ウェブ サービス(AWS)は、開発者がアプリケーションの開発時に利用できるデジタルインフラストラクチャサービスの集合体です。サービスには、演算能力、ストレージ、データベース、アプリケーション同期(メッセージングとキューイング)があります。AWS は従量制サービスモデルを採用しています。料金が発生するのは、ユーザー— (すなわちユーザーのアプリケーション)— が実際に使用したサービスの分のみです。また、AWS をプロトタイプと実験用のプラットフォームとして利用しやすくするために、AWS には無料利用枠も用意されています。この枠では、サービスを利用しても一定のレベル以下であれば無料です。AWS のコストと無料利用枠に関する詳細については、「無料利用枠による AWS のテスト」を参照してください。AWS アカウントを取得するには、AWS ホームページを開き、[サインアップ] をクリックします。