AWS CLIとは、コマンドラインシェルでコマンドを使用してAWSサービスとやり取りするためのツールです。今回は、Amazon Linux 2のインスタンスを初めて起動した後に、CLIをインストールする想定で作業します。

CLIのインストール

yumをアップデート

$ sudo yum -y update

Pythonとpipがインストール済みか確認

$ python --version
Python 2.7.14
$ pip --version
-bash: pip: コマンドが見つかりません

pipのインストール

$ sudo yum -y install python-pip

awscliのインストール

$ sudo pip install awscli

awsのバージョン確認

$ aws --version
aws-cli/1.16.102 Python/2.7.14 Linux/4.14.104-95.84.amzn2.x86_64 botocore/1.12.92

これでCLIをインストール出来たことが確認出来ました。

AWS CLIにAWSのアカウント情報を紐付ける

AWSのアカウント情報を紐付けると、コマンドラインからAWSにアクセス出来るようになります。

アクセスキーIDとシークレットアクセスキーの確認

AWS CLIにAWSのアカウント情報を紐付けるには、AWSマネジメントコンソールからアクセスキーIDとシークレットアクセスキーを確認する必要があります。手順は以下のとおりです。

1.以下のAWSマネジメントコンソールのURL(セキュリティ認証ページ)にアクセスします。
https://console.aws.amazon.com/iam/home?#/security_credentials

2.「Continue to Security Credentials(セキュリティ認証情報に進む)」をクリックします。
aws-amazonlinux2-cli

3.「アクセスキー (アクセスキー ID とシークレットアクセスキー)」をクリックします。
aws-amazonlinux2-cli1

4.「新しいアクセスキーの作成」をクリックします。
aws-amazonlinux2-cli2

5.アクセスキーIDとシークレットアクセスキーを確認します。「アクセスキーを表示」をクリックします。
aws-amazonlinux2-cli3
この記事ではアクセスキーIDとシークレットアクセスキーは、以下の文字列として作業を進めます。

  • アクセスキー ID:hoge
  • シークレットアクセスキー:huga

認証情報と設定ファイルの作成

次のコマンド使い、認証情報と設定ファイルの作成を行います。「AWS Access Key ID」と「AWS Secret Access Key」は、先ほど確認したキーです。

$ aws configure
AWS Access Key ID [None]: hoge
AWS Secret Access Key [None]: huga
Default region name [None]: us-east-2
Default output format [None]: json

適切なDefault region nameは、以下からご確認ください。
AWS のリージョンとエンドポイント

確認

作成したファイルの確認

設定が終わると~/.awsディレクトリに認証情報(credentials)と設定ファイル(config)が作成されています。

$ ll ~/.aws
合計 8
-rw------- 1 ec2-user ec2-user  43  4月 12 06:12 config
-rw------- 1 ec2-user ec2-user 116  4月 12 06:12 credentials
$ cat ~/.aws/config
[default]
output = json
region = us-east-2

「EC2」「S3」のサービス確認

awsで既に「EC2」や「S3」などのサービスを利用している場合、以下のコマンドで確認出来ます。

EC2を利用している場合

$ aws ec2 describe-instances
{
    "Reservations": [
        {
            "Instances": [
                {
                    "Monitoring": {
                        "State": "disabled"
                    }, 
...

S3を利用している場合

$ aws s3 ls
2019-04-08 09:19:27 chida-test000

以上です。

参考

CentOSにAWS CLIをインストールする
AWS CLIのインストールから初期設定メモ
【AWS】CLIの初期設定について(認証情報とコマンド補完)