CTC 教育サービス
[IT研修]注目キーワード Python UiPath(RPA) 最新技術動向 Microsoft Azure Docker Kubernetes
みなさん、こんにちは。これまでの「今からはじめる Amazon Web Services」では、AWSの各種サービスについて1つずつ取り上げ、それらの機能や事例を紹介してきました。今回は、AWSサービスそのものではなく、AWSサービスをコマンドラインから操作できる「AWS コマンドラインインターフェイス(AWS CLI)」を紹介します。
AWS CLIは、AWSサービスを管理するための統合ツールで、コマンドラインからAWSサービスを制御することができるものです。制御を自動化するスクリプトを作成することもできます。
CLIは、MacおよびLinuxのほか、Windowsへもインストールすることができます。AWS公式サイトのAWS コマンドラインインターフェイスのページから、Windows用インストール媒体をダウンロードすることができます。
ここでは、Macへのインストール方法について説明します。
1. pipをインストールします
Pythonのパッケージ管理システムである `pip` をインストールします。インストールには `easy_install` を使えばよいでしょう。
$ sudo easy_install pip
2. AWS CLIをインストールします
先ほどインストールした `pip` を使って、`awscli` をインストールします。
$ sudo pip install awscli
ただし、OS X EI Captionでは、以下のようなエラーが出てインストールに失敗してしまいます。
Installing collected packages: six, python-dateutil, docutils, botocore, s3transfer, colorama, awscli Found existing installation: six 1.4.1 DEPRECATION: Uninstalling a distutils installed project (six) has been deprecated and will be removed in a future version. This is due to the fact that uninstalling a distutils project will only partially uninstall the project. Uninstalling six-1.4.1: Exception: Traceback (most recent call last):
これは、既に `six` が存在していることが原因ですので、以下のようにすることでインストールすることができます。
$ sudo pip install awscli --upgrade --ignore-installed six
「Successfully installed」と表示されれば成功です。CLIのバージョンを確認してみましょう。
$ aws --v
3. AWS CLIの設定をします
CLIからAWSにアクセスできるようにします。以下のコマンドを入力すると認証情報と設定ファイルが作成されます。
$ aws configure
以下の4つの入力が求められます。
AWS Access Key ID [None]: AWS Secret Access Key [None]: Default region name [None]: Default output format [None]:
- `AWS Access Key ID` と `AWS Secret Access Key` は、セキュリティ認証情報ページの「アクセスキー(アクセスキーIDとシークレットアクセスキー)」から取得できます。
- `Default region name` はデフォルトリージョンです。東京の場合は `ap-northeast-1` を入力します。
- `Default output format` はコマンド出力結果の表示形式です。`json` `table` `text` の3つのいずれかを入力します。
ちなみに、設置した値は `~/.aws` に保存されます。
CLIの基本的な構文は以下です。
$ aws [オプション] <サービス> <アクション> [パラメータ]
例えば、AWSの代表的なサービスであるEC2とS3では、以下のように使うことができます。
1. EC2
# インスタンス一覧を表示 $ aws ec2 describe-instances # インスタンスを作成 $ aws ec2 run-instances --image-id xxxxx --min-count 1 --max-count 1 # インスタンスを起動・停止・再起動 $ aws ec2 start-instances --instance-ids i-xxxxxxxx $ aws ec2 stop-instances --instance-ids i-xxxxxxxx $ aws ec2 reboot-instances --instance-ids i-xxxxxxxx
2. S3
# S3バケット一覧を表示 $ aws s3 ls # ローカルファイルをS3にコピーする $ aws s3 cp hoge.txt s3://fuga/piyo/ # ローカルディレクトリ内のファイルを再帰的にS3に移動する $ aws s3 mv foo/ s3://fuga/bar/ --recursive
今回は、AWS CLIを紹介しました。CLIには非常に多くの機能が備わっています。詳しくは、AWSコマンドラインインターフェイスのドキュメントを参照してみてください。今回は簡単なコマンドのみを紹介しましたが、AWSをコマンドラインから操作できるようになることは運用を楽にする第一歩です。みなさんもぜひ活用してみてください。
[IT研修]注目キーワード Python UiPath(RPA) 最新技術動向 Microsoft Azure Docker Kubernetes