Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
ECS Execを使ってFargateにログインしてみた
Search
Ryohei Hisamitsu
November 20, 2021
Technology
430
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
ECS Execを使ってFargateにログインしてみた
Ryohei Hisamitsu
November 20, 2021
More Decks by Ryohei Hisamitsu
See All by Ryohei Hisamitsu
re:Invent参加フィードバック会
hisami
0
110
GoのアプリをEKS(Fargate)にデプロイしてみた話
hisami
0
280
Greengrassを使ったIoTのアーキテクチャ
hisami
0
190
TypeScriptでDIしてみた
hisami
0
530
Other Decks in Technology
See All in Technology
触りたくないデータに、どう触るか AI時代のRBACアクセスガバナンス
ivry_presentationmaterials
0
140
「事実」を「計測」して、「解釈」する 〜AWS Lambdaのメモリ最適解の見つけ方〜
maimyyym
0
140
FactoryBotアンチパターン / factory_bot anti-patterns
toshimaru
0
160
実践!Cloud Run ハンズオン!! / Cloud Run handson
y0hgi
1
260
AI駆動開発の時代になったのでトヨタ生産方式から見直す
terurou
7
5.9k
Conditional PED-ANOVA: Hyperparameter Importance in Hierarchical & Dynamic Search Spaces
pfn
PRO
0
100
子育てエンジニアの可処分時間が減っても成長を諦めない戦い方
sudoakiy
6
4.5k
AIにシークレットを見せない、WSL2で安全な開発環境
yazm
0
130
AI時代のPRレビューにどう向き合うか?
kairim0
1
220
How to Design Configuration for Rails Applications
willnet
0
210
UniFi(ユニファイ)AIカメラの現場活用
ludicmind
1
420
[AWS 秋のクラウドオペレーション祭り 2026]AWS DevOps Agentで変わるリリースと運用対応 ~リリース管理機能と Directed actions のご紹介~
furuton
4
1.2k
Featured
See All Featured
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
2
310
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
3.2k
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
730
Fashionably flexible responsive web design (full day workshop)
malarkey
409
67k
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
520
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.6k
Ethics towards AI in product and experience design
skipperchong
2
430
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.9k
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
1.1k
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
280
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.6k
Transcript
ECS Execを使ってFargateにログインしてみた 久光遼平 AWS LT会 2021.11.17
自己紹介:久光 遼平(ひさみつ りょうへい) l 自動車業界約6年、IT業界約3年半のエンジニア l 大学:Java l 自動車会社:Matlab、C++ l
前職:PHP l 現職:TypeScriptでのバックエンド開発、AWSでのインフラ構築 l マラソン、サッカーが趣味 2
今日のお話 l FargateにログインできるECS Execが今年の3月にリリースされたので使っ てみたら、すごく簡単に設定できた l 心おきなくFargateを選択して、インフラ管理の手間を省きましょう 3
そもそも、なんでコンテナ使うんだっけ? l 不変の実行環境 l Aさんは動くけどBさんは動かないといったことが起きない l 本番でもそのまま動かせる l 充実したエコシステム l
Dockerfileはレイヤを追加していく書き方 l 自分で1から書かなくて良い l 各種クラウドベンダが持つマネージドサービス l 本番環境を簡単に作れる l サーバ管理の手間を省く選択肢が存在する → AWSのFargate 4
AWSにおけるコンテナ実行基盤(EC2 vs Fargate) l Fargateのメリット l インフラレイヤーの管理が不要 l 脆弱性対応のためのパッチ当て、OSアップグレード l
異常発生時のEC2インスタンスの再起動や入れ替え l Fargateのデメリット l 単価が少し高い l Windowsコンテナが使えない →10/28からサポートされるようになった l SSHによるローカルアクセスができない 5
SSHできなくて困ること l トラブルシューティング l コンテナではログを標準出力に出してCloudWatchで収集するのが定石だけど、、 l 実際にトラブルがおきて、この情報も見たかった!ってことありますよね 6
そこで、ECS Exec l Dockerでコンテナに入る時に使うdocker exec的なもの l ECS on EC2、Fargate両方に対応 l
Systems Managerのセッションマネージャーを使用 l 通信ポートを解放せずにアクセスできるのでセキュア、踏み台サーバ不要 l Linuxコンテナのみサポート、Management Consoleでの設定は現時点不可 7
実際の手順 l 前提 l AWS CLIのバージョン:v1.19.28以降 or v2.1.31以降 l セッションマネージャープラグインのインストールが必要
l CloudFormationで構築されたFargateのインフラが既に存在している (CLIを使用する場合も、同じくらい簡単に変更できます) l 流れ 1. ECSタスクロールの変更 2. サービスのEnableExecuteCommandオプションを有効にする 3. タスクの再デプロイ 4. コンテナへのログイン 8
手順1:ECSタスクロールの変更 l SSM関連のポリシーを作成して既存のロールにアタッチ 9
l 1行追記して、CloudFormationをデプロイ 手順2:サービスのEnableExecuteCommandオプションを有効にする 10
手順3:タスクの再デプロイ l CI/CDの仕組みも作っていたのでCodePipelineからデプロイ 11
手順4:コンテナへのログイン l 以下コマンドを実行 l 成功すると、コンテナ内でコマンドを実行できる 12 BXT FDT FYFDVUFDPNNBOEʘ DMVTUFSIJTBUFTUDMVTUFSʘ
UBTLYYYYYYYYYYYYYYYYYYYYYYY ʘ DPOUBJOFSIJTBUFTUDPOUBJOFSBQQʘ JOUFSBDUJWFʘ DPNNBOECJOTI 5IF4FTTJPO.BOBHFSQMVHJOXBTJOTUBMMFETVDDFTTGVMMZ6TFUIF"84$-*UPTUBSUBTFTTJPO 4UBSUJOHTFTTJPOXJUI4FTTJPO*EFDTFYFDVUFDPNNBOEYYYYYYYYYYY MT %PDLFSGJMF CVJMETQFDZNM JOGSB OPEF@NPEVMFT QBDLBHFMPDLKTPO QBDLBHFKTPO TFSWFSKT
まとめ l Fargateにログイン可能なECS Execはすごく簡単に設定できる 1. ECSタスクロールの変更 2. サービスのEnableExecuteCommandオプションを有効にする 3. タスクの再デプロイ
4. コンテナへのログイン l 心おきなくFargateを選択して、インフラ管理の手間を省きましょう l ただし、エラーログなどはこれまで通りCloudWatchなどに出力すべき l ヘルスチェックなどでコンテナが置き換わると、トラブルシューティングが困難に なるケースがあるため l ECS Execに頼りすぎるのではなく、最後の砦という位置付け 13
None