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 on FargateへのSeekable OCI導入レポート
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
iwamot
PRO
March 07, 2024
Technology
770
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
ECS on FargateへのSeekable OCI導入レポート
2024-03-07
JAWS-UG コンテナ支部 #26 新春大LT祭り
https://jawsug-container.connpass.com/event/307354/
iwamot
PRO
March 07, 2024
More Decks by iwamot
See All by iwamot
MCP Appsを作ってみよう
iwamot
PRO
4
800
自己紹介
iwamot
PRO
1
110
パワポ作るマンをMCP Apps化してみた
iwamot
PRO
0
880
8万デプロイ
iwamot
PRO
2
410
AIエージェント・マイクロサービス時代。AWSでの手軽な構築法を考えて試してみた
iwamot
PRO
1
130
これがLambdaレス時代のChatOpsだ!実例で学ぶAmazon Q Developerカスタムアクション活用法
iwamot
PRO
10
2.9k
Developer Certificate of Origin、よさそう
iwamot
PRO
0
120
復号できなくなると怖いので、AWS KMSキーの削除を「面倒」にしてみた CODT 2025 クロージングイベント版
iwamot
PRO
1
220
復号できなくなると怖いので、AWS KMSキーの削除を「面倒」にしてみた
iwamot
PRO
3
200
Other Decks in Technology
See All in Technology
SmartHR Engineering Team Deck
smarthr
1
3.5k
tamachi.go 誕生の裏側
rymiyamoto
1
200
AI-DLC実践録_フルサイクル開発への挑戦
miyuc
0
380
AI時代のアウトプット――変わったこと、変わらないこと / Devsumi 2026 Kansai #devsumi
jnchito
0
510
Flutter × BLE Centralを自前Pluginで実装する設計パターン - MethodChannel / EventChannelで作る双方向ブリッジの実践 / Building Custom Flutter BLE Central Plugins: Bidirectional Bridging with Method & Event Channels
bitkey
PRO
0
230
VLMで2.3万枚のPyCon JP写真を検索!
terapyon
1
310
なぜ Temporal の大小比較には compare しかないのか / Why Does Temporal Only Have compare() for Comparisons
kazukihayase
1
200
[potatotips #96] Give Your AI Agent the Flutter Playbook
korodroid
0
140
あなたの知らないバージョン命名規則
sat
PRO
2
180
地震情報アプリを作ってみた
yama3133
1
110
【GCC2026】鉄拳8でのVFX開発事例
bandainamcostudios
PRO
0
270
生成 AI の基礎 〜 サンプル実装で学ぶ基本原理
enakai00
7
4.6k
Featured
See All Featured
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
430
Why You Should Never Use an ORM
jnunemaker
PRO
61
10k
Typedesign – Prime Four
hannesfritz
42
3.1k
Designing Powerful Visuals for Engaging Learning
tmiket
1
500
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
3
1.1k
A better future with KSS
kneath
240
18k
Crafting Experiences
bethany
1
260
Optimising Largest Contentful Paint
csswizardry
37
3.9k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.5k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.3k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
10k
Transcript
ECS on FargateへのSeekable OCI導入レポート 2024-03-07 JAWS-UG コンテナ支部 #26 新春大LT祭り https://jawsug-container.connpass.com/event/307354/
ENECHANGE株式会社 VPoT兼CTO室マネージャー 岩本 隆史
岩本 隆史 (iwamot) 現職:ENECHANGE CTO室にて全社的な施策を提案・実施 前職:AWS Japan クラウドサポートアソシエイトの一員 AWS Community
Builder (Cloud Operations)
2023-11:ECS on FargateでSOCIの利用が現実的に 2023-07:提供開始(X86_64のみ + 全イメージでの利用が必須) https://aws.amazon.com/jp/about-aws/whats-new/2023/07/aws-fargate-container- startup-seekable-oci/ 2023-08:ARM64でも利用可能に https://github.com/aws/containers-roadmap/issues/2078
2023-11:一部イメージだけでも利用可能に https://aws.amazon.com/jp/about-aws/whats-new/2023/11/aws-fargate-amazon- ecs-tasks-selectively-leverage-soci/
2023-12:アプリAに導入 → 18%の起動高速化 環境 導入前 導入後 改善率 prod-app-a 71秒 58秒
18% SOCI Index BuilderスタックをTerraformで作成/更新できるように整備 ここまでの話は https://tech.enechange.co.jp/entry/2023/12/06/170306 で紹介 書いていなかったこと CTO室で運用している社内システムのため進めやすかった 起動時間はバラつきがあるので、あくまで目安
2024-01:アプリB/Cに導入 → 40~42%の起動高速化 サービス 導入前 導入後 改善率 prod-app-b 92秒 53秒
42% prod-app-c 136秒 82秒 40% 事業部に提案して導入 イメージ軽量化も実施(例:ベースイメージをrubyからruby:slimに変更) prod-app-b:57%の軽量化 prod-app-c:30%の軽量化
導入に際し、イメージタグを調整 環境 調整前 調整後 production 1.0.0 prod-1.0.0 staging stg-1.0.0 stg-1.0.0(そのまま)
SOCI Index Builderで対象が絞りやすくなる(例: app-b:prod-*,app-b:stg-* ) 「環境ごとにイメージ必要?」という疑問はなくもない
ENECHANGEでは、無条件で導入することに 導入した全アプリで起動が高速化、かつ、不具合なし もし不具合があっても、インデックス削除で対処可能
2024-02:新規構築のアプリDに導入 Elastic Beanstalkからの移行案件 ECS環境構築用の社内Terraformモジュールを使用(アプリA/B/Cでは未使用)
導入に際し、社内Terraformモジュールを調整 aws_ecr_lifecycle_policyリソースに、インデックス削除ルールを追加 イメージタグは下表の通り インデックス種別 イメージタグ イメージインデックス sha256- から始まる文字列 SOCIインデックス なし
2024-03:新規構築のアプリEに導入 モジュールの調整が済んでいたため、Terraformで簡単に完了
全アプリへの導入を進める予定 単純にアプリが多いため、まだまだ残っている とはいえやるだけ
まとめ 2023-11:ECS on FargateでSOCIの利用が現実的に 2023-12:アプリAに導入 → 18%の起動高速化 2024-01:アプリB/Cに導入 → 40~42%の起動高速化(イメージ軽量化も実施)
導入に際し、イメージタグを調整 ENECHANGEでは、無条件で導入することに 2024-02:新規構築のアプリDに導入 導入に際し、社内Terraformモジュールを調整 2024-03:新規構築のアプリEに導入 全アプリへの導入を進める予定