LoginSignup
0
0

More than 5 years have passed since last update.

[Cloud102]#0-2 (補足)環境準備: AWS CLI

Last updated at Posted at 2016-10-03

本コンテンツは、以下の補足資料です。

[Cloud102]#0 環境準備
http://qiita.com/nagahisa/items/c6bd92992eef42dbe53a

なお、設定手順・キャプチャはすべてMac用です。

注意事項
このコンテンツで扱うAPIキー・シークレットキーはくれぐれも慎重に管理してください。
まず、以下コンテンツを読んで漏れた時の恐ろしさを認識しましょう。
「初心者がAWSでミスって不正利用されて$6,000請求、泣きそうになったお話。」
http://qiita.com/mochizukikotaro/items/a0e98ff0063a77e7b694

AGENDA

0.前置き
1.AWS CLIのインストール
2.CloudTrail
3.IAM
4.CLI設定ファイル作成
5.なんでもできるグループ作成とユーザの登録
6.確認

0.前置き

(1) 使いづらいマネコンとAPI

本編で触ったAWSのマネコンの印象は如何だったでしょうか?
個人的には「最悪とは言えないまでもスッゲエ使いづらい」UIだと思ってます :smile:
設定項目は多いし、あちこち設定箇所が分かれてるし・・・なんでこんなマネコンのIaaSが世界No.1なのかと。
(そんな点を良く研究されたIDCFさんなどは、非常に使いやすいマネコンを提供されています。)

実はAWSは「ほとんどの操作」はマネコン使わなくても行えますし、詳細情報はマネコンでは確認できないこともあります。

はい、API(Application Program Interface)です。

たとえばEC2はこのようなAPIが公開されています。
http://docs.aws.amazon.com/ja_jp/AWSEC2/latest/APIReference/Welcome.html

マネコンも同じAPI使って構築されているので、マネコンで出来ることはすべてAPIで出来ます。逆に詳細情報はマネコンには表示されないことがあるので、必要であればAPIで取得する訳です。

なお「ほとんどの操作」と言ったのは、API使えるようになるまでは、APIが使えないのでマネコンからしか操作出来ません :sweat_smile:

(2) SDK

APIは"Interface"定義なので、好きなプログラミング言語でAPIを呼べば良いのですが、プログラミング言語毎にAPIを使いやすくする工夫をするのが一般的です。

はい、SDK(Software Development Kit)です。

各言語用のSDKを使用することにより、低レベルなAPIを使わないで、楽にプログラムを書くことが出来ます。

オフィシャルに提供されているSDKは以下で確認できます。
https://aws.amazon.com/jp/tools/

(3) CLI

SDKには PythonのようなLL(lightweight language:軽量言語)用もあるのですが、それでもちょっとした作業、例えばVM一覧取得などに、毎回 Python scriptを書くのは面倒です。黒い画面で叩けるコマンドが用意されていると便利ですよね?

はい、CLI( Command Line Interface)も提供されています。

CLIのWindows用MSIインストーラも用意されているようですが、オススメしません。
本編で作成したAmazon LinuxのVMにはCLIがインストール済みですので、そちらを使ってみて下さい。

(4) CLI環境のオススメ

自分で管理出来るPCをお持ちの方は、AWS CLIをそのPCに導入するのが安心です。
(API KeyやSSH用秘密鍵を保存するのは、やっぱり手持ちデバイスの方が安心ですよね
:sweat_smile:

(a)Macの人:
・ラッキーです。この資料はMac用に書かれています :smile:

(b)Windows10の人:
・ラッキーです。1607リリースから"Bash on Windows"が使えるようになり、そちらの環境はUbuntuですので、この資料の手順とほぼ同じはずです。

Windows10お持ちの方は、以下を参考に是非トライしてみて下さい。
(Bash on Windows環境はコマンド1つで消せるので失敗しても環境汚れません。)

なお、Bash on Windowsについては補足#0-1でも少し触れています。
[Cloud102]#0-1 (補足)環境準備: Bash on Windows
http://qiita.com/nagahisa/items/ee2b36cfd051ce61ad69

(5) CLI日本語情報

本コンテンツはほぼすべて以下JAWS-UG CLI支部資料を参考にしています。多謝!!

http://qiita.com/tcsh/items/14c3278f69ab073afe0f
http://qiita.com/tcsh/items/b55eee599ae2c8806e4f

1.AWS CLIのインストール

この資料を参考に、pip, awscliをインストール

以下まで確認できればOKです ( versionは2016/9/24時点 )。
001.png

2.CloudTrail

この資料を参考にCloud Trai設定します。

002.png

003.png

3.IAM

この資料の 2.を参照してIAMグループ作成、ユーザ作成します。

(1) IAMダッシュボード > グループから「新しいグループの作成」

004.png

005.png

006.png

007.png

(2) IAMダッシュボード > ユーザから「新しいユーザの作成」

008.png

009.png

010.png

011.png

012.png

013.png

014.png

4. CLI設定ファイル作成

この資料の3.を参考にCLI設定ファイルを作成します。
・リージョンは東京(ap-northeast-1)にして下さい。

このユーザは IAMFullAccess権限があるので、IAM操作はできますが、EC2操作はできません。

015.png

5.なんでもできるグループ作成とユーザの登録

この資料の1.を参考してadministorator グループ作成:マネコン操作とCLI操作に使用します。

(1)“administorator”グループ作成

IAM_POLICY_NAME='AdministratorAccess'
これがマネコンのRoleリストにあったやつです
なんでもできる("Action": "*", "Resource": "*", "Effect": "Allow”)権限です。
016.png

これで “administorator”グループを作成します。
作成したら当然マネコンで確認できます。

017.png

(1)'スキップ手順

本来は以下を参考にこのユーザで別ユーザを作成するんですが・・・
http://qiita.com/tcsh/items/57902c2dba310fb7e28d

(2)ユーザに権限付与

今回はちょっと横着してこのユーザにこの権限を付与します。

今度は以下のようにマネコン操作をCLIで確認してみましょう。
・一旦CLIで作成済みユーザの所属グループ確認します
・次にマネコンでそのユーザを”administrator”グループに追加します
・もう一度CLIで作成済みユーザの所属グループ確認します

018.png

作成済みユーザはフル権限をもったので EC2操作も可能です。
019.png

Enjoy!! :tada:

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0