COLUMN
AWS CLIとは?メリット・インストール手順・基本的な使い方
AWSなどクラウドに関するお役立ち情報やイベント情報などをNTT東日本のクラソルメールマガジンにて毎週配信しております。ぜひご登録いただき、今後のクラウド活用の参考にしていただければと思います。
「AWS CLI(AWS Command Line Interface)」とは、AWSサービスをコマンドライン(文字入力)から操作・管理するためのツールです。
AWS CLIでAWSの複数サービスを統合・管理することで、一連の作業を自動化するなど作業工数を削減できることから、業務効率化につながります。
そこで本記事では、AWS CLIのメリットやセットアップ方法、基本的な使い方について解説します。
本記事を読むことで、AWSを効率的に運用できるAWS CLIについて理解を深められるだけでなく、作業効率化につながる運用を始められるでしょう。
目次:
- 1.AWS CLI(コマンドラインインターフェイス)とは?
- 2.AWS CLIを利用するメリット
- 2-1.AWSリソースの管理や操作を自動化できる
- 2-2.自社独自のワークフローに柔軟に統合できる
- 2-3.AWSの各サービスとの連携が容易にできる
- 2-4.AWSアカウントを持つすべてのユーザーが無料で利用できる
- 3.AWS CLIのインストール・セットアップ手順
- 3-1.1.AWS CLIをインストール
- 3-2.2.IAMユーザーを作成
- 3-3.3.コンフィグを設定
- 4.AWS CLIの基本的な使い方
- 4-1.【ケース1】EC2インスタンスを起動する
- 4-2.【ケース2】Amazon S3を操作する
- 5.AWS CLIを利用したAWSサービス管理の自動化ならNTT東日本にご相談ください
- AWS CLIについてまとめ
1.AWS CLI(コマンドラインインターフェイス)とは?
AWS CLIとは、AWSリソース(AWSのサービス)をコマンドラインで操作するための統合管理ツールです。コマンドラインとは、コンピューターに対して文字で指示を送り、操作することです。
マウスでクリックなどの操作をする「GUI(グラフィカルインターフェイス)」と比べて直感的な操作は難しいものの、AWS CLIを利用することで作業の大幅な効率化につながります。
GUIの場合は視覚的に操作内容を理解しやすいため、知識がなくても操作ができるというメリットはあるものの、コマンドラインの場合は入力自体を自動化してしまえば、業務全体を自動化することも可能です。
AWSなどクラウドに関するお役立ち情報やイベント情報などをNTT東日本のクラソルメールマガジンにて毎週配信しております。ぜひご登録いただき、今後のクラウド活用の参考にしていただければと思います。
2.AWS CLIを利用するメリット
AWS CLIを利用するメリットは以下の通りです。
- AWSリソースの管理や操作を自動化できる
- 自社独自のワークフローに柔軟に統合できる
- AWSの各サービスとの連携が容易にできる
- AWSアカウントを持つすべてのユーザーが無料で利用できる
それぞれ具体的に解説します。
2-1.AWSリソースの管理や操作を自動化できる
AWS CLIの最大のメリットは、AWSリソースの管理や操作を自動化できる点です。
AWS CLIはスクリプトを入力することで、これまでGUIで実施していた直感的な操作をコマンド入力で進められます。これにより、人の手で作業をする必要がなくなり、AWSリソースの管理・操作を自動化できます。
AWS CLIによる作業の自動化は業務効率化につながるだけでなく、作業の人的ミスの防止や、作業担当者が必要なくなることからコストの削減も期待できるでしょう。
2-2.自社独自のワークフローに柔軟に統合できる
AWS CLIでは、さまざまなAWSリソースを統合・管理できるため、独自のワークフローを構築できます。
たとえば、システム管理や運用、ツールの監視や異常値が発生した場合のアラートなど、コマンドプロンプトを入力することで自社に合ったワークフローを構築可能です。
また、AWS CLIは複数のプラットフォーム(Linux、macOS、Windowsなど)で利用できるため、利用者の端末による機能の制限等はありません。
2-3.AWSの各サービスとの連携が容易にできる
AWSリソースは基本的に連携可能ですが、AWS CLIを利用することで、一連のプログラムの動作としてスクリプトを組み込み、業務の連携と自動化を実現できます。
複数のAWSリソースを利用しており、GUIによるサービス間の行き来に時間がかかり、作業効率が悪いと感じているユーザーにとっては、大幅な業務効率化につながるでしょう。
2-4.AWSアカウントを持つすべてのユーザーが無料で利用できる
AWSアカウントを持つユーザーであれば、AWS CLIを含め、AWSリソースを基本的に初期費用無料で利用できます。
従量課金制のサービスモデルが採用されており、お試し感覚でサービスを利用できるため、「効果が出たら本格的に導入する」ということも可能です。
AWSなどクラウドに関するお役立ち情報やイベント情報などをNTT東日本のクラソルメールマガジンにて毎週配信しております。ぜひご登録いただき、今後のクラウド活用の参考にしていただければと思います。
3.AWS CLIのインストール・セットアップ手順
AWS CLIを使うためには、専用のファイルをインストールし、セットアップをしなければなりません。
インストールからセットアップまでの手順は以下の通りです。
- AWS CLIをインストール
- IAMユーザーを作成
- コンフィグを設定
手順に沿って詳しく解説します。
3-1.1.AWS CLIをインストール
AWS CLIの最新バージョンは「AWS CLI バージョン2」が提供されています。
①Windowsの場合
Windows用のAWS CLI MSIインストーラをダウンロードします。
ダウンロードしたインストーラを実行します。
ガイドに従って「next」や「Install」をクリックしてください。AWS CLIをインストールする際、複雑な設定は必要ないため、流れに沿ってインストールを実行すれば問題ありません。
インストーラを利用する場合、デフォルトで「 /usr/local/aws-cli」にファイルがインストールされます。ファイルの所在がわからない場合は、タスクバーの検索ボックスでファイル名を入力してみましょう。
②Linuxの場合
curlコマンドを使ってAWS CLIインストーラをダウンロードします。
Linux x86(64bit)の場合
$ curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
Linux ARMの場合
$ curl "https://awscli.amazonaws.com/awscli-exe-linux-aarch64.zip" -o "awscliv2.zip"
unzipコマンドでzipファイルを解凍します。
$ unzip awscliv2.zip
インストールプログラムを実行します。
$ sudo ./aws/install
以下のコマンドを使用して、インストールを確認します。
$ aws –version
aws-cli/2.10.0 Python/3.11.2 Linux/4.14.133-113.105.amzn2.x86_64 botocore/2.4.5
3-2.2.IAMユーザーを作成
次に、AWS CLIを使用する際に必要なIAM(Identity and Access Management)ユーザーを作成する必要があります。IAMユーザーを作成することで、AWSリソースを安全に利用できるようになります。
IAMユーザーの作成方法は次の通りです。
AWSマネジメントコンソールにサインイン
Identity and Access Management (IAM)サービス画面に移動
左側メニューの「ユーザー」を選択し「ユーザーの作成」ボタンを押下
ユーザー名を設定後に「次へ」ボタンを押下
「許可の設定」ページで「許可のオプション」の選択肢から「ユーザーをグループに追加」を選択し「グループの作成」ボタンを押下
ユーザーグループ名の設定後、「AdministratorAccess」にチェックを入れて「ユーザーグループを作成」ボタンを押下
グループ作成後は作成したユーザーグループにチェックを入れ「次へ」ボタンを押下
「確認して作成」ページで設定内容に問題ないことを確認したら「ユーザーの作成」ボタンを押下しユーザーを作成
ユーザー一覧から作成したユーザーを選択
今回作成したユーザーの詳細情報画面から「アクセスキーを作成」を押下
ユースケースの一覧から「コマンドラインインタフェース(CLI)」を選択
画面右下の「次へ」ボタンを押下
「アクセスキー」と「シークレットアクセスキー」が発行されるので、どちらも必ず控えておくこと(今後これらのキーを確認することは出来なくなるため、キーを忘れてしまうと再度IAMユーザーを作成することになるので忘れずに記録を)
アクセスキーを記録したら「完了」ボタンを押下し、アクセスキーを作成する。
3-3.3.コンフィグを設定
AWS CLIにアクセスするためのIAMユーザーを作成できたら、インストール済みのAWS CLIを操作します。
まずは、「コマンドプロンプト」か「PowerShell」を起動し、「aws configure」をコマンドとして実行します。
C:¥>aws configure
コマンド実行後に対話形式でアクセスキーIDとシークレットアクセスキーを入力するよう要求されるので、先ほど入手したキーを入力します。続いてリージョンや表示するフォーマットを入力(ここではap-northeast-1(東京)、jsonと入力したケースを紹介)、enterキーを押せば設定は完了です。
C:¥>aws configure
AWS Access Key ID [None]: *************ID
AWS Secret Access Key [None]: ******************************KEY
Default region name [None]: ap-northeast-1
Default output format [None]: json
尚、ここまでの設定については「%UserProfile%\.aws」というファイルに保存されています。ファイルを編集すれば設定の変更が可能です。
4.AWS CLIの基本的な使い方
ここからはAWS CLIの基本的な使い方について解説します。
AWS CLIでは、コマンドを入力するだけでAWSリソースの操作が可能になりますが、AWSリソースの初心者はGUIで操作したほうが効率的に運用できる場合があります。
AWS CLIのメリットを活かしたいのであれば、AWSリソースの操作を理解した上で利用するようにしましょう。
4-1.【ケース1】EC2インスタンスを起動する
AWS CLIとEC2インスタンスを連携させることで、コマンドを入力するだけでEC2インスタンスを起動できます。
まずは、EC2で作成済みのAMI(仮想マシンイメージ)を利用し、サーバーを起動します。起動の際に利用するコマンドは以下の通りです。
# インスタンスの情報取得
aws ec2 describe-instances --region "お使いのリージョン"
出力例
C:¥>$ aws ec2 describe-instances –-region ap-northeast-1
{
"Reservations": [
{
"Groups": [],
"Instances": [
{
"AmiLaunchIndex": 0,
"ImageId": "ami-9999999",
"InstanceId": "i-99999999999999999",
"InstanceType": "t2.micro",
"KeyName": "KEY_Name",
"LaunchTime": "2024-02-18T14:00:00+00:00",
"Monitoring": {
"State": "enabled"
},
"Placement": {
"AvailabilityZone": "ap-northeast-1a",
"GroupName": "",
"Tenancy": "default"
}
以下略
ここで出力される「ImageId」と記載された部分をコピーしておきましょう。ImageIdはAWS CLIからEC2を起動する際に必要となります。
尚、ImageIdはAMI IDと同じ内容ですのでAWSマネジメントコンソールからEC2を選択し、インスタンス一覧から該当のインスタンスを選択し、表示されたAMI IDをコピーすることで取得できます。
次に、以下のコマンドを入力しEC2インスタンスを起動します。
# インスタンスの起動
aws ec2 run-instances --image-id イメージID --count 起動数 --instance-type インスタンスタイプ --key-name キーペア名 --region リージョン
実行例
C:¥>$ aws ec2 run-instances --image-id ami-xxxxxxxx --count 1 --instance-type t2.micro --key-name KEY_Name –-region ap-northeast-1
{
"OwnerId": "123456789012",
"ReservationId": "r-5875ca20",
"Groups": [
{
"GroupName": "my-sg",
"GroupId": "sg-903004f8"
}
],
"Instances": [
{
"Monitoring": {
"State": "disabled"
},
"PublicDnsName": null,
"Platform": "windows",
"State": {
"Code": 0,
"Name": "pending"
},
"EbsOptimized": false,
"LaunchTime": "2024-02-18T02:42:39.000Z",
"PrivateIpAddress": "10.0.1.114",
"ProductCodes": [],
"VpcId": "vpc-1a2b3c4d",
"InstanceId": "i-5203422c",
"ImageId": "ami-173d747e",
"PrivateDnsName": "ip-10-0-1-114.ec2.internal",
"KeyName": "MyKeyPair",
"SecurityGroups": [
{
"GroupName": "my-sg",
"GroupId": "sg-903004f8"
}
],
以下略
上記の「イメージID」には、サーバーの確認をした際に表示された「ImageId」を入力します。これでAWS CLIからEC2インスタンスを起動できるようになりました。
4-2.【ケース2】Amazon S3を操作する
AWS CLIを使用してAmazon S3のバケットやオブジェクトを操作することも可能です。ファイルのアップロード、ダウンロード、リスト表示など、S3の基本的な操作をコマンドで実行できます。
4-2-1.S3を操作するコマンド一覧
Amazon S3を操作するためのコマンドは多岐に渡ります。以下は、S3の操作に関する主なコマンドの一覧です。
機能 | コマンド |
---|---|
バケットの一覧表示 | aws s3 ls |
バケットの内容表示 | aws s3 ls s3://{バケット名}/{パス} |
バケットの作成 | aws s3 mb s3://{バケット名} |
バケットを削除 | aws s3 rb s3://{バケット名} |
バケットの内容をローカルのフォルダと同期 | aws s3 sync {フォルダパス} s3://{バケット名}/{パス} |
ローカルのファイルをバケットにコピー | aws s3 cp {ファイルパス} s3://{バケット名}/{パス} |
ローカルのファイルをバケットに移動 | aws s3 mv {ファイルパス} s3://{バケット名}/{パス} |
バケットのファイルを削除 | aws s3 rm s3://{バケット名}/{ファイルパス} |
バケットのフォルダを削除 | バケットのフォルダを削除 |
これらのコマンドを使用することで、Amazon S3のさまざまな操作をコマンドラインから実施できます。
上記はコマンドの一部ですので、さらに詳しくコマンド内容を知りたい方は公式サイトをご確認ください。
参考:Use high-level (s3) commands with the AWS CLI
AWSなどクラウドに関するお役立ち情報やイベント情報などをNTT東日本のクラソルメールマガジンにて毎週配信しております。ぜひご登録いただき、今後のクラウド活用の参考にしていただければと思います。
5.AWS CLIを利用したAWSサービス管理の自動化ならNTT東日本にご相談ください
AWS CLIはコマンド入力による業務効率化が見込めるため、うまく活用できれば新たなツールを導入することなく、低コストで自動化を進められます。
ただ、ワークフローの構築や業務自動化の設定が複雑で、知識がなければうまく業務に取り込むことはできません。AWS CLIを利用したAWSリソースの管理の自動化をめざすのであれば、ぜひ一度NTT東日本にご相談ください。
NTT東日本では、企業のDX・クラウド化のプロからAWSに精通している担当者まで在籍しており、幅広く皆さまの課題解決に対応できます。たとえば「コストの相談をしたい」「自動化によるメリットを知りたい」「効果を知った上で導入するか検討したい」という方のご相談に対応しております。
「そもそも自社でAWS CLIを利用すべきなのか」といったご相談にも担当者がお答えしますので、ぜひ一度お問い合わせください。
AWS CLIについてまとめ
AWS CLIとは、AWSリソース(AWSのサービス)をコマンドラインで操作するための統合管理ツールです。コマンドラインとは、コンピューターに対して文字で指示を送り、操作することです。
これまでのマウスクリックとキーボードを併用したGUIでの操作を、コマンドラインにすることで、業務の自動化や人的ミスの削減につなげられます。
AWS CLIを利用する場合は、AWS CLIページにアクセスし、専用のファイルをインストールする必要があります。その後、セットアップを進めればあらゆるAWSリソースをコマンドだけで起動・運用することが可能です。
ただし、セットアップからコマンドの設定、自動化のためのワークフロー構築はプロでなければ簡単に実施することはできません。
AWSの自動化を本格的に考えている方や「効果を知った上でAWS CLIによる自動化を検討したい」という方は、AWS導入支援の実績豊富なNTT東日本にご相談ください。
RECOMMEND
その他のコラム
相談無料!プロが中立的にアドバイスいたします
クラウド・AWS・Azureでお困りの方はお気軽にご相談ください。