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
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
37108
June 18, 2019
Technology
0
2.5k
Would_you_like_to_use_aws_cli
JAWS-UG 初心者支部#18 LT会! 資料
37108
June 18, 2019
Tweet
Share
More Decks by 37108
See All by 37108
boast frontend 2023/04/14
37108
0
33
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
95
Other Decks in Technology
See All in Technology
いよいよ仕事を奪われそうな波が来たぜ
kazzpapa3
3
340
コスト削減から「セキュリティと利便性」を担うプラットフォームへ
sansantech
PRO
1
860
We Built for Predictability; The Workloads Didn’t Care
stahnma
0
120
Azure Durable Functions で作った NL2SQL Agent の精度向上に取り組んだ話/jat08
thara0402
0
120
Amazon Bedrock AgentCore EvaluationsでAIエージェントを評価してみよう!
yuu551
0
210
GCASアップデート(202510-202601)
techniczna
0
240
~Everything as Codeを諦めない~ 後からCDK
mu7889yoon
3
190
2026年、サーバーレスの現在地 -「制約と戦う技術」から「当たり前の実行基盤」へ- /serverless2026
slsops
2
140
Meshy Proプラン課金した
henjin0
0
170
KubeCon + CloudNativeCon NA ‘25 Recap, Extensibility: Gateway API / NRI
ladicle
0
170
M&A 後の統合をどう進めるか ─ ナレッジワーク × Poetics が実践した組織とシステムの融合
kworkdev
PRO
1
280
Kiro IDEのドキュメントを全部読んだので地味だけどちょっと嬉しい機能を紹介する
khmoryz
0
110
Featured
See All Featured
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
0
260
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Facilitating Awesome Meetings
lara
57
6.7k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
196
71k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
2.7k
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
55
49k
How to Ace a Technical Interview
jacobian
281
24k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Java REST API Framework Comparison - PWX 2021
mraible
34
9.1k
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
76
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にまとめてあります。 何かありましたら気軽にお声がけください。 おわりに