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
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
28
Amazon API Gateway Study Workshop
37108
3
3.7M
AKIBA.AWS#14_Code_Series
37108
0
1.1k
about_the_history_of_RHCP
37108
0
94
Other Decks in Technology
See All in Technology
Amazon CloudWatchのメトリクスインターバルについて / Metrics interval matters
ymotongpoo
3
300
With Devin -AIの自律とメンバーの自立
kotanin0
2
930
「AI駆動開発」のボトルネック『言語化』を効率化するには
taniiicom
1
230
公開初日に個人環境で試した Gemini CLI 体験記など / Gemini CLI実験レポート
you
PRO
3
1.1k
反脆弱性(アンチフラジャイル)とデータ基盤構築
cuebic9bic
2
110
FAST導入1年間のふりかえり〜現実を直視し、さらなる進化を求めて〜 / Review of the first year of FAST implementation
wooootack
1
210
MCPに潜むセキュリティリスクを考えてみる
milix_m
1
920
KCD Lima: eBee in Peru!
lizrice
0
110
Jitera Company Deck / JP
jitera
0
310
ML Pipelineの開発と運用を OpenTelemetryで繋ぐ @ OpenTelemetry Meetup 2025-07
getty708
0
330
ecspressoの設計思想に至る道 / sekkeinight2025
fujiwara3
12
2.1k
マルチモーダル基盤モデルに基づく動画と音の解析技術
lycorptech_jp
PRO
2
290
Featured
See All Featured
Statistics for Hackers
jakevdp
799
220k
Speed Design
sergeychernyshev
32
1k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
26k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
357
30k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
Balancing Empowerment & Direction
lara
1
510
KATA
mclloyd
31
14k
Rails Girls Zürich Keynote
gr2m
95
14k
Music & Morning Musume
bryan
46
6.7k
Into the Great Unknown - MozCon
thekraken
40
1.9k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
130
19k
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にまとめてあります。 何かありましたら気軽にお声がけください。 おわりに