AWS-CLIセットアップ手順 ( CentOS5, CentOS6, AmazonLinux, CentOS7 )

AWSの各種サービスをShellから操作するには、AWS-CLIをインストールする必要があります。

※予めIAMで使用したいサービスの操作権限ポリシーを割り当てたIAMユーザを作成しておき、クレデンシャル情報を用意する必要があります。また、よりセキュアに利用するのであれば本ページの内容ではなくロールによる操作権限付与をおこなう方がベターです。

AmazonLinuxでの設定

1.クレデンシャル登録

既に認証ファイル(.awsディレクトリ)が存在していないことを確認します。(rootユーザでの操作)

[root@tagutagu-aws ~]# ls -a /root/.
./                 .bash_history      .bash_profile      .cshrc             .mysql_history     .rediscli_history  .ssh/              .viminfo
../                .bash_logout       .bashrc            .lesshst           .pki/              .rnd               .tcshrc

初期設定を行うコマンドを実行します。

[root@tagutagu-aws ~]# aws configure
AWS Access Key ID [None]: アクセスキーを入力
AWS Secret Access Key [None]: シークレットキーを入力
default region name [None]: ap-northeast-1 ←ap-northeast-1と入力
Default output format [None]: text ←textと入力

2.正しくインストールできたか確認

AWSコマンドが実行できることを確認します。

[root@tagutagu-aws ~]# aws --version
aws-cli/1.7.14 Python/2.7.9 Linux/3.14.35-28.38.amzn1.x86_64

s3のバケット一覧表示コマンドを表示してみます。

[root@tagutagu-aws ~]# aws s3 ls
2015-08-19 11:25:37 api-logs-tagutagu
2015-08-16 08:40:40 elasticbeanstalk-ap-northeast-1-xxxxxxxxxx

CentOS6,CentOS7での設定

1.必要なツールをインストール

既に認証ファイル(.awsディレクトリ)が存在していないことを確認します。(rootユーザでの操作)

[root@tagutagu-aws ~]# ls -a /root/.
./                 .bash_history      .bash_profile      .cshrc             .mysql_history     .rediscli_history  .ssh/              .viminfo
../                .bash_logout       .bashrc            .lesshst           .pki/              .rnd               .tcshrc

必要なリポジトリ・ソフトウェアをインストールします。

[root@tagutagu-aws ~]# yum install -y epel-release
[root@tagutagu-aws ~]# yum install -y python-setuptools
[root@tagutagu-aws ~]# easy_install pip
[root@tagutagu-aws ~]# pip install awscli
[root@tagutagu-aws ~]# echo 'complete -C /usr/bin/aws_completer aws' > /etc/profile.d/aws-cli.sh

2.クレデンシャル登録

[root@tagutagu-aws ~]# aws configure
AWS Access Key ID [None]: アクセスキーを入力
AWS Secret Access Key [None]: シークレットキーを入力
default region name [None]: ap-northeast-1 ←ap-northeast-1と入力
Default output format [None]: text ←textと入力

3.正しくインストールできたか確認

AWSコマンドが実行できることを確認します。

[root@tagutagu-aws ~]# aws --version
aws-cli/1.7.14 Python/2.7.9 Linux/3.14.35-28.38.amzn1.x86_64

s3のバケット一覧表示コマンドを表示してみます。

[root@tagutagu-aws ~]# aws s3 ls
2015-08-19 11:25:37 api-logs-tagutagu
2015-08-16 08:40:40 elasticbeanstalk-ap-northeast-1-xxxxxxxxx

CentOS5へのインストール

1.必要なツールをインストール

既に認証ファイル(.awsディレクトリ)が存在していないことを確認します。

[root@tagutagu-aws ~]# ls -a /root/.
./                 .bash_history      .bash_profile      .cshrc             .mysql_history     .rediscli_history  .ssh/              .viminfo
../                .bash_logout       .bashrc            .lesshst           .pki/              .rnd               .tcshrc

必要なリポジトリ・ソフトウェアをインストールします。

[root@tagutagu-aws ~]# yum install python-setuptools
[root@tagutagu-aws ~]# easy_install pip
[root@tagutagu-aws ~]# yum install epel-release
[root@tagutagu-aws ~]# yum install python26
[root@tagutagu-aws ~]# wget https://s3.amazonaws.com/aws-cli/awscli-bundle.zip
[root@tagutagu-aws ~]# unzip awscli-bundle.zip
[root@tagutagu-aws ~]# cd awscli-bundle
[root@tagutagu-aws ~]# vi ./install
[root@tagutagu-aws ~]# ./install -i /usr/local/aws -b /usr/local/bin/aws

2.クレデンシャル登録

[root@tagutagu-aws ~]# aws configure
AWS Access Key ID [None]: アクセスキーを入力
AWS Secret Access Key [None]: シークレットキーを入力
default region name [None]: ap-northeast-1 ←ap-northeast-1と入力
Default output format [None]: text ←textと入力

3.正しくインストールできたか確認

AWSコマンドが実行できることを確認します。

[root@tagutagu-aws ~]# aws --version
aws-cli/1.7.14 Python/2.7.9 Linux/3.14.35-28.38.amzn1.x86_64

s3のバケット一覧表示コマンドを表示してみます。

[root@tagutagu-aws ~]# aws s3 ls
2015-08-19 11:25:37 api-logs-tagutagu
2015-08-16 08:40:40 elasticbeanstalk-ap-northeast-1-xxxxxxxxxxxx

Clientエラーが表示される場合の対処

AWS側サーバとローカルサーバの時刻ずれが大きい場合に以下エラーが発生。

[root@tagutagu-aws ~]# aws s3 ls
A client error
 (RequestTimeTooSkewed) occurred when calling the ListBuckets operation:
 The difference between the request time and the current time is too 
large.

ntpdateで時刻を修正して再チャレンジ

[root@tagutagu-aws ~]# ntpdate ntp.nict.jp

 

Copyright © 2021 たぐたぐ.com. All rights reserved.