terraform meetup tokyo#3 https://terraform-jp.connpass.com/event/153286/
ಥܸʂྡͷ TerraformTakeshi Kondo / @chaspy2019/12/02Terraform Meetup Tokyo#3
View Slide
tl;dr• KyashɾϝϧΧϦͷ Terraform ͷӡ༻ΛώΞϦϯά͠ʹಥܸͨ͠• ඇৗʹֶͼ͕ଟ͔ͬͨͷͰɺಠΓΊͤͣɺίϛϡχςΟʹؐݩ͍ͨ͠• ͏ͪʹಥܸ͠ʹ͖ͯͶʂ
Background• https://gist.github.com/suzuki-shunsuke/0f6f602571920e95be279044c2f44ea8• 2 repositories, 3 states• Japan / Global• Production / Staging / Manage• ୭Ͱ PR Λ͛ΒΕΔঢ়گͰ͋Δɺ͕ɺɺɺ• Өڹൣғ͕େ͖͍• Release branch ӡ༻ʹݶք͕ݟ͖͑ͯͨ• SRE Λհͣ͞ Devs ͕ࣗ༝ʹ merge & release ͯ͠΄͍͠• Splitting State• Delegation to devs
Background
https://twitter.com/chaspy_/status/1187601882245582848
❗
Kyash https://kyash.co/company/
Kyash • @lamanotrama ͞Μʢݩฐࣾ Senior SREʣ• workspace Λ༻• ։ൃɾຊ൪͕Ұக͍ͯ͠Δ͜ͱΛώΞϦϯάͰ֬ೝ• remote stateͷ key check ࣗಈԽ• moduleԽͷࡍͷTips• module ͷ෦͕͋·ΓมΘΒͳ͍ͱ֬৴Ͱ͖Δͷ• ෳࡶͳ༷Λ module ʹ͠ͳ͍• State ࣗମΛ͚͍ͯΔͷͰ module Խ͢Δ͜ͱͰ DRYʹͳΒͳ͍
mercari https://about.mercari.com/about/
mercari • @deeeet ͞Μ / @dtan4 ͞Μ• https://gist.github.com/tcnksm/7b430f7955beac1ebb5b4d2fb26b40f7• GitHub flow• ಉ࣌ʹ1 service ͔͠มߋͰ͖ͳ੍͍• Master branch Ͱͷ CI ඞͣ 1 service ͷΈ͕ Apply• ৽αʔϏε࡞࣌ʹ bootstrap Λ༻ҙ• microservices starter kit module• template_dir Λ༻͍࣭ͯʹ͑Δͱࣗಈੜ• Stein ʹΑΔ lint
Future work By @suzuki-shunsuke• Conftest ʹΑΔ state ͷ Lint• Remote state ͷ key ͷ Lint• Kubernetes ͷ manifest ςετͰ͖Δ• Service domain ୯ҐͰͷׂத• ڞ௨ɾωοτϫʔΫϦιʔεͷґଘϋʔυίʔυ• Application in monorepo ͷ໊લͱҰகͤ͞Δ• Service ͱͦΕΒ͕ར༻͢Δ Infrastructure Կ͔͠ΒͷنͰҰகͤ͞Δඞཁ͕͋Δͱஅ
͓͠·͍• ֶͼ͕ଟ͔ͬͨͷͰಥܸศར • ઈࢍ state ׂத • Terraform ӡ༻ʹ͍ͭͯฉ͖͍ͨ͜ͱ͕͋ͬͨΒ͍ͭͰ༡ͼʹ͖͍ͯͩ͘͞
Thank You!chaspychaspy_Site Reliability EngineerTakeshi KondoSRE Lounge Terraform-jp