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
Fargateのプロダクション導入で得られた経験と知見
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
k-masatany
September 06, 2018
Technology
610
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Fargateのプロダクション導入で得られた経験と知見
Developers Summit 2018 FUKUOKA 登壇資料
k-masatany
September 06, 2018
More Decks by k-masatany
See All by k-masatany
Password-less Web applications created with WebAuthn.
kensukemasatani
2
1.8k
物理層のこと、時々でいいから、思い出してください。
kensukemasatani
0
1.7k
Other Decks in Technology
See All in Technology
クラウド上のデータ復旧で見落としがちな制約: 医療系 SaaS の BCP 設計から得た教訓
kakehashi
PRO
0
3.5k
シンガポールで登壇してきます
yama3133
0
130
あなたの『Site』はどこですか? — xREという考え方
miyamu
0
1.2k
Claude Codeとハーネスについて考えてみる
oikon48
19
9.5k
ポストモーテム! DDoSからサイトは守れた。 でもビジネスは守れなかった。
bengo4com
1
3k
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
15
110k
Foxgloveについて 実際にExtensionを開発して公開するまでの話 / About Foxglove: The Story of Developing and Releasing an Extension
ry0_ka
0
250
End-to-Endで考える信頼性 —LINEアプリにおけるクライアント開発×SRE連携の実践
maruloop
4
4.2k
SRE Lounge Hiroshimaへの招待
grimoh
0
650
「最後に責任を取るのはチーム」— 人間のPRレビューを最小化してアップデートしたメンタルモデル
jnishime_dresscode
0
680
依頼文化をやめる日 EM視点で語るPlatform EngineeringとInclusive SRE / Discussing Platform Engineering and Inclusive SRE from an EM's Perspective
shin1988
4
5.5k
穢れた技術選定について
watany
10
840
Featured
See All Featured
Amusing Abliteration
ianozsvald
1
220
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.3k
エンジニアに許された特別な時間の終わり
watany
107
250k
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.9k
Become a Pro
speakerdeck
PRO
31
6k
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.3k
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
150
Building Applications with DynamoDB
mza
96
7.1k
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
300
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.2k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.5k
A Soul's Torment
seathinner
6
3.1k
Transcript
Fargate のプロダクション導入で Fargate のプロダクション導入で 得られた経験と知見 得られた経験と知見 Developers Summit 2018 FUKUOKA
Developers Summit 2018 FUKUOKA 政谷 賢祐(@k_masatany) 2018.09.06
whoami whoami 株式会社Fusic 政谷 賢祐 @k_masatany Kensuke Masatani 技術開発部 エンジニア
https://k‑masatany.hatenablog.com/
whoami whoami 株式会社Fusic 政谷 賢祐 @k_masatany Kensuke Masatani 技術開発部 エンジニア
https://k‑masatany.hatenablog.com/
None
色々サービスも展開しています
今回発表する内容は 今回発表する内容は Fusic が AWS の技術支援をする案件の中で Fusic が AWS の技術支援をする案件の中で
得られた知見をまとめたものです 得られた知見をまとめたものです
支援先 支援先
株式会社YAMAP さん https://yamap.co.jp/
YAMAP さんもエンジニアを募集しています。 https://yamap.co.jp/
宣伝終わり 宣伝終わり
お詫び お詫び 7分という短い時間なので、 AWSやECSの基本的な知識についての 説明や補足はほとんどありません。
Fargate Fargate
AWS Fargate AWS Fargate Amazon ECS や EKS 上でコンテナを実行するためのサービス 今年の
7 月に東京リージョンで利用可能に 正確に言うとFargate 起動タイプと言う コンテナの実行に(自分たちが管理する)EC2が不要
これまでの EC2 起動タイプ これまでの EC2 起動タイプ
この EC2 はユーザーの管理下にある この EC2 はユーザーの管理下にある
コンテナだけ使いたいけどサーバー管理が必要 コンテナだけ使いたいけどサーバー管理が必要
Fargate Fargate でどうなったか でどうなったか
Fargate 起動タイプ Fargate 起動タイプ
管理する EC2 がなくなった(EC2 自体は存在する) 管理する EC2 がなくなった(EC2 自体は存在する)
いいことばかりではないです いいことばかりではないです
運用する中で見えてきた 運用する中で見えてきた メリット/デメリット メリット/デメリット
メリット メリット クラスタマネジメントが不要になる(可能性がある) ブルー/グリーンデプロイ用の冗長リソースが不要 すでに ECS 環境がある場合の移行コストはかなり低い デメリット デメリット ハイスペックなインスタンスが必要な要件の場合は使えない
EFS や S3 のマウントができない(2018 年 9 月 6 日現在) 単純な比較をするとコストが高い 問題発生時の切り分けが難しい
メリット メリット
クラスタマネジメントが不要になる クラスタマネジメントが不要になる (可能性がある) これまではEC2の状況も管理する必要があった これまではEC2の状況も管理する必要があった クラスタインスタンスの空きリソースの確認 各インスタンスへのタスクの分散 インスタンスのスケールとタスクのスケールの調整
クラスタマネジメントが不要になる クラスタマネジメントが不要になる (可能性がある) Fagateの場合は Fagateの場合は そもそも管理するインスタンスが無い 1タスク1インスタンスなので分散は考えなくてよい アプリケーションオートスケーリングで 比較的簡単にスケールイン/アウトできる
ブルー/グリーンデプロイ用の ブルー/グリーンデプロイ用の 冗長リソースが不要 冗長リソースが不要 EC2起動タイプ ブルー/グリーンデプロイを実行するためには 一時的に2倍の容量が必要だった Fargate起動タイプ 新しいコンテナイメージでタスクを起動するだけでOK
すでに ECS 環境がある場合の すでに ECS 環境がある場合の 移行コストはかなり低い 移行コストはかなり低い 既に ECS
を使っている環境があれば、 ほぼノーコストでFargateへの移行ができると思う 実際にEC2起動タイプからFargate起動タイプへ 移行した際の検証~移行までの実働時間は2 ~ 3日程度
デメリット デメリット
ハイスペックなインスタンスが ハイスペックなインスタンスが 必要な要件の場合は使えない 必要な要件の場合は使えない Fargate で用意されているリソースは今の所下記の通り CPU メモリ 0.25 vCPU
0.5 GB、1 GB、および 2 GB 0.5 vCPU 最低1 GB および最大4 GB (1 GB 単位) 1 vCPU 最低2 GB および最大8 GB (1 GB 単位) 2 vCPU 最低4 GB および最大16 GB (1 GB 単位) 4 vCPU 最低8 GB および最大30 GB (1 GB 単位)
ハイスペックなインスタンスが ハイスペックなインスタンスが 必要な要件の場合は使えない 必要な要件の場合は使えない CPU自体もC系に比べ貧弱なので、数値以上に処理能力が落ちる CPU メモリ 0.25 vCPU 0.5
GB、1 GB、および 2 GB 0.5 vCPU 最低1 GB および最大4 GB (1 GB 単位) 1 vCPU 最低2 GB および最大8 GB (1 GB 単位) 2 vCPU 最低4 GB および最大16 GB (1 GB 単位) 4 vCPU 最低8 GB および最大30 GB (1 GB 単位)
EFS や S3 のマウントができない EFS や S3 のマウントができない (2018 年
9 月 6 日現在) (2018 年 9 月 6 日現在) 永続化データを保持する為に EFS や S3 を使いたい EC2起動タイプであれば、ベースのインスタンスに 手を加えることで実現できる Fargate起動タイプではベースのインスタンスに 手を加えることができないため、 EFS等をマウントすることができない。 将来的には起動オプションに付いてくると思っている
単純な比較をするとコストが高い 単純な比較をするとコストが高い 単純に同じスペックのEC2に比べ、 時間当たりの単価が高い(1.5倍くらい) RIも無いため、さらに価格差が開く ただ、時間の経過と共にコストは下がっていくと思う RIも来ると思う(願望)
問題発生時の切り分けが難しい 問題発生時の切り分けが難しい 開発者がログインできるサーバーがないので、 検証中に SSH ‑> dockerᅠexec ができない 踏み台コンテナを用意するなどの細工が必要 安定するまでは中々しんどいと思う
他にも制約がちらほら 他にも制約がちらほら awsvpcモードなのでsubnet内のIPの数以上の タスクを起動できない ENIがtask一つ一つにアタッチされる タスクの起動時間はそれほど早くない
考えることは多いですが 考えることは多いですが きちんと考えて構築すれば きちんと考えて構築すれば 運用はぐっと楽になります 運用はぐっと楽になります
まとめ まとめ Fargate は「銀の弾丸」ではない 今の所、制約は色々と付いているが、 要件が噛み合えば、運用を意識しなくて良い環境を作れる サービスの成熟が非常に待ち遠しいサービスだと思った
謝辞 謝辞
株式会社 YAMAP 様 株式会社 YAMAP 様 支援業務で得られた内容を発表することを 支援業務で得られた内容を発表することを 許可していただきありがとうございます 許可していただきありがとうございます
Fusic CO.,LTD. ご静聴ありがとうございました ご静聴ありがとうございました 株式会社 Fusic はテクノロジーが大好きな エンジニアを募集しています https://fusic.github.io https://fusic.github.io