Command Line
AWS CLIの使い方は?インストールから使用方法まで解説!
アンドエンジニア編集部
2021.06.11
この記事でわかること
AWS CLIはAWSサービス管理の統合ツールです
AWS CLIで作業手順をスクリプト化し、運用自動化や作業品質の均一化が図られます
AWS CLIはほとんどのAWSサービスで利用可能のため生産性向上が期待できます

AWS CLIとは?

AWS Command Line

AWS CLIとは、AWS コマンドラインインターフェイス(Command Line Interface)の略で、AWSサービス管理の統合ツールを指します。AWS CLIを活用することで、AWSの管理作業が一層効率的に進められるでしょう。
参考:AWS コマンドラインインターフェイス

CLIのメリット・デメリットは?

CLIのメリットは、運用管理における作業手順の標準プロセス化が可能なことです。具体的には、作業の操作をコマンドラインに記述し実行できますので、スクリプト化が可能となります。スクリプト実行による作業品質の均一化が可能です。さらに、複数の作業手順をスクリプト実行することで、運用管理の自動化が期待できます。

CLIのデメリットとしては、詳細なオプション含む手続きを指定する必要があるので、AWSサービスの深い知識が求められることです。そのため初心者には利用のハードルが高いと言えるでしょう。

GUIのメリット・デメリットは?

コマンドラインインターフェイスの操作であるCLIに対して、グラフィカルユーザインターフェース(Graphical User Interface)の操作環境として「GUI」があります。AWSではAWSマネジメントコンソールが該当します。GUIのメリットは、管理操作を感覚的に操作できるため初心者でも対応しやすいことがあります。

GUIのデメリットとしては、処理の結果が全て得られるわけではないため、詳細な状況確認が難しいことがあります。加えて、人間のGUI操作を伴うので自動化しにくい点が挙げられます。

AWS CLIの動作環境は?

AWS CLIは、以下の動作環境を想定しています。

LinuxやmacOS
 bash・zsh・tcshのようなシェルからコマンド起動が可能です。
Windows
 WindowsのコマンドプロンプトやPowerShellが利用可能となります。
リモート操作
 PuTTY・SSHのリモートターミナルやAWS Systems Managerを用いてAmazon Elastic Compute Cloud(Amazon EC2)のインスタンス操作が可能です。

AWS CLIの対応AWSサービスは?

AWS CLIは、AWSマネジメントコンソールと同等の管理作業を提供します。対応サービスは、2021年5月現在サービスオプションを含めて271のAWSサービスに対応します。

Amazon Elastic Compute Cloud(Amazon EC2)はコンピューティングサービスですので、サーバー用途に用います。サーバー運用管理者はCLIを用いて運用手順を作成することが多いので、AWS CLIはAmazon EC2の運用に最適と言えるでしょう。

AWS CLIの使い方は?

usage

AWS CLIはインストール・設定完了後、必要とされるAWS管理に使用可能です。操作方法は、以下の構文で実行します。
aws [オプション] <コマンド> <追加コマンド> [引数]
参考:AWS CLI Command Reference

各AWSサービスへの接続や管理については、以下のリンクに詳細が記載されています。詳細についてはお使いのAWSサービスのリンクをご確認ください。
参考:AWS CLI Command Reference Available Service

AWS CLIで指定するオプションは?

AWS CLIのオプションは、以下の指定が可能です。必要に応じてオプション指定が可能です。

--debug(boolean)
 デバッグモードでの実行
--endpoint-url(string)
 コマンドのデフォルトURLの変更
--no-verify-ssl(boolean)
 AWSサービスと通信時のSSL証明書の確認をしない
--no-paginate(boolean)
 自動ページ割をしない
--output(string)
 コマンド出力をjson/text/tableに指定
--query(string)
 データをJMESPathでフィルター
--profile(string)
 資格確認のプロファイルを指定
--region(string)
 使用リージョンを指定
--version(string)
 ツールバージョンを表示
--color(string)
 出力のカラー指定 on/off/auto
--no-sign-request(boolean)
 匿名の認証情報を使用
--ca-bundle(string)
 SSL認証で用いるCA認証バンドルを指定
--cli-read-timeout(int)
 ソケットのリードタイムアウト 0でタイムアウトなし
--cli-connect-timeout(int)
 ソケットの接続タイムアウト 0でタイムアウトなし

AWS CLIのインストール方法は?

AWS CLIのDocker・Linux・MacOS・Windowsのインストール手順の概要は、次の通りです。

Docker
 DockerHubからamazon/aws-cli Dockerイメージを実行します。
Linux
 Linux x86(64bit)/Linux ARMそれぞれ対応するawscliv2.zipを、curlコマンドでインストールします。
MacOS
 AWSCLIV2.pkgを、curlコマンドでインストールします。インストールするユーザに応じ、sudoコマンドを指定します。
Windows
 msiexecコマンドで、AWSCLIV2.msiをインストールします。

詳細なインストール方法は、以下のリンクに記載されています。Docker・Linux・MacOS、Windowsのインストール手順について説明しているので、ぜひご活用ください。
参考:AWS CLI バージョン 2 のインストール、更新、およびアンインストール

AWS CLIの設定方法は?

AWS CLIはインストール完了後に初期設定が必要です。設定完了後に、用途に応じたAWS CLIの活用が可能です。AWS CLIの設定は多岐に渡りますので、最初に[AWS CLI 設定の基本]のページに従い設定を進め、必要に応じて設定調整するのが良いでしょう。
参考:AWS CLI の設定

ここでは、[AWS CLI 設定の基本]のページでカバーされるAWS CLIの設定について概要を説明します。最初の設定方法として、aws configureを活用することをお勧めします。aws configureコマンドで、アクセスキーID・シークレットアクセスキー・AWSリージョン・出力形式一括設定します。その後、修正が必要な項目を別途設定していきます。設定項目は以下の通りです。

アクセスキーID
 AWS Identity and Access Management(IAM)の認証と認可で用いるIAMユーザアクセスIDです。
シークレットアクセスキー
 AWS Identity and Access Management(IAM)のアカウント認証情報でアクセスキー作成時に使います。
AWSリージョン
 AWSの地域単位で、通常最寄りのAWSリージョンとします。
出力形式
 結果の出力形式でデフォルトでjsonとなります。その他yaml/yaml-stream/text/tableが指定可能です。

その後aws configureコマンドでプロファイル名を指定し、AWS CLIの設定を保存します。

AWS CLIの指定方法による優先順位は?

AWS CLI実行時には、システム変数・ユーザー環境変数・ローカル AWS 設定ファイル・コマンドラインに設定の追加指定が可能です。この追加指定には指定優先順位があり、以下の順で指定内容が設定されます。

(1)コマンドラインのオプション
(2)環境変数
(3)CLI 認証情報ファイル
(4)CLI 設定ファイル
(5) コンテナ認証情報
(6)インスタンスプロファイルの認証情報
参考:AWS CLI 設定の基本

AWSのaws-shellとは?

aws-shellとは、AWS CLIの機能をシェルに組み込んだものです。コマンドオートコンプリート機能や動的インラインドキュメント機能を有し、さらに生産性が高まることが期待されています。
参考:AWS Developer Blog Super-Charge Your AWS Command-Line Experience with aws-shell

AWS CLIを活用し運用自動化に向けて生産性を高めよう

productivity

AWSは、豊富なサービスに加えて管理のしやすさに定評があります。AWS CLIはAWSサービス管理を運用者に依存しないスクリプト実行を提供しますので、さらなる作業の均一化が可能です。AWS CLIを用い、手順化することで運用生産性が高まります。ぜひAWS CLIを業務に活用していきましょう。

Twitterをフォローしよう!
この記事をシェア
Twitter
Facebook
LINE
Hatena
アンドエンジニアの公式LINEができました! ピッタリの記事や役立つ情報が届きます!

編集部オススメコンテンツ

Sponsored
友達追加はこちらから!
アンドエンジニア編集部
Sponsored
この記事をシェア
Twitter
Facebook
LINE
Hatena
アンドエンジニアの公式LINEができました! ピッタリの記事や役立つ情報が届きます!

編集部おすすめコンテンツ

Sponsored
友達追加はこちらから!
アンドエンジニア編集部
Sponsored