Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ランニングコストやっべぇぞ!ECS/FargateでECRへのアクセスについて
Search
honma
May 24, 2023
Programming
30
6.1k
ランニングコストやっべぇぞ!ECS/FargateでECRへのアクセスについて
Qiita Night~AWS vol.2~
2023/05/24
honma
May 24, 2023
Tweet
Share
More Decks by honma
See All by honma
AWS IoT Coreのポリシー活用を熱く語ろう
honma12345
5
560
AWSを活用した ドローンIoTソリューション
honma12345
0
360
複数AWSアカウントに リソース構築する時 どうしてますか?
honma12345
1
2.8k
【再学習】リアルガチでCloudWatchを有効活用してますか?
honma12345
0
1.6k
自然言語解析AIサービス Dialogflowの紹介
honma12345
0
190
AWS IoT Coreを利用したドローンの実例
honma12345
0
740
AWS認定資格を8ヶ月で12冠達成した勉強法
honma12345
0
780
Other Decks in Programming
See All in Programming
開発に寄りそう自動テストの実現
goyoki
2
1.4k
AI 駆動開発ライフサイクル(AI-DLC):ソフトウェアエンジニアリングの再構築 / AI-DLC Introduction
kanamasa
11
4k
안드로이드 9년차 개발자, 프론트엔드 주니어로 커리어 리셋하기
maryang
1
140
Canon EOS R50 V と R5 Mark II 購入でみえてきた最近のデジイチ VR180 事情、そして VR180 静止画に活路を見出すまで
karad
0
140
Rubyで鍛える仕組み化プロヂュース力
muryoimpl
0
180
Vibe codingでおすすめの言語と開発手法
uyuki234
0
120
GoLab2025 Recap
kuro_kurorrr
0
780
C-Shared Buildで突破するAI Agent バックテストの壁
po3rin
0
420
HTTPプロトコル正しく理解していますか? 〜かわいい猫と共に学ぼう。ฅ^•ω•^ฅ ニャ〜
hekuchan
2
460
組み合わせ爆発にのまれない - 責務分割 x テスト
halhorn
1
160
ELYZA_Findy AI Engineering Summit登壇資料_AIコーディング時代に「ちゃんと」やること_toB LLMプロダクト開発舞台裏_20251216
elyza
2
630
AIコーディングエージェント(Manus)
kondai24
0
220
Featured
See All Featured
AI: The stuff that nobody shows you
jnunemaker
PRO
1
24
Ruling the World: When Life Gets Gamed
codingconduct
0
100
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
280
Designing for Timeless Needs
cassininazir
0
93
My Coaching Mixtape
mlcsv
0
13
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
170
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
1
210
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
520
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
1.8k
WENDY [Excerpt]
tessaabrams
8
35k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
359
30k
Code Review Best Practice
trishagee
74
19k
Transcript
ランニングコストやっべぇぞ! ECS/FatgateでECRへのアクセスについて 2023/05/24 アイレット株式会社 本間 崇平 Qiita Night ~AWS vol.2~
自己紹介 本間 崇平 アイレット株式会社 アジャイル事業部 Shuhei Honma 2018年アイレット入社(平成最後の新卒) AWS歴5年 Web・IoTのサーバーサイドエンジニア
よく使うAWS: Amplify, Lambda, DynamoDBなどのサーレス郡 2022,2023受賞
1. 【前置き】今回お話するAWSリソースについて ◦ Fargate ◦ ECR ◦ NAT Gateway 2.
実際にあった話 3. どうするべきだったのか 4. まとめ 本日話すこと
Fargateについて
Fargateとは Fargateとは、コンテナ向けサーバーレスコンピューティング OSメンテナンス等の管理が不要 • AWSマネージドサービス ◦ EC2に比べてインスタンスのプロビジョン、スケール、管理不要 • 従量制料金のコンピューティングエンジン •
ECSやEKSで動作する • 要件によって、Lambda以上EC2未満であれば採択 • コスト最適化するうえで選択肢の1つ
ECRについて
ECR(Elastic Container Registry)とは ECRとは、フルマネージドDockerコンテナレジストリ コンテナソフトウェアを簡単に保存、共有、デプロイ • インフラ運用やスケーリングが不要 • 高耐久性・可用性 •
HTTPS経由で転送。保管時に自動で暗号化 • シンプルなワークフロー • ECRリポジトリにPushしたイメージを Fargate(ECS)で起動できる
NAT Gatewayについて
NAT Gatewayとは NAT Gatewayとは プライベートサブネット内からインターネットへ接続 • アベイラビリティーゾーン(AZ)別に作成 • VPC内に構成したインターネット接続できない プライベートシステムがNATGateway経由で
インターネットに出れることが可能に • 例えば、LambdaからIP制限された システムへアクセスするときに使える
ということで
実際にあった話
こんなアプリケーションを開発した • Lambdaなどのサーバーレスアーキテクチャ採用 • 納期スケジュールが短いため、早めに開発進める必要があった • アプリからデータを受信するAPIを開発 • データをもとに集計するバッチ機能を開発 •
集計機能は一定間隔でバッチ実行(Fargate) 実際にあった話
構築/実装したAWSアーキテクチャ(一部)
問題点
問題点 ~ランニングコスト~ • ECRがVPC外にあるため、NAT Gateway経由でインターネット仲介し ECRへアクセスをしていた • 急激なアクセスによってデータ転送が突発した時 ECSも一定間隔で起動していたのでNAT Gatewayの処理データも増えて
しまった • 冗長構成をとったうえでのNAT Gatewayも2つ用意することで 料金が更に倍
色々反省点あった • 開発優先重視して後先のこと考えず。。。 • アクセス過多の時、集計は100万件近いデータ処理が発生 • アクセス集中してない時でもランニングコストがかかっていた そもそもECSから外部インターネットへアクセスする必要なくない?
• Asia Pacific (Tokyo) ◦ NAT Gatewayあたりの料金 $0.062(時) ◦ 処理データ1GBあたりの料金
$0.062 • 例: $0.062 per NAT Gateway Hourだと ◦ 31日(744時間)×$0.062×2本(冗長構成分)= $92.256(税抜 約12,000円) • 例: $0.062 per GB Data Processed by NAT Gatewaysだと ◦ 2000GB(31日分の処理データ)×$0.062×2本(冗長構成分)= $248(税抜 約34,000円) NATGatewayの利用だけで合算すると毎月46,000円のランニングコスト NAT Gatewayコスト算出例
うおおおおおおおお
どうするべきだったのか
どうするべきだったのか VPC Endpoint(PrivateLink)を採用するべきだった
VPC Endpointとは VPCと他サービス間でプライベート接続を提供できる • VPCコンポーネント(仮想デバイス)である • VPC内のサービスとVPC外のサービスを プライベートに接続通信できる • セキュリティ上でインターネット接続せずに繋げれる
VPC Endpointを利用した場合のコスト算出例 • Asia Pacific (Tokyo) ◦ 各AZ VPC Endpoint
1つあたりの料金 $0.014(時) ◦ 処理データ1GBあたりの料金 ▪ リージョンで1ヶ月に処理されるデータ最初の1PBで $0.01 • 例: $0.014 per VPC Endpoint Hourだと ◦ 31日(744時間)×$0.014×2本(冗長構成分)= $20.832(税抜 約2,800円) • 例: $0.01 リージョンで1ヶ月に処理されるデータ1PB未満 ◦ $ 0.01(税抜 約1円) VPCEndpointの利用だけで合算すると毎月 2,800円で済む
あるべき姿のAWSアーキテクチャ(こうあるべきだった)
まとめ
まとめ 設計時で考慮しておかないと 運用コストが....
やっべぇぞ!
とにかく言いたいこと ドキュメントを読むのは当たり前だが 運用コストも算出しておこう
さいごに AWSの責はほぼない 設計・実装したお前の責である
完