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
FOLIOモバイルアプリのインフラ構成/folio-mobile-infra-archit...
Search
Shohei Koyama
November 27, 2018
Programming
2.4k
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
FOLIOモバイルアプリのインフラ構成/folio-mobile-infra-architecture
Shohei Koyama
November 27, 2018
More Decks by Shohei Koyama
See All by Shohei Koyama
成長をサポートするピープルマネジメントのやり方
sioncojp
11
3k
FargateでService,RunTask,Cronを運用する/fargate-service-runtask-cron-operation-tips
sioncojp
5
5.5k
FOLIOのterraform運用tips/folio-terraform-operation-tips
sioncojp
2
4.2k
SSM+yamlを使って開発別に 暗号化したDBパスワードを読み込む / yamlssm-sample
sioncojp
2
2.7k
私が最近Mackerelでやったこと
sioncojp
1
5.1k
Go開発環境と勉強方法
sioncojp
0
450
MackerelでGetWild
sioncojp
4
7.7k
Other Decks in Programming
See All in Programming
SLOをサービス品質の共通言語にするために 取り組んできたこと
wakana0222
0
480
霧の中の代数的エフェクト
funnyycat
1
340
【やさしく解説 設計編・中級 #6】良いアーキテクチャとは ~ 一本の登り道の、行き先 ~
panda728
PRO
0
150
なぜ型を書くのか? TSKaigi2026で改めて考える #tskaigi_smarthr
kajitack
0
340
ECSアプリログをFireLensでコスト削減しようとしたけど諦めた話 in Fargate×Node.js
akihisaikeda
2
4.3k
自作OSでスライド発表する
uyuki234
1
3.8k
【やさしく解説 設計編・中級 #4】ルールの寿命と、システムの年輪
panda728
PRO
2
120
JAWS-UG横浜 #102 AWSサ終供養LT会 成仏できない AWS サービスたち 〜本日、三体供養します〜
maroon1st
0
110
『コードを書く以外の』エンジニアリング〜課金基盤移行プロジェクト推進のためのTips4選
yuriko1211
0
390
なぜ関数型プログラミングで「型」と「証明」が語られるのか #fp_matsuri
kajitack
3
800
20260623_Loop Engineeringで自分の分身の問い合わせBotを作る
ryugen04
0
200
スマートグラスで並列バイブコーディング
hyshu
0
290
Featured
See All Featured
Visualization
eitanlees
152
17k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.4k
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
11k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.8k
My Coaching Mixtape
mlcsv
0
170
Scaling GitHub
holman
464
140k
YesSQL, Process and Tooling at Scale
rocio
174
15k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
Reality Check: Gamification 10 Years Later
codingconduct
0
2.2k
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
320
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
210
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
190
Transcript
FOLIOϞόΠϧΞϓϦͷ Πϯϑϥߏ גࣜձࣾFOLIO / Site Reliability Engineer ބࢁ ᠳฏ(@sion_cojp)
ބࢁ ᠳฏ / @sion_cojp ݩFPSϓϩήʔϚʔͰΞδΞνϟϯϐΦϯ גࣜձࣾFOLIO / SRE 自己紹介
- ߏ - σϓϩΠ - ηΩϡϦςΟ - ϩά - ϞχλϦϯά
- ϝϯςφϯεը໘ - ͦͷଞ 目次
None
73 ⟎䟝植㹋 73 ⟎䟝植㹋 㼐 㼐 ؝أفٖ ؝أفٖ ❨鿪 ❨鿪
➂䊨濼腉 ؕآظ鍑犜 ϑΥϦΦʮVRʯʮژʯͳͲɺ ଟ࠼ͳςʔϚΛ͑ΒΜͰࢿ͕ Ͱ͖ΔΦϯϥΠϯূ݊Ͱ͢ɻ σʔλαϯϓϧͰ͋Γɺকདྷͷӡ༻ՌΛࣔࠦຢอূ͢ΔͷͰ͋Γ·ͤΜɻ ۚ༥ͷऔҾʹ͓͍ͯɺגՁͷมಈʹΑΓଛࣦ͕ੜ͡Δ͓ͦΕ͕͋Γ·͢ɻৄࡉܖక݁લަॻ໘Λ͓ಡΈ͍ͩ͘͞ɻ גࣜձࣾFOLIO ۚ༥औҾۀऀ ؔ౦ࡒہʢۚʣୈ2983߸ɹՃೖڠձɿຊূ݊ۀڠձɺҰൠࣾஂ๏ਓຊࢿސۀڠձ
ϞόΠϧΞϓϦपΓͷΠϯϑϥΛ հ͠·͢ 本スライドは
ߏਤ
構成図
3छྨͷterraform moduleͰߏ - ALB - Fargate - Sorry module便利 Route53は
module使ってません
ALB module
Fargate module
Sorry module
moduleԽͨ͜͠ͱͰɺDockerfile͑͋͞Ε FargateͷαʔϏε্ཱ͕͙ͪ͛͢ΕΔ ͜ͷߏͰɺstage1CPU, MEM: 2Gͷίϯςφ1ӡ༻ Ͱ$15/day ͘Β͍Ͱ͢ ӡ༻ίετΛߟ͑Δͱ͓ಘͩͱࢥ͍·͢ ʢΠϯϑϥ΄΅ݟͯͳ͍ʣ 構成について一言
σϓϩΠ
こんな感じ
デプロイツール slack-deployͱ͍͏Goͷchatopsπʔϧ slackͰinteractiveʹબ ͦΕΛݩʹฒྻॲཧͰEC2্ͰίϚϯυΛ࣮ߦ ݱࡏ۪ʹaws cli͕ॻ͔ΕͨεΫϦϓτΛ࣮ ߦͤͯ͞·͕͢ɺ Fargate༻ͷdeployπʔϧΛGoͰ࡞த
chatops周りの構成図 ECRは一つのアカウントで 全てのイメージを管理
slack-deployのconfig一部 github.com/sioncojp/tomlssm を使ってdecryptさせてます
余談 ͪΖΜslack-deployͷdeployslack-deploy
ηΩϡϦςΟ
セキュリティ SSHଘࡏ͠·ͤΜ IAMϧʔϧ࠷খݶʹߜͬͯ·͢ sshなくても苦労はない むしろ安心感
セキュリティ ίϯςφ੬ऑੑanchoreͱ͍͏αʔϏε ΛϩʔΧϧͰಈ͔ͤΔΑ͏ʹͯ͠அ ECRの機能として早く欲しい!
ϩά
ログ
ログ Fargateͷlog driverCloudwatch͚ͩͰ͢ Cloudwatch͔Βੜϩά:s3 ͱ ϦΞϧλΠϜϩά: datadog logsʹग़ྗ͢Δmodule Λ࡞ͬͯӡ༻ͯ͠·͢ ʢtargetʹcloudwatchͷlog
groupΛࢦఆ͢Δ͚ͩʣ
ログ - moduleはこんな感じ - σʔλΛfirehoseʹ์ΓࠐΉ: cloudwatch -> kinesis firehose -
datadog logsʹग़ྗ: lambda - ੜϩάอଘ s3ʹग़ྗ: firehose
ϞχλϦϯά
モニタリング externalࢹಉ͡Α͏ʹFargateͰ DatadogΛཱͯͯɺ͔ͦ͜Βࢹͯ͠·͢ internalࢹDatadogͰɺ terraformͰཧͯ͠·͢ 12月のパブリックβで Datadogの機能として使える らしいよ!
ϝϯςφϯεը໘
メンテナンス画面 લஈͷwafͰ͔ࣾΒͷΞΫηεͷΈڐՄ ϝϯςφϯεը໘s3ʹอ͞Εͨ503.json ͷσʔλΛΞϓϦʹฦ٫
メンテナンス画面のON/OFFもslackから
ͦͷଞ
ドキュメント ߏਤΠϯϑϥܥͷใαʔϏεଆͷ ϦϙδτϦʹೖΕͯ·͢ terraformίϝϯτΛత֬ʹ͢ྗ υΩϡϝϯτྨ͕શͯgit্ʹ͋Δҙࣝ ʢconfluenceͳͲͦͷଞۃྗΘͳ͍ʣ
サービス側のREADME.md draw.ioのxmlも保管
terraformのコメント集 dataやresourceの上の行には自 明でもコメントを入れてます
リリース前確認 https://landing.google.com/sre/sre-book/chapters/ launch-checklist/ ΛϕʔεʹಠࣗʹνΣοΫϦετΛఆٛ͠ ϦϦʔεલͷ֬ೝΛSRE + αʔϏε୲ऀͰͬͯ ·͢ ref: https://gist.github.com/sioncojp/57d672fff1a35f3a10dd12526d54afbb
チェックリストの一部
メディア露出等のスパイク対応 + ஆػਃ
コンテナ運用最高! ؆୯ʂָνϯʂ
総評 Dockerfile͚ͩ࡞ͬͯ͘ΕͨΒ͍͍ײ͡ͷΠϯ ϑϥ࡞ΔΑʂ + ࡞ͬͨޙ͋·Γ໘ݟͳͯ͘ྑ͍Πϯϑ ϥ ͱ͍͏ؾ࣋ͪͰͬͯ·ͨ͠
総評 ݁Ռɺͦͷ௨ΓʹͳͬͯΔͱࢥ͏ͷͰ ҆ఆͨ͠ྑ͍ӡ༻͕Ͱ͖ͯ·͢
総評 ͨͩ·ͩΔ͜ͱ͕͋ΔͷͰ ͜Ε͔Βվળ͍͖ͯ͠·͢
以上 ͋Γ͕ͱ͏͍͟͝·ͨ͠