https://lancersrecruit.connpass.com/event/221994/ #Lancers_SUPERSTUDIO
【Lancers x SUPER STUDIO】Engineer Meetup #1 でのLT資料となります。
2021/09/8ʲLancers x SUPER STUDIOʳ Engineer Meetup #1Terraform v0.12.29 → v1.0.5ʹόʔδϣϯΞοϓ͢Δ্ͰؾΛ͚ͭΔ͜ͱϥϯαʔζגࣜձࣾ SRE/҆ୡ ྋ
View Slide
2021/09/8ʲLancers x SUPER STUDIOʳ Engineer Meetup #1ΞδΣϯμ ɾࣗݾհɾഎܠɾ֤αʔϏεͱDeployαʔόʔʹ͍ͭͯɾCircleCI x TerraformɾόʔδϣϯΞοϓͷྲྀΕɹɾv0.12.29 → v1.0.5ɾΤϥʔରԠʹ͍ͭͯɾv1.0.0(GA)ͷϦϦʔεɾv1.0.5(࠷৽)όʔδϣϯΞοϓͯ͠Έͯɾ·ͱΊ
2021/09/8ʲLancers x SUPER STUDIOʳ Engineer Meetup #1ࣗݾհ
2021/09/8ʲLancers x SUPER STUDIOʳ Engineer Meetup #1ࣗݾհ ɾ҆ୡ ྋ(adachin)ɾLancers SRE 2018/5~ɾ@adachin0817ɾRVIRUS0817ɾblog.adachin.meɾwiki.adachin.meɾݸਓ։ൃɾήʔϜ࣮گYouTuber
2021/09/8ʲLancers x SUPER STUDIOʳ Engineer Meetup #1ͪͳΈʹpartᶃ
2021/09/8ʲLancers x SUPER STUDIOʳ Engineer Meetup #1ͪͳΈʹ partᶃ ɾSUPER STUDIO 2014~ɾCROਅ͞Μͱݩಉ྅ɾ࣌ecforceϦϦʔε͔ͨͬ͠ɹɾΦϑΟεӬాொɾΤϯδχΞ͕͜Ε͔Βू·Δ࣌ظɾٕज़ϑΥϩʔɾPC͕֮ͯͨ͑͋͠ΔɾݱࡏCM·Ͱߦͳ͍ͬͯΔͷͰײಈɾҎલ͔Βษڧձ࣮ࢪ͔ͨͬͨ͠ʂ
2021/09/8ʲLancers x SUPER STUDIOʳ Engineer Meetup #1ͪͳΈʹpartᶄMENTAͰ..
2021/09/8ʲLancers x SUPER STUDIOʳ Engineer Meetup #1ͪͳΈʹ partᶄ ɾΠϯϑϥ/αʔόʔ ίʔνϯάɾMENTAϥϯΩϯάɹɾ4Ґʂɾྦྷܭ189ਓʂ ɹɾۦ͚ग़͠ΤϯδχΞϑΥϩʔɹɾస৬࣮ଟ༗Γ
2021/09/8ʲLancers x SUPER STUDIOʳ Engineer Meetup #1όʔδϣϯΞοϓͷഎܠ
2021/09/8ʲLancers x SUPER STUDIOʳ Engineer Meetup #1όʔδϣϯΞοϓͷഎܠ ɾTerraformͷόʔδϣϯv0.12.29ͷ··։ൃɹɾv0.12ܥ2019ϦϦʔεɾࠓͷ3݄ͰάϧʔϓձࣾͷAWSҠߦ͕ྃͨ͠ɹɾLancers Creative(Rails)ɹɾPROsheet(CakePHP) ɹɾLancers Agent(CakePHP) ɹɾMENTA(Laravel)ɾ4݄ʹv0.15.0͕ϦϦʔε͞ΕΔ ɹɾ͕͢͞ʹةػײɾόʔδϣϯΞοϓΛܾߦʂʂ😇
2021/09/8ʲLancers x SUPER STUDIOʳ Engineer Meetup #1֤αʔϏεͱDeployαʔόʔͷׂʹ͍ͭͯͦͷલʹ
2021/09/8ʲLancers x SUPER STUDIOʳ Engineer Meetup #1֤αʔϏεͱDeployαʔόʔʹ͍ͭͯ ɾTerraformͷཧ(AWSͷΞΧϯταʔϏε͝ͱʹׂ) ɾDeployαʔόʔ(EC2)ɹɾ֤σΟϨΫτϦ͝ͱʹϦϙδτϦΛஔɾԼهαʔϏεશϦιʔεTerraformԽɹɾLancers CreativeɹɾPROsheet ɹɾLancers Agent ɹɾMENTAɹɾͯ͢ECS/FargateʹΑΔίϯςφͰӡ༻ɾLancersຊମҰ෦TerraformԽɹɾࠓޙimport͢Δ༧ఆ
2021/09/8ʲLancers x SUPER STUDIOʳ Engineer Meetup #1CircleCI x Terraform
2021/09/8ʲLancers x SUPER STUDIOʳ Engineer Meetup #1CircleCI x Terraform ɾCI/CDͯ͢CircleCIΛར༻ɾCircleCI x Terraformɹɾterraform validateɹɾterraform planɹɾpush࣌ʹSlack௨(Τϥʔ)ɾࠓޙapplyͰ͖ΔΑ͏ʹɹɾDeployαʔόʔഇࢭ͢Δ༧ఆɾTerraform CIʹؔͯ͠ϒϩάॻ͍͍ͯ·͢
2021/09/8ʲLancers x SUPER STUDIOʳ Engineer Meetup #1όʔδϣϯΞοϓͷྲྀΕv0.12.29 → v0.15.0
2021/09/8ʲLancers x SUPER STUDIOʳ Engineer Meetup #1όʔδϣϯΞοϓͷྲྀΕ(v0.12.29 → v0.15.0) 1. ϒϥϯν࡞ޙɺDeployαʔόʔͰTerraform v0.13.0ʹ্͛Δ2. terraform init -reconfigure (providerΛ࠷৽)3. terraform 0.13upgrade4. terraform planʹΑΓࠩΛमਖ਼͢Δ5. tfstateϑΝΠϧͷमਖ਼6. terraform planͰ͕ࠩͳ͘ͳͬͨΒv0.15.0ʹόʔδϣϯΞοϓ7. terraform state replace-provider registry.terraform.io/-/aws8. hashicorp/aws ʹΑΔϓϩόΠμʔมߋ9. terraform init10 .terraform planͰ͕ࠩͳ͘ͳ͍ͬͯΕόʔδϣϯΞοϓ͍͖ྃͳΓv0.12͔Βv0.15ʹ্͛ΒΕͳ͍ʂঃʑʹࠩΛͳ͍ͯ͘͜͠͏ʂ❌
2021/09/8ʲLancers x SUPER STUDIOʳ Engineer Meetup #1ΤϥʔରԠʹ͍ͭͯWarning: Version constraints inside providerconfiguration blocks are deprecated
2021/09/8ʲLancers x SUPER STUDIOʳ Engineer Meetup #1ΤϥʔରԠʹ͍ͭͯ ɾWarning: Version constraints inside providerconfiguration blocks are deprecatedɾv0.13Ҏલɾproviderߏ͕ϒϩοΫʹͯϓϩόΠμʔόʔδϣϯͷ੍͕͋ͬͨɹɾprovider configuration blockͷதͰproviderͷόʔδϣϯΛࢦఆ͠ͳ͍Α͏ʹ͢Δඞཁ͕͋ΔɾݱࡏඇਪɾϓϩόΠμʔόʔδϣϯΛrequired_providersʹҠߦ͢Δ͜ͱͰղܾ
2021/09/8ʲLancers x SUPER STUDIOʳ Engineer Meetup #1ΤϥʔରԠʹ͍ͭͯError: Invalid resource instance data in state
2021/09/8ʲLancers x SUPER STUDIOʳ Engineer Meetup #1ΤϥʔରԠʹ͍ͭͯ ɾError: Invalid resource instance data in stateɾv0.13ʹͯഇࢭ͞Εͨύϥϝʔλʔ͕͋ΔɹɾtfstateϑΝΠϧʹ͍ͬͯΔͱΤϥʔɹɾରύϥϝʔλΛআ͢Δɹɾterraform initͤ͠ղܾɾඞͣtfstateϑΝΠϧΛόοΫΞοϓऔΔ͜ͱʂɾෆཁͳύϥϝʔλʔ12ͭ͋ͬͨɹˠ
2021/09/8ʲLancers x SUPER STUDIOʳ Engineer Meetup #1.terraform.lock.hclʹ͍ͭͯ
2021/09/8ʲLancers x SUPER STUDIOʳ Engineer Meetup #1.terraform.lock.hclʹ͍ͭͯ ɾhttps://www.terraform.io/upgrade-guides/0-14.html#opting-out-of-dependency-lockingɾv0.15.0ʹόʔδϣϯΞοϓޙɾterraform.lock.hclϑΝΠϧͱ͍͏ͷ͕࡞͞ΕΔɾv014.0͔Βಋೖɾ.terraformαϒσΟϨΫτϦʹΩϟογϡ͢ΔϩοΫϑΝΠϧɾproviderͷόʔδϣϯࢦఆ͕͋Δ߹ʹه͞ΕΔɾެ͕ࣜGitͰόʔδϣϯཧ͖͢ͱهࡌ͞Ε͍ͯΔɹɾରԠࡁΈ
2021/09/8ʲLancers x SUPER STUDIOʳ Engineer Meetup #1CircleCI x Terraformͷमਖ਼࠷ޙʹ
2021/09/8ʲLancers x SUPER STUDIOʳ Engineer Meetup #1CircleCI x Terraformͷमਖ਼ ɾ࠷ޙʹCircleCIͷdocker imagesΛมߋɾTerraform planͰ͕ࠩͰͳ͍͜ͱΛ֬ೝ͢ΔɾΓͷϓϩδΣΫτಉ༷ʹߦ͏ɾ࡞ۀऴྃʂ
2021/09/8ʲLancers x SUPER STUDIOʳ Engineer Meetup #1v1.0.0(GA)ͷϦϦʔεͱࢥ͍͖…
2021/09/8ʲLancers x SUPER STUDIOʳ Engineer Meetup #1v1.0.0(GA)ͷϦϦʔε ɾͦͷ2ϲ݄ޙʹv1.0.0(GA)͕ϦϦʔεʂɹɾ҆ఆ൛ɾݸਓతʹ4લ͔ΒTerraformΛར༻͍ͯ͠Δɹɾ࣌v0.8.5ɾੲόά͕ଟ͔ͬͨɹɾσΟεΫมߋͰΠϯελϯε࠶࡞ͳͲɹɾ৮Δͷʹͳ͔ͳ͔γϏΞͩͬͨɾ҆ఆ൛͕ग़ͨ͜ͱͰײಈϞϊ🎉ɾv1.0.0ʹͳͬͯมΘͬͨ͜ͱɹɾv0.15Λϕʔεʹ͍ͯ͠Δɹɾେ෯ͳมߋಛʹͳ͠ɹɾϒϩάॻ͍͍ͯΔͷͰࢀߟʹʂˠ
2021/09/8ʲLancers x SUPER STUDIOʳ Engineer Meetup #1v1.0.5ʹόʔδϣϯΞοϓͯ͠Έ͔ͨͤͬ͘ͳͷͰ
2021/09/8ʲLancers x SUPER STUDIOʳ Engineer Meetup #1v1.0.5ʹόʔδϣϯΞοϓͯ͠Έͨ ɾ2020/08/23ɾTerraform v0.15.0→v1.0.5ɹɾaws provider v3.55.0ɾมߋɹɾRDSύϥϝʔλʔάϧʔϓͷValue͕େจࣈʹɹɾElastiCacheͷόʔδϣϯ͕6.xʹࢦఆมߋɹɾࠩमਖ਼
2021/09/8ʲLancers x SUPER STUDIOʳ Engineer Meetup #1v1.0.6ʂʁͱࢥ͍͖…9/4ʹͯ
2021/09/8ʲLancers x SUPER STUDIOʳ Engineer Meetup #1v1.0.6 😇
2021/09/8ʲLancers x SUPER STUDIOʳ Engineer Meetup #1·ͱΊ
2021/09/8ʲLancers x SUPER STUDIOʳ Engineer Meetup #1·ͱΊ ɾ4ͭͷϓϩδΣΫτΛόʔδϣϯΞοϓͯ͠Έͯɹɾ͔ͳΓۤ௧ɹɾtfstateϑΝΠϧมߋʹ߅͕ͳ͘ͳͬͨ ɹɾͳΜͱ͔ͳΔɾτϥϒϧͳ͘ରԠͰ͖ͨɾTerraformͷplanapply͕ߴԽɾࠓޙසൟʹόʔδϣϯΞοϓ͍ͯ͘͠ ɹɾʹҰճ(֮ޛΛ࣋ͬͯ)ɾv0.12ܥͰӡ༻͍ͯ͠Δํ͜ͷػձʹʂɹɾࠓͷ͏ͪʹόʔδϣϯΞοϓ͠ͳ͍ͱ௧͍ʹ͋͏✨
2021/09/8ʲLancers x SUPER STUDIOʳ Engineer Meetup #1ΤϯδχΞϒϩάͰެ։ͯ͠·͢https://engineer.blog.lancers.jp/2021/04/versionup-terraform/
2021/09/8ʲLancers x SUPER STUDIOʳ Engineer Meetup #1SREٻΉʂʂSRE͕Γ·ͤΜ😇࠷ۙΦϯϘʔσΟϯάͷࢿྉ࡞ͬͯΈ·ͨ͠
2021/09/8ʲLancers x SUPER STUDIOʳ Engineer Meetup #1