Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Would_you_like_to_use_aws_cli
Search
37108
June 18, 2019
Technology
2.6k
0
Share
Would_you_like_to_use_aws_cli
JAWS-UG 初心者支部#18 LT会! 資料
37108
June 18, 2019
More Decks by 37108
See All by 37108
boast frontend 2023/04/14
37108
0
37
Amazon API Gateway Study Workshop
37108
3
3.7M
AKIBA.AWS#14_Code_Series
37108
0
1.2k
about_the_history_of_RHCP
37108
0
99
Other Decks in Technology
See All in Technology
職能の壁を取り払った先で見えた壁 -AI時代のクロスファンクショナル組織-
shimotaroo
1
120
マルチプロダクトの信頼性を効率良く保っていくために
kworkdev
PRO
0
150
みんなで作るAWS Tips 100連発 (FinOps編)
schwrzktz
1
290
Azure Speech で音声対応してみよう
kosmosebi
0
160
20年前の「OSS革命」に学ぶ AI時代の生存戦略
samakada
0
350
自分のハンドルは自分で握れ! ― 自分のケイパビリティを増やし、メンバーのケイパビリティ獲得を支援する ― / Take the wheel yourself
takaking22
1
870
データを"持てない"環境でのアノテーション基盤設計
sansantech
PRO
1
110
CloudSec JP #005 後締め ~ソフトウェアサプライチェーン攻撃から開発者のシークレットを守る~
lhazy
0
230
Keeping Ruby Running on Cygwin
fd0
0
110
QGISプラグイン CMChangeDetector
naokimuroki
1
360
AIエージェントの権限管理 1: MCPサーバー・ツールの Fine grained access control 編
ren8k
3
490
Bill One 開発エンジニア 紹介資料
sansan33
PRO
6
18k
Featured
See All Featured
The browser strikes back
jonoalderson
0
970
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
2.8k
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
170
Bash Introduction
62gerente
615
210k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
30k
The Cost Of JavaScript in 2023
addyosmani
55
9.8k
Between Models and Reality
mayunak
3
260
Reality Check: Gamification 10 Years Later
codingconduct
0
2.1k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.4k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Docker and Python
trallard
47
3.8k
Discover your Explorer Soul
emna__ayadi
2
1.1k
Transcript
AWS CLI はじめてみませんか...? JAWS-UG 初心者支部#18 18/06/2019
Attention • 写真撮影 : • 録画/録音 : • SNS :
• Slide :
Oku Takuya GitHub : 37108 About Me Twitter : _37108
speakerdeck: _37108
About Me Red Hot Chili Peppers が大好き
About Me 交流戦、ちょっと辛い by カープファン
話すこと 話さないこと • AWS CLIとは • コマンド一個 • CLIの始め方 •
CLIの仕組み • 便利Tips • 詳細な使い方 • ハンズオン
• AWS CLIとは • コマンド一個 • CLIの始め方 • CLIの仕組み •
便利Tips • 詳細な使い方 • ハンズオン 話すこと 話さないこと
Agenda • AWS CLIとは • IAM Userとは • AWS CLIのセットアップ
• AWS CLIの構成 • CLI Skeleton • 出力結果のフィルター • まとめ
Agenda • AWS CLIとは • IAM Userとは • AWS CLIのセットアップ
• AWS CLIの構成 • CLI Skeleton • 出力結果のフィルター • まとめ
AWSサービスを操作する統合ツールの1つ GitHubで開発されているOSS(aws/aws-cli) クロスプラットフォーム(Win/Mac/Linux) 多くのAWSサービスをサポート AWS CLI とは
コンソールを操作してて
あれこのリソース何?
なったことありません?
手順書を見て
ここパラメータ指定ないよ
EC2 複数台作るの...
SSのGUIなんか違う...
なったことありません?
コンソール操作だけだと
辛い時もあるし、
AWSは理解しきれない (個人の感想)
インスタンスプロファイルとは? ECSのクラスタを手動で組むには? Question
コンソールが良しなに やってくれるから
だけじゃダメ。
AWS CLI はじめてみませんか...?
CLI のメリット • なんとなくでないAPIレベルでの理解 • リソースの消し忘れを防げる • ロールバックも容易 • 資格の勉強にもなる
CLI のメリット(運用編) • ドキュメントが作りやすい • 反復作業が楽になる • オペミスが減る • 手順書の保守が比較的楽に
AWS CLI 使ってやる !!
の前に、
IAM User、理解しよう
Agenda • AWS CLIとは • IAM Userとは • AWS CLIのセットアップ
• AWS CLIの構成 • CLI Skeleton • 出力結果のフィルター • まとめ
IAM User とは
IAM User とは 認証を司るもの
IAM User とは 認証を司るもの
IAM User とは 認証を司るもの
認証 とは 誰であるかを 確認すること
認証 とは ex) 私が本人であることを示す
認証 とは ex) 私が本人であることを示す Connpassの画面を見せれば納得できる
IAM User とは 認証を司るもの ~仕切り直し~
IAM User とは 本人確認を司る ~仕切り直し~
IAM User とは コンソールログイン: ユーザ名とパスワードで認証 ~仕切り直し~ アクセスキー : アクセスキーと シークレットアクセスキー
の組み合わせで認証
IAM User とは ~仕切り直し~ CLIでの認証にはこれを使う コンソールログイン: ユーザ名とパスワードで認証 アクセスキー : アクセスキーと
シークレットアクセスキー の組み合わせで認証
認証はできたけど...
認可が下りない!!
例えに戻ると、
本人確認(認証)は できているけど 本当に登壇していい人か わかってない(権限不足)
権限の付与と 権限の確認が必要
IAM Policy とは 認可を司るもの
IAM User : 認証 IAM Policy: 認可
IAM User : 本人確認 IAM Policy: 権限管理
何となく CLIの準備がお分かりいただけましたか?
Agenda • AWS CLIとは • IAM Userとは • AWS CLIのセットアップ
• AWS CLIの構成 • CLI Skeleton • 出力結果のフィルター • まとめ
1. AWS CLIのインストール 2. コンソールへログイン 3. IAM Userの作成 4. $
aws configure AWS CLIの準備の流れ
1. AWS CLIのインストール 2. コンソールへログイン 3. IAM Userの作成 4. $
aws configure AWS CLIの準備の流れ
AWS CLIのインストール 公式のドキュメントに 各OSのインストール方法が載ってます。
AWS CLIのインストール例
1. AWS CLI のインストール 2. コンソールへログイン 3. IAM Userの作成 4.
$ aws configure AWS CLIの準備の流れ
コンソールへのログイン AWSマネジメントコンソールにログイン
1. AWS CLI のインストール 2. コンソールへログイン 3. IAM Userの作成 4.
$ aws configure AWS CLIの準備の流れ
IAM Userの作成 1
IAM Userの作成 2
IAM Userの作成 3
IAM Userの作成 4
IAM Userの作成 5
IAM Userの作成 6
IAM Userの作成 7
1. AWS CLI のインストール 2. コンソールへログイン 3. IAM Userの作成 4.
$ aws configure AWS CLIの準備の流れ
$ aws configure • AWS CLIのコマンドの1つ • ~/.aws/ 以下に認証情報をprofileとして作成 •
~/.aws/config : 設定ファイル • ~/.aws/credentials: 認証情報を保管
$ aws configure
$ aws configure
sts get-caller-identity
絶対覚えて欲しいコマンド
第一位 (個人の感想)
どのIAM Userか確認
sts get-caller-identity
作業前に必ず確認を!!
補足:クレデンシャルの無効/削除
補足:クレデンシャルの無効化
補足:クレデンシャルの削除
Agenda • AWS CLIとは • IAM Userとは • AWS CLIのセットアップ
• AWS CLIの構成 • CLI Skeleton • 出力結果のフィルター • まとめ
$ aws ec2 create-key-pair --key-name foo AWS CLI の構成 コマンド
サブコマンド オプション
$ aws ec2 create-key-pair --key-name foo AWS CLI の構成 コマンド
サブコマンド オプション • コマンド : 操作する対象
$ aws ec2 create-key-pair --key-name foo AWS CLI の構成 コマンド
サブコマンド オプション • コマンド : 操作する対象 • サブコマンド: 操作の内容
$ aws ec2 create-key-pair --key-name foo AWS CLI の構成 コマンド
サブコマンド オプション • コマンド : 操作する対象 • サブコマンド: 操作の内容 • オプション : 必要なパラメータとか
ec2 create-tags --tags Key=foo,Value … s3 mb s3://fooBucket cloudformation create-stack
elbv2 describe-listeners cloudformation describe-stacks ecs create-cluster --cluster-name hoge コマンド凡例
コマンド X サブコマンド
膨大な量覚えられない...
Help
$ aws help AWS CLI のhelp コマンド、サブコマンドレベルでのhelpが可能 使用できる、(サブ)コマンドの一覧が確認可能 lessでの内容の閲覧 必用なオプションもわかる
None
None
helpもTab補完も辛い?
便利なの、ありますよ
aws-shell GitHubで開発されているOSS(awslabs/aws-shell) インタラクティブにコマンドが打てる ドキュメントをすぐに見れる 実行履歴を保持してくれる ファジー検索してくれる時もある 一部コマンド、パイプラインに対応
None
サブコマンドをいい感じに表示
コマンドのドキュメントの表示
まだまだ機能はある
インストール方法 公式のドキュメントに 各OSのインストール方法が載ってます。
インストール方法例
コマンド、サブコマンド、オプションがあること 困ったらhelpで確認 より便利にしたかったらaws-shell 覚えておけばいいこと
Agenda • AWS CLIとは • IAM Userとは • AWS CLIのセットアップ
• AWS CLIの構成 • CLI Skeleton • 出力結果のフィルター • まとめ
None
オプション多い...
オプションをいい感じに まとめたい
CLI Skeleton パラメータをjson形式で受け取れる --generete-cli-skeleton でSkeletonの作成 --cli-input-json でパラメータの受け取り 殆どのコマンドでサポート
None
None
オプションがいい感じ
Agenda • AWS CLIとは • IAM Userとは • AWS CLIのセットアップ
• AWS CLIの構成 • CLI Skeleton • 出力結果のフィルター • まとめ
None
--query オプション JMESPath(クエリ言語)でのクエリによる絞り込み 殆どのコマンドでサポート $ aws ec2 describe-tags --query \
Tags[].Value
--filters オプション Name,Valueでの絞り込み 殆どのコマンドでサポート helpでどんなのがあるかを確認可能 $ aws ec2 describe-tags --filters
\ “Name=resource-type,Value=instance”
jq コマンド jsonの整形、加工、絞り込みに使える aws cliの組み込みコマンドではない $ cat foo.json | jq
.
これらを組み合わせると、
Amazon Linux2のAMI ID の取得をCLIでできたりする
None
Agenda • AWS CLIとは • IAM Userとは • AWS CLIのセットアップ
• AWS CLIの構成 • CLI Skeleton • 出力結果のフィルター • まとめ
AWS CLIでAWSへ対する理解を深められる AWS CLIで手順書の品質が上がり、運用が楽になる 困ったら、help skeletonでパラメータをjsonにまとめる query, filters, jqで適切な絞りこみ aws-shell
で快適な環境を実現する
登壇内容などDevelopers.IOにまとめてあります。 何かありましたら気軽にお声がけください。 おわりに