AWSにはGUIで非常に使いやすいAWSコンソールが提供されていることから、コマンドでの操作を試したことがない方も多いのではないでしょうか。
本記事では、AWS CLIツールを利用したコマンドラインでのAWS操作についてご紹介していきます。
AWS CLIとは
AWS CLIは、コマンド操作でAWSサービスを利用するための統合ツールです。
AWSのサイトからダウンロードしてインストールすることで利用出来るようになります。
AWS CLIを使うメリット
AWS CLIを利用すれば、コンソール画面で手作業で行っていた操作を自動化出来るようになります。
GUI操作の方が初心者には分かりやすいですが、人力によるミスが発生する可能性も生まれるため、プログラムとして処理させてしまったほうが効率的なケースも少なくありません。
AWS CLIを利用すれば、繰り返し実施する作業をプログラムとして定義し、自動化させることも可能です。
AWS CLIをインストールしてみよう
では実際にAWS CLIをインストールして触っていきたいと思います。
本記事ではMac環境でコマンドを用いたインストール方法をご紹介していきます。
Windowsユーザーの方などは適宜読み替えて環境に合った方法でインストールしてください。
インストール
Macからの場合、ターミナルからbrewコマンドでインストールする方法が手軽です。
Homebrew確認
Homebrewがインストールされているかは下記コマンドで確認出来ます。
brew --version
筆者の環境ではHomebrewのバージョンが3.2.3であることが分かります。
$ brew --version Homebrew 3.2.3
Homebrewがインストールされていない場合、公式サイトトップページのコマンドをコピーして、ターミナルで入力しインストールしておいてください。
インストールコマンド
AWS CLIのインストールコマンドは下記を実行します。
brew install awscli
インストール出来たかを確認するのは下記コマンドを実行します。
aws --version
インストール出来ていれば、下記のような情報が表示されます。
$ aws --version aws-cli/2.2.22 Python/3.9.6 Darwin/20.5.0 source/arm64 prompt/off
AWS CLIを使ってみよう
実際にAWS CLIを使う手順について確認していきましょう。
アクセスキーの設定
AWS CLIの利用を開始するには「aws configure」コマンドでアクセスキーの設定を行う必要があります。
まずは「aws configure」のコマンドを実行します。
aws configure
実行すると対話形式でアクセスキーなどの情報が求められるので、画面の表示に従って入力していきます。
AWS Access Key ID [None]: XXXXX AWS Secret Access Key [None]: XXXXX Default region name [None]: ap-northeast-1 Default output format [None]: json
アクセスキーの生成方法
アクセスキーの生成は、まずコンソール画面から設定します。
まずはAWSのコンソール画面へログインしてください。
ヘッダーのアカウント名のプルダウンから「マイセキュリティ資格情報」を選択します。
「アクセスキー(アクセスキーIDとシークレットアクセスキー)」項目を選択し、「新しいアクセスキーの作成」ボタンをクリックします。
「アクセスキーを表示」でアクセスキーIDとシークレットアクセスキーが確認出来ます。
また「キーファイルのダウンロード」ボタンをクリックすれば、アクセスキーIDとシークレットアクセスキーをCSV形式で保存可能です。
CSV形式でのダウンロードは、ポップアップを閉じてしまうと同じアクセスキーを確認することが出来なくなってしまうので注意が必要です。
コマンド例
AWS CLIの設定が完了したので、動作確認のためにいくつかのコマンドを実行してみましょう。
正常に設定が完了していれば、下記のようなコマンドが利用出来るようになっています。
IAMユーザー一覧
$ aws iam list-users { "Users": [ { "Path": "/", "UserName": "ユーザー名", "UserId": "XXXXXX", "Arn": "arn:aws:iam::XXXXXXXXXXXX:user/ユーザー名", "CreateDate": "2021-07-26T14:43:52+00:00" } ] }
IAMグループ
$ aws iam list-groups { "Groups": [ { "Path": "/", "GroupName": "Admin", "GroupId": "XXXXX", "Arn": "arn:aws:iam::XXXXX:group/Admin", "CreateDate": "2021-07-26T14:42:52+00:00" } ] }
サブネット一覧
$ aws ec2 describe-subnets { "Subnets": [ { "AvailabilityZone": "ap-northeast-1d", "AvailabilityZoneId": "apne1-az2", "AvailableIpAddressCount": XXXX, "CidrBlock": "172.XX.XX.0/20", "DefaultForAz": true, "MapPublicIpOnLaunch": true, "MapCustomerOwnedIpOnLaunch": false, "State": "available", "SubnetId": "subnet-XXXXX", "VpcId": "vpc-XXXXXX", "OwnerId": "XXXXXXXXX", "AssignIpv6AddressOnCreation": false, "Ipv6CidrBlockAssociationSet": [], "SubnetArn": "arn:aws:ec2:ap-northeast-1:XXXXXXXXX:subnet/subnet-XXXXX" }, 省略 ] }
さいごに: AWS CLIを活用して処理の自動化を検討しよう
本記事では、AWS CLIのインストール方法から実際に利用するまでの初期設定についてご紹介してきました。
AWS CLIを利用することで、コマンドでAWSを操作出来るようになるため、処理を自動化しやすくなります。
AWSマネージメントコンソールのマウス操作も非常に使いやすいサービスですが、ぜひAWS CLIを使用したコマンド操作にもチャレンジしてみてください。
他にもコマンドラインからインストールする方法などが利用出来るため、お好みの方法でインストールしてください。