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
initContainerをECSで実現したい.pdf
Search
clouddev-code
November 08, 2025
0
12
initContainerをECSで実現したい.pdf
clouddev-code
November 08, 2025
Tweet
Share
More Decks by clouddev-code
See All by clouddev-code
Regional_NAT_Gatewayについて_basicとの違い_試した内容スケールアウト_インについて_IPv6_dual_networkでの使い分けなど.pdf
cloudevcode
1
110
Grafana_LokiをECS_Fargateで構築する観点公開版.pdf
cloudevcode
0
18
ADK_for_Java.pdf
cloudevcode
1
53
VPC_Lattice検討したが_採用しなかった話.pptx.pptx.pdf
cloudevcode
0
12
Presentation_-_コンテナイメージ高速化技術.pptx.pdf
cloudevcode
0
13
GitHub_Copilot_AgentでするMCP_Streamable_HTTPまで.pdf
cloudevcode
0
96
EKS_Auto_Mode_Deep_Live.pdf
cloudevcode
0
41
re_invent_2024アップデートで実現可能なアーキテクチャを考える.pdf
cloudevcode
1
290
WebAssembly_workloadをEKSで利用するには.pdf
cloudevcode
0
1.4k
Featured
See All Featured
The SEO Collaboration Effect
kristinabergwall1
0
340
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.3k
How STYLIGHT went responsive
nonsquared
100
6k
Claude Code のすすめ
schroneko
67
210k
Ruling the World: When Life Gets Gamed
codingconduct
0
130
Designing for Timeless Needs
cassininazir
0
120
HDC tutorial
michielstock
1
330
Building a Modern Day E-commerce SEO Strategy
aleyda
45
8.6k
Designing for humans not robots
tammielis
254
26k
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
130
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
110
Evolving SEO for Evolving Search Engines
ryanjones
0
100
Transcript
initContainerをECSで実現 したい 2025.11.07 氏名 : 蛭田聡司
プロフィール Profile 01 Name Soushi Hiruta 02 Work 基盤設計構築 03
Community CommunityBuilder 2025 ( Container Category ) 04 興味 KubeConEU 2023~2026 05 Social X @web_se GitHub clouddev-code
目次 CONTENT 01 initContainerとは initContainerの概要、sidecar containerについて 02 どんなときに使うか。 どういうケースで使うか、制限事項など 03
ECSでつかうには ECSで使う方法について 04 利用しているパターン Cloudwatch Application Signals
initContainerについて ここにはタイトルを補足する内容を記入してください。 01
動的に設定ファイルを更新してアプリを起動させたい アプリ起動設定ファイルを更新してから起動、例を挙げると Dify SSLの初期ファイルをコピーしてからでないとアプリが起動できない、開発とか商用など コンフィグファイルにS3バケット名が埋め込まれているなら環境依存するイメージを開発、ステージ、本番度にイメージを作るなどコンテナのポータビリ ティに反するので、コンフィグファイルは起動時に置換して起動させたい こんなケースありませんか? 分量の多いテキストを入力する際に便利なページです。
設定ファイルをコンテナ起動前に更新する Nginx設定ファイル、istio injectionなどメイン起動前にしておきたいケースがあ る。 initContainerとは メインコンテナ起動前に処理させるコンテナ
コンテナが停止した状態をポーリングしてお く必要があった。 Sidecar container以前 Kubernetes 1.28より前のバージョンではメインコンテナが終了していも、 sidecar が生き続ける問題があった コンテナ間状態通 知
メインコンテナが終了した場合サイドカーコンテナ に通知して終了する仕組みが必要 コンテナ間連携に難 メインコンテナがなんらかで終了して も別コンテナが起動しない 他コンテナがどうなっているかわからず、 Pod が停止しない事象がある
Sidecar Containerで無事コンテナが異常終了して もPodが終了することが可能になった Kubernetes 1.28で対応したSidecar container 写真と一緒に分量の多いテキストを入力する際に便利なページです。
ECSで試したい 02
動的に設定ファイルを更新してアプリを起動させたい デーモン起動していないとECS Taskが終了してしまうので、起動前に設定ファイルがある必要がある ECS Serviceはデーモン起動していないといけない
設定ファイルをコンテナ起動前に更新する Essentail Container、Sidecar containerを含め、なんらかでコンテナが終了した 場合、Taskを終了する。 Init containerについてはEssentail containerにしない。また、app containerより 先に起動する必要があるので、コンテナ間の依存関係を設定しておく必要が
ある。 コンテナがいないと支障がでるFluentbit 、Cloudwatch Agentはessential containerは有効にしておく ファイルのやりとりは揮発性のbind mountを使う サイドカーパターン
タイムアウト 各種タイムアウトの説明 01 ECS_CONTAINER_START_TIMEOUT Fargateの場合、120秒まで設定可能 02 FargateSpot Stop timeout SIGKILL発火のあと停止するまでどのくらい待つか設定する。120秒まで設定可能
Init container in ECSでの利用ケース 03
Application Signalsにメトリクスを送信するモ ジュー ルを取得配置 Application Signals にトレース情報を収集するにはOpen Temetryのモジュール をjava起動時に、javaagent オプションに指定する必要がある。Main
container に入れ込むことも可能だが、Open Telemtryのモジュールはバージョンアップし たいときとか別管理してすることがinit containerをつかうことで可能になる。 ファイルのやりとりは揮発性のbind mountのボリュームを利用する Application Signalsで利用例 写真と一緒に分量の多いテキストを入力する際に便利なページです。
コンテナ設定ファイルの初期化に活用できる。 ただし、起動上限には注意が必要。Fargateの場合、ECS_CONTAINER_START_TIMEOUT 180sまで設定できる 初期化処理をする場合init containerは利用できる!