やさしいaws cli のインストール方法

2019-08-05

Linux + aws cli のはじめ方

準備

  • 今回は、Linux にaws cli をインストールして初期設定する方法をまとめます。
  • Linux環境は、Windows 10にインストールしたWindows Subsystem for Linuxを使用します。Windows Subsystem for Linuxのインストール方法は、下記の記事を参照ください。
  • aws cli のインストールにpipコマンドを使用します。Ubuntuにpipをインストールする方法は、下記の記事を参照ください。

aws cli インストール

  • pipコマンドを使用して、awscli パッケージをインストールします。
$ sudo pip install awscli
WARNING: The directory '/home/niikawa/.cache/pip/http' or its parent directory is not owned by the current user and the cache has been disabled. Please check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
WARNING: The directory '/home/niikawa/.cache/pip' or its parent directory is not owned by the current user and caching wheels has been disabled. check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
Collecting awscli
  Downloading https://files.pythonhosted.org/packages/da/c3/7bfd8a1a84f9ad2acc0fe048d5b685ccc1ba2d18a6c650f5baa1986a1880/awscli-1.16.179-py2.py3-none-any.whl (1.6MB)
     |????????????????????????????????| 1.6MB 449kB/s
Collecting s3transfer<0.3.0,>=0.2.0 (from awscli)
  Downloading https://files.pythonhosted.org/packages/16/8a/1fc3dba0c4923c2a76e1ff0d52b305c44606da63f718d14d3231e21c51b0/s3transfer-0.2.1-py2.py3-none-any.whl (70kB)
     |????????????????????????????????| 71kB 1.8MB/s
Requirement already satisfied: PyYAML<=5.1,>=3.10; python_version != "2.6" in /usr/lib/python3/dist-packages (from awscli) (3.12)
Collecting botocore==1.12.169 (from awscli)
  Downloading https://files.pythonhosted.org/packages/28/ac/a43d37f371f5854514128d7c54887176b8df3bc9925a25e5096298033f93/botocore-1.12.169-py2.py3-none-any.whl (5.5MB)
     |????????????????????????????????| 5.6MB 103kB/s
Requirement already satisfied: colorama<=0.3.9,>=0.2.5 in /usr/lib/python3/dist-packages (from awscli) (0.3.7)
Collecting docutils>=0.10 (from awscli)
  Downloading https://files.pythonhosted.org/packages/36/fa/08e9e6e0e3cbd1d362c3bbee8d01d0aedb2155c4ac112b19ef3cae8eed8d/docutils-0.14-py3-none-any.whl (543kB)
     |????????????????????????????????| 552kB 146kB/s
Collecting rsa<=3.5.0,>=3.1.2 (from awscli)
  Downloading https://files.pythonhosted.org/packages/e1/ae/baedc9cb175552e95f3395c43055a6a5e125ae4d48a1d7a924baca83e92e/rsa-3.4.2-py2.py3-none-any.whl (46kB)
     |????????????????????????????????| 51kB 2.0MB/s
Requirement already satisfied: urllib3<1.26,>=1.20; python_version >= "3.4" in /usr/lib/python3/dist-packages (from botocore==1.12.169->awscli) (1.22)
Collecting python-dateutil<3.0.0,>=2.1; python_version >= "2.7" (from botocore==1.12.169->awscli)
  Downloading https://files.pythonhosted.org/packages/41/17/c62faccbfbd163c7f57f3844689e3a78bae1f403648a6afb1d0866d87fbb/python_dateutil-2.8.0-py2.py3-none-any.whl (226kB)
     |????????????????????????????????| 235kB 2.1MB/s
Collecting jmespath<1.0.0,>=0.7.1 (from botocore==1.12.169->awscli)
  Downloading https://files.pythonhosted.org/packages/83/94/7179c3832a6d45b266ddb2aac329e101367fbdb11f425f13771d27f225bb/jmespath-0.9.4-py2.py3-none-any.whl
Requirement already satisfied: pyasn1>=0.1.3 in /usr/lib/python3/dist-packages (from rsa<=3.5.0,>=3.1.2->awscli) (0.4.2)
Requirement already satisfied: six>=1.5 in /usr/lib/python3/dist-packages (from python-dateutil<3.0.0,>=2.1; python_version >= "2.7"->botocore==1.12.169->awscli) (1.11.0)
Installing collected packages: docutils, python-dateutil, jmespath, botocore, s3transfer, rsa, awscli
Successfully installed awscli-1.16.179 botocore-1.12.169 docutils-0.14 jmespath-0.9.4 python-dateutil-2.8.0 rsa-3.4.2 s3transfer-0.2.1
$ which aws
/usr/local/bin/aws
 

AWSのアクセスキーを取得

  • aws cli からAWSアカウントのリソースにアクセスするためのアクセスキーを取得します。アクセスキーの取得が未だの場合は、AWSコンソールから「セキュリティ資格情報」をクリックします(以下画像の①、②の順に)。
 
  • [アクセスキーの作成]ボタンを押して、アクセスキーIDとシークレットキーを取得しましょう(以下画像の③)。アクセスキーIDとシークレットキーは、アカウントのパスワードと同等な機密情報です。取扱いに注意ください。

aws cli 初期設定

  • aws configureコマンドで初期設定します。ここで、先ほど取得したアクセスキーIDとシークレットキーを入力します。
  • regionには使用するリージョンを入力します。(例:東京リージョンは、ap-northeast-1)
  • この設定値はホームディレクトリの.aws 配下にファイルとして作成され、再度aws configureコマンドを実行することで変更も可能です。
$ aws configure
AWS Access Key ID [None]: ********************
AWS Secret Access Key [None]: ****************************************
Default region name [None]: ap-northeast-1
Default output format [None]: json
 

aws cli を実行してみる

  • aws cli を使って、AWSアカウント内のリソースにアクセスできることを確認します。

$ aws ec2 describe-vpcs