Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
initContainerをECSで実現したい.pdf
Search
clouddev-code
November 08, 2025
0
7
initContainerをECSで実現したい.pdf
clouddev-code
November 08, 2025
Tweet
Share
More Decks by clouddev-code
See All by clouddev-code
Grafana_LokiをECS_Fargateで構築する観点公開版.pdf
cloudevcode
0
11
ADK_for_Java.pdf
cloudevcode
1
38
VPC_Lattice検討したが_採用しなかった話.pptx.pptx.pdf
cloudevcode
0
6
Presentation_-_コンテナイメージ高速化技術.pptx.pdf
cloudevcode
0
9
GitHub_Copilot_AgentでするMCP_Streamable_HTTPまで.pdf
cloudevcode
0
89
EKS_Auto_Mode_Deep_Live.pdf
cloudevcode
0
36
re_invent_2024アップデートで実現可能なアーキテクチャを考える.pdf
cloudevcode
1
290
WebAssembly_workloadをEKSで利用するには.pdf
cloudevcode
0
1.4k
Fluentbit_mulitline_filterについて.pdf
cloudevcode
1
890
Featured
See All Featured
Building Adaptive Systems
keathley
44
2.9k
Done Done
chrislema
186
16k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
61k
The World Runs on Bad Software
bkeepers
PRO
72
12k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
196
69k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
22k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
120
20k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.6k
The Cost Of JavaScript in 2023
addyosmani
55
9.3k
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は利用できる!