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
3.8k
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
10
2.6k
FargateでService,RunTask,Cronを運用する/fargate-service-runtask-cron-operation-tips
sioncojp
5
4.7k
FOLIOモバイルアプリのインフラ構成/folio-mobile-infra-architecture
sioncojp
3
2.2k
SSM+yamlを使って開発別に 暗号化したDBパスワードを読み込む / yamlssm-sample
sioncojp
2
2.4k
私が最近Mackerelでやったこと
sioncojp
1
4.7k
Go開発環境と勉強方法
sioncojp
0
400
MackerelでGetWild
sioncojp
4
7.3k
Other Decks in Programming
See All in Programming
Nuxtベースの「WXT」でChrome拡張を作成する | Vue Fes 2024 ランチセッション
moshi1121
1
520
Universal Linksの実装方法と陥りがちな罠
kaitokudou
1
220
推し活の ハイトラフィックに立ち向かう Railsとアーキテクチャ - Kaigi on Rails 2024
falcon8823
6
2.2k
役立つログに取り組もう
irof
26
8.7k
讓數據說話:用 Python、Prometheus 和 Grafana 講故事
eddie
0
350
Vue.js学習の振り返り
hiro_xre
2
130
qmuntal/stateless のススメ
sgash708
0
120
GitHub Actionsのキャッシュと手を挙げることの大切さとそれに必要なこと
satoshi256kbyte
5
390
Kubernetes for Data Engineers: Building Scalable, Reliable Data Pipelines
sucitw
1
200
リリース8年目のサービスの1800個のERBファイルをViewComponentに移行した方法とその結果
katty0324
5
3.6k
弊社の「意識チョット低いアーキテクチャ」10選
texmeijin
5
23k
Golang と Erlang
taiyow
8
1.9k
Featured
See All Featured
Keith and Marios Guide to Fast Websites
keithpitt
408
22k
Scaling GitHub
holman
458
140k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
46
2.1k
How to Think Like a Performance Engineer
csswizardry
19
1.1k
Unsuck your backbone
ammeep
668
57k
Faster Mobile Websites
deanohume
304
30k
RailsConf 2023
tenderlove
29
880
Done Done
chrislema
181
16k
What's in a price? How to price your products and services
michaelherold
243
12k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
4
290
Product Roadmaps are Hard
iamctodd
PRO
48
10k
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ޙͷશମઃܭதؒϨϏϡʔʹྗΛೖΕͯ·͢ ʢͳͷͰόϯόϯϨϏϡʔ͕௨͍͖ͬͯ·͢ʣ ϓϥϞσϧΈ͍ͨʂ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ 以上