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のterraform運用tips/folio-terraform-operation...
Search
Shohei Koyama
October 02, 2019
Programming
2
4k
FOLIOのterraform運用tips/folio-terraform-operation-tips
こちらの登壇資料です
https://terraform-jp.connpass.com/event/142041/
Shohei Koyama
October 02, 2019
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.1k
FOLIOモバイルアプリのインフラ構成/folio-mobile-infra-architecture
sioncojp
3
2.3k
SSM+yamlを使って開発別に 暗号化したDBパスワードを読み込む / yamlssm-sample
sioncojp
2
2.6k
私が最近Mackerelでやったこと
sioncojp
1
4.9k
Go開発環境と勉強方法
sioncojp
0
430
MackerelでGetWild
sioncojp
4
7.5k
Other Decks in Programming
See All in Programming
WebエンジニアがSwiftをブラウザで動かすプレイグラウンドを作ってみた
ohmori_yusuke
0
170
非同期jobをtransaction内で 呼ぶなよ!絶対に呼ぶなよ!
alstrocrack
0
460
なぜGoのジェネリクスはこの形なのか? Featherweight Goが明かす設計の核心
ryotaros
7
1k
そのpreloadは必要?見過ごされたpreloadが技術的負債として爆発した日
mugitti9
2
2.8k
dynamic!
moro
9
5.7k
高度なUI/UXこそHotwireで作ろう Kaigi on Rails 2025
naofumi
4
3.1k
Pythonスレッドとは結局何なのか? CPython実装から見るNoGIL時代の変化
curekoshimizu
4
1.2k
メモリ不足との戦い〜大量データを扱うアプリでの実践例〜
kwzr
1
760
CSC509 Lecture 03
javiergs
PRO
0
320
Playwrightはどのようにクロスブラウザをサポートしているのか
yotahada3
7
2.2k
大規模アプリにおけるXcode Previews実用化までの道のり
ikesyo
0
990
タスクの特性や不確実性に応じた最適な作業スタイルの選択(ペアプロ・モブプロ・ソロプロ)と実践 / Optimal Work Style Selection: Pair, Mob, or Solo Programming.
honyanya
2
130
Featured
See All Featured
Balancing Empowerment & Direction
lara
4
670
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
657
61k
Faster Mobile Websites
deanohume
310
31k
The Art of Programming - Codeland 2020
erikaheidi
56
14k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
YesSQL, Process and Tooling at Scale
rocio
173
14k
Reflections from 52 weeks, 52 projects
jeffersonlam
352
21k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Designing for Performance
lara
610
69k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
610
Transcript
1 FOLIOͷterraformӡ༻tips 2019/10/02 Shohei Koyama Copyright © 2019 FOLIO Co.,
Ltd. All Rights Reserved.
自己紹介 ބࢁᠳฏ!TJPO@DPKQ ݩ'14ϓϩήʔϚʔͰΞδΞνϟϯϐΦϯ גࣜձࣾ'0-*043&
None
73 ⟎䟝植㹋 73 ⟎䟝植㹋 㼐 㼐 ؝أفٖ ؝أفٖ ❨鿪 ❨鿪
➂䊨濼腉 ➂䊨濼腉 鍑犜 ؕآظ鍑犜 ϑΥϦΦʮVRʯʮژʯͳͲɺ ଟ࠼ͳςʔϚΛ͑ΒΜͰࢿ͕ Ͱ͖ΔΦϯϥΠϯূ݊Ͱ͢ɻ σʔλαϯϓϧͰ͋Γɺকདྷͷӡ༻ՌΛࣔࠦຢอূ͢ΔͷͰ͋Γ·ͤΜɻ ۚ༥ͷऔҾʹ͓͍ͯɺגՁͷมಈʹΑΓଛࣦ͕ੜ͡Δ͓ͦΕ͕͋Γ·͢ɻৄࡉܖక݁લަॻ໘Λ͓ಡΈ͍ͩ͘͞ɻ גࣜձࣾFOLIO ۚ༥औҾۀऀ ؔ౦ࡒہʢۚʣୈ2983߸ɹՃೖڠձɿຊূ݊ۀڠձɺҰൠࣾஂ๏ਓຊࢿސۀڠձ
目次 UFSSBGPSNίϚϯυͷӡ༻ σΟϨΫτϦߏ มͷ֨ೲ UFSSBGPSNͷॻ͖ํ
શମઃܭϨϏϡʔ
UFSSBGPSNίϚϯυͷӡ༻
terraformコマンドの実行 ϩʔΧϧPSBUMBOUJT͔Β࣮ߦͰ͖·͢ ͲͪΒ.BLFpMFΛ௨࣮ͯ͠ߦͯ͠·͢ ϩʔΧϧTMBDL TʹBQQMZ݁Ռ͕Γ BUMBOUJTHJUMBC TʹBQQMZ݁Ռ͕Γ·͢
terraformバージョンの固定 .BLFpMFΛ௨ͯ͠UFSSBGPSNίϚϯυΛଧͭ͜ͱʹΑΓ ձࣾશମͰόʔδϣϯΛݻఆͯ͠·͢ ࠷ۙʹVQEBUF͕ͨ͠ɺॻ͕ࣜશ͘ҧ͏ͷͰ ݻఆͯ͠Α͔ͬͨͱࢥ͍·ͨ͠
atlantisとは? XFCIPPLΛհͯ͠UFSSBGPSNϓϧϦΫΤετΠϕϯτΛ Ϧοεϯ͢Δࣗݾϗετܕͷ(PΞϓϦέʔγϣϯ BUMBOUJTHJUMBCܦ༝ͰɺQMBO$*ͰࣗಈతʹߦΘΕ·͢ BQQMZίϝϯτʹ BUMBOUJTBQQMZͱॻ͚࣮ߦ͞Ε·͢
便利!
σΟϨΫτϦߏ
こんな感じ ʜBUMBOUJTΛ͏ͨΊͷZBNMɻ(PͰࣗಈੜͯ͠Δ ʜશମͰ͏มɻ*1ͱ͔TMBDLͷXFCIPPL63-ͱ͔ ʜࣗࣾNPEVMFT ʜUFSSBGPSNΛ͏ͨΊͷπʔϧΛ֨ೲɻશQMBO࣮ߦ͢ΔπʔϧೖͬͯͨΓ͢Δ ʜUFSSBGPSNEFTUSPZִ͚ͩͯ͠Δ ʜUFSSBGPSNίϚϯυΛ͜͜ʹམͱ࣮ͯ͠ߦͯ͠Δ ʜ͜͜ʹUFSSBGPSNίʔυΛ֨ೲ
envs/ ֤ΞΧϯτຖʹσΟϨΫτϦ͕͋Γ·͢
安全にapply ͳΔ͘BQQMZͷӨڹΛগͳ͘͢ΔͨΊͷσΟϨΫτϦʹͯ͠·͢ BQQMZʹ͕͔͔࣌ؒΔͱӨڹେ͖͘ɺ ৺ཧతʹྑ͘ͳ͍ɻɻ ͔ͱݴͬͯࡉ͔͘EJSΓա͗ͯΘ͔ΓͮΒ͘ͳΔ ͦ͜ͷ͍͍Ԙകܦݧͱؾ߹͍ ࢲΈΜͳ͕ӡ༻͘͢͠ͳΔͳ ΒUFSSBGPSNNWͳͲੵۃతʹ ͬͯมߋ͍͖ͯ͠·͢
มͷ֨ೲ
2種類 HMPCBMUGWBSTʜશମͰ͏มɻ*1$*%3ϝϧΞυ 4MBDLͷXFCIPPL63- QSPWJFSUGʜΞΧϯτ୯ҐͰ͏มɻ Α͘ΘΕΔEBUBTPVSDFͳͲɻHMPCBMUGWBSTͷ͜͜Ͱ ಡΈࠐΉɻ
自動生成 QSPWJEFSUGͱCBDLFOEUG.BLFpMFΛୟ͘ͱ͖ʹ ରσΟϨΫτϦʹࣗಈੜ͞Ε·͢ ͜ΜͳίϚϯυΛୟ͍ͯ·͢ ͪͳΈʹ.BLFpMFͳͷ֤ࣗϩʔ Χϧڥͷґଘ͕গͳ͍͔ΒͰ͢
UFSSBGPSNͷॻ͖ํ
よく私がするレビューコメント ͳͥͦͷᮢʹ͔ͨ͠ɺཧ༝ΛίϝϯτΞτʹॻ͖·͠ΐ͏ SFTPVSDFʹίϝϯτΞτΛॻ͖·͠ΐ͏ ࢀߟʹͨ͠هࣄͷ63-͕͋ΕίϝϯτΞτʹॻ͖·͠ΐ͏ ྫ͑ࣗ໌ͳͷͰ
ʹ͠·͠ΐ͏ JBNͷTUBUFNFOUͷ্ʹͳͥͦͷݖݶ͕ඞཁͳͷ͔ॻ͖·͠ΐ͏ SFTPVSDFBXT@JBN@SPMFlJBN@SPMF@IPHF SFTPVSDFBXT@JBN@SPMFlUIJTz SFTPVSDFBXT@JBN@SPMFlIPHF
運用するということ େࣄͳͷޙ͔Βೖࣾ͢ΔਓͰΘ͔ΔΑ͏ʹ͠·͠ΐ͏ UFSSBGPSNഁյతมߋଟ͘ߦ͍·͢ ग़དྷΔݶΓίϝϯτΛॻ͍ͯώϯτΛ༩͑ɺ ҆৺ײͱӡ༻ͷॿ͚Λ༩͍͑ͯ͘Α͏ʹͯ͠·͢
શମઃܭϨϏϡʔ
全体設計レビュー αʔϏεΛ࡞ΔࡍɺUFSSBGPSN৭ΜͳίϯϙʔωϯτΛࡉ͔͘ DPNNJUΛ͢ΔͨΊશମ૾͕ݟ͑ͳ͍͜ͱ͕ଟ͍Ͱ͢ ͳͷͰฐࣾ·ͣTUHͰಈ͔͢͜ͱΛҙࣝͯ͠ TUHޙͷશମઃܭதؒϨϏϡʔʹྗΛೖΕͯ·͢ ʢͳͷͰόϯόϯϨϏϡʔ͕௨͍͖ͬͯ·͢ʣ ϓϥϞσϧΈ͍ͨʂ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ 以上