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
ECS Exec を使った ECS の トラブルシューティング
Search
Ryuki Dohara
August 09, 2022
Technology
0
590
ECS Exec を使った ECS の トラブルシューティング
イベント「
JAWS-UGコンテナ支部 入門編 #7 初心者大歓迎LT大会
」での登壇資料です。
[概要]
業務でECS Execを使った時の経験をベースに、ECS Execの使い方や便利な点を紹介
Ryuki Dohara
August 09, 2022
Tweet
Share
More Decks by Ryuki Dohara
See All by Ryuki Dohara
AWS のコンテナサービスについて整理してみる
dohara
0
34
新卒が半年で AWS 認定資格11冠取得した勉強記
dohara
0
740
Other Decks in Technology
See All in Technology
Next'24 事例セッションの紹介とクラウド資格を活用したキャリア形成について語りMuscle
yasumuusan
1
350
長期間TiDBを使ってきた話 @ 私たちはなぜNewSQLを使うのかTiDB選定5社が語る選定理由と活用LT / Experiences with TiDB Over Time
chibiegg
2
740
アプリがつくるNOT A HOTELブランド
hokuts
1
450
コードを書く隙間を見つけて生きていく技術/Findy 思考の現在地
fujiwara3
24
5.3k
「ふりかえりのふりかえり」をふりかえり、実のあるふりかえりにする
naitosatoshi
0
230
Cloud Native Java with Spring Boot (CNCF Aarhus, April 2024)
thomasvitale
1
130
Autonomous Database Cloud 技術詳細 / adb-s_technical_detail_jp
oracle4engineer
PRO
14
35k
複雑な構成要素を持つUIとの向き合い方 〜新・支出グラフでの実例〜 / B43 TECH TALK
nakamuuu
0
110
o11y入門_外形監視を利用したWebアプリケーションへの最適なモニタリング_TechBrew
k5k
3
100
株式会社EventHub・エンジニア採用資料
eventhub
0
1.9k
継続的な改善 x ⾮連続的な進化
sansantech
PRO
3
100
HEXA OSINT CTF V3 作戦会議
meow_noisy
0
110
Featured
See All Featured
The MySQL Ecosystem @ GitHub 2015
samlambert
242
12k
4 Signs Your Business is Dying
shpigford
175
21k
From Idea to $5000 a Month in 5 Months
shpigford
377
45k
Build your cross-platform service in a week with App Engine
jlugia
225
17k
Statistics for Hackers
jakevdp
789
220k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
226
16k
The Cult of Friendly URLs
andyhume
74
5.7k
A Philosophy of Restraint
colly
196
16k
Being A Developer After 40
akosma
56
580k
Why You Should Never Use an ORM
jnunemaker
PRO
50
8.6k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
13
1.5k
Bootstrapping a Software Product
garrettdimon
PRO
301
110k
Transcript
[JAWS-UG コンテナ支部 入門編 #7] ECS Exec を使った ECS の トラブルシューティング
アイレット株式会社 堂原 竜希
自己紹介 名前 : 堂原 竜希(ドウハラ リュウキ) 所属 : アイレット株式会社
インフラエンジニア 入社 : 2021 年(新卒) Twitter : @ryu_dohara 2
クラウドのコンテナはローカル検証が難しい 一年間新卒として過ごし、初の ECS 絡みのインフラ構築 3 クラウドのコンテナならではの要件 • ECS 間通信管理に App
Mesh 使用 • ECS 外のサービスへのアクセス • AWS API を叩く …
クラウドのコンテナはローカル検証が難しい クラウドならではの要件 → クラウドならではの設定 • セキュリティグループ • IAM ロール /
ポリシー • VPC エンドポイント 4 データベースにアクセスできないのは? • 記述ミス? • psql などのツールでもアクセスできない? API を叩けないのは? • 記述ミス? • 名前解決はできてる? • 権限がある? エラー発生 コンテナの外から見ただけでは切り分けが難しい
Docker なら docker exec が 使えるのに・・・ 5 ECS でもできます!
ECS Exec ECS で実行されているコンテナで以下が可能に • コマンドの実行 • シェルへのアクセス まさに Docker
の docker exec と同様のことができます! 6
ECS Exec 使用例 7 $ aws ecs execute-command --cluster cluster-name
\ --task task-id \ --container container-name \ --interactive \ --command "/bin/sh" The Session Manager plugin was installed successfully. Use the AWS CLI to start a session. Starting session with SessionId: ecs-execute-command-xxx #
ECS Exec の便利な点 8 コンテナイメージを変更する必要がない コンテナへの特定のツールのインストール不要 セキュリティグループで特定のポートを開放する必要なし AWS System Manager
(SSM) のセッションマネージャーを用いてるため ログ記録 コマンド及び出力結果は CloudWatch Logs へ ECS Exec の使用履歴は CloudTrail へ IAM ベースでの権限管理
色々と説明 9 SSM のセッションマネージャーが使われています そのため、タスクロールで SSM アクセス権限を付与する必要があります また、プライベートなサブネットに配置している場合、 VPC エンドポイントが必要です
マネージドコンソールから、 ECS Exec の有効化及び使用はできません
ECS Exec を有効化するには? 10 ざっくりまとめると、ECS に対して以下の設定が必要です • タスクロールに必要な権限付与 • (推奨)タスク定義において、
initProcessEnabled を有効化 • ECS サービスにおいて、ECS Exec (enableExecuteCommand) を有効化 また、次の設定も必要です • (プライベートサブネットの場合 ) VPC エンドポイント作成 • ECS Exec の実行アカウントに IAM ポリシー付与 (ここまでで思った方もいるかもしれませんが ) 設定内容が多く、初めてだとハマりやすいです・・・ そこで・・・
Amazon ECS Exec チェッカー 11 ECS Exec を使用するにあたり、 ECS やその他
AWS リソースが正しく設定されているかの確認をしてくれます フリーツールとして、 GitHub で展開 例) タスクロールの権限が未設定 引用元 : https://github.com/aws-containers/amazon-ecs-exec-checker
まとめ トラブルシューティングのお供として、 ECS Exec を有効活用しましょう! ECS Exec 自体の設定にハマってしまったら Amazon ECS
Exec チェッカーを活用 12 参考 • https://docs.aws.amazon.com/ja_jp/AmazonECS/latest/userguide/ecs-exec.html • https://github.com/aws-containers/amazon-ecs-exec-checker