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
3
2.4k
FOLIOモバイルアプリのインフラ構成/folio-mobile-infra-architecture
Shohei Koyama
November 27, 2018
Tweet
Share
More Decks by Shohei Koyama
See All by Shohei Koyama
成長をサポートするピープルマネジメントのやり方
sioncojp
11
2.9k
FargateでService,RunTask,Cronを運用する/fargate-service-runtask-cron-operation-tips
sioncojp
5
5.3k
FOLIOのterraform運用tips/folio-terraform-operation-tips
sioncojp
2
4k
SSM+yamlを使って開発別に 暗号化したDBパスワードを読み込む / yamlssm-sample
sioncojp
2
2.6k
私が最近Mackerelでやったこと
sioncojp
1
5k
Go開発環境と勉強方法
sioncojp
0
430
MackerelでGetWild
sioncojp
4
7.6k
Other Decks in Programming
See All in Programming
Rails Girls Sapporo 2ndの裏側―準備の日々から見えた、私が得たもの / SAPPORO ENGINEER BASE #11
lemonade_37
2
160
r2-image-worker
yusukebe
1
170
GraalVM Native Image トラブルシューティング機能の最新状況(2025年版)
ntt_dsol_java
0
140
問題の見方を変える「システム思考」超入門
panda_program
0
230
オフライン対応!Flutterアプリに全文検索エンジンを実装する @FlutterKaigi2025
itsmedreamwalker
2
210
2025 컴포즈 마법사
jisungbin
0
130
複数チーム並行開発下でのコード移行アプローチ ~手動 Codemod から「生成AI 活用」への進化
andpad
0
170
JEP 496 と JEP 497 から学ぶ耐量子計算機暗号入門 / Learning Post-Quantum Crypto Basics from JEP 496 & 497
mackey0225
2
280
FlutterKaigi 2025 システム裏側
yumnumm
0
1.1k
Dive into Triton Internals
appleparan
0
490
Eloquentを使ってどこまでコードの治安を保てるのか?を新人が考察してみた
itokoh0405
0
3.2k
Phronetic Team with AI - Agile Japan 2025 closing
hiranabe
2
600
Featured
See All Featured
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
2.9k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
9
970
Optimising Largest Contentful Paint
csswizardry
37
3.5k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.6k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
118
20k
A better future with KSS
kneath
239
18k
Navigating Team Friction
lara
190
15k
Six Lessons from altMBA
skipperchong
29
4.1k
RailsConf 2023
tenderlove
30
1.3k
For a Future-Friendly Web
brad_frost
180
10k
Building an army of robots
kneath
306
46k
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͚ͩ࡞ͬͯ͘ΕͨΒ͍͍ײ͡ͷΠϯ ϑϥ࡞ΔΑʂ + ࡞ͬͨޙ͋·Γ໘ݟͳͯ͘ྑ͍Πϯϑ ϥ ͱ͍͏ؾ࣋ͪͰͬͯ·ͨ͠
総評 ݁Ռɺͦͷ௨ΓʹͳͬͯΔͱࢥ͏ͷͰ ҆ఆͨ͠ྑ͍ӡ༻͕Ͱ͖ͯ·͢
総評 ͨͩ·ͩΔ͜ͱ͕͋ΔͷͰ ͜Ε͔Βվળ͍͖ͯ͠·͢
以上 ͋Γ͕ͱ͏͍͟͝·ͨ͠