Upgrade to Pro — share decks privately, control downloads, hide ads and more …

サービスローンチを成功させろ! 〜SREが教える30日間の攻略ガイド〜

Avatar for mm-matsuda mm-matsuda
January 25, 2025

サービスローンチを成功させろ! 〜SREが教える30日間の攻略ガイド〜

Avatar for mm-matsuda

mm-matsuda

January 25, 2025
Tweet

More Decks by mm-matsuda

Other Decks in Technology

Transcript

  1. ຊߨԋͰ࿩͢͜ͱͱର৅ௌऺ ࿩͢͜ͱ • αʔϏεϩʔϯνલʹ΍Δ΂͖͜ͱ • ݶΒΕͨ࣌ؒͰαʔϏεΛվળ͢ΔͨΊͷਐΊํͱલ४උ ର৅ௌऺ • Production Readiness

    ChecklistΛಋೖ͍ͯ͠ͳ͍αʔϏενʔϜͷํ • SREsͷதͰ΋ɺԣஅ૊৫͔ΒEmbedded SRE/Enabling SREͱͯ͠୹ظؒ αʔϏενʔϜʹࢀՃ͢Δํ
  2. ϩʔϯνલʹ֬ೝ͍ͨ͜͠ͱ 1. ύϑΥʔϚϯε 2. ଱ো֐ੑɾεέʔϥϏϦςΟ 3. ؂ࢹઃఆ 4. Πϯγσϯτ؅ཧମ੍ 5.

    ηΩϡϦςΟରԠঢ়گ 6. υΩϡϝϯτ੔උ 7. ΩϟύγςΟϓϥϯχϯά →30೔લ͔ΒνΣοΫͯ͠Ͳ͜·ͰվળͰ͖Δ͔ʁ
  3. 30೔ؒͰվળͰ͖Δ΋ͷɾͰ͖ͳ͍΋ͷ 4. Πϯγσϯτ؅ཧମ੍ ো֐ରԠϑϩʔɺΤεΧϨʔγϣϯϑϩʔɺϩʔςʔγϣϯɺ͓໰͍߹Θͤ →ਓһ֬อͳͲͷମ੍ߏங͸͕࣌ؒ଍Γͳ͍ 5. ηΩϡϦςΟରԠঢ়گ ηΩϡϦςΟ਍அɺϥΠϒϥϦͷ੬ऑੑɺݸਓ৘ใ؅ཧ →໰୊͕͋Δ৔߹ͷվળ͸࣌ؒతʹݫ͍͠ 6.

    υΩϡϝϯτ੔උ ΞʔΩςΫνϟਤɺӡ༻ʹඞཁͳυΩϡϝϯτɺυΩϡϝϯτͷप஌ɺϨϏϡʔ →ޙճ͠ʹͳΓ͕͕ͪͩৄ͍͠ਓΛר͖ࠐΊΕ͹े෼࣌ؒ͸͋Δ 7. ΩϟύγςΟϓϥϯχϯά ίετ࠷దԽɺधཁ֦େ࣌ͷύϑΥʔϚϯεҡ࣋ɺϩʔϯνޙͷॖୀɾ૿ڧ →ίετ࠷దԽ͕े෼Ͱ͸ͳ͍ͳΒɺίεύͷྑ͍෦෼͔Βίπίπվળ͢Δ͔͠ͳ͍
  4. Ͱ͖ͳ͍΋ͷΛݮΒͨ͢Ίʹ͸ • 30೔લʹ΍Ζ͏ͱ͢Δ͜ͱ͕ͦ΋ͦ΋ݫ͍͠ • γϑτϨϑτ*1ͯ͠ɺલ΋ͬͯ՝୊ղܾͰ͖Δମ੍Λ໨ࢦ͢ • →Production Readiness Checklistͷಋೖ *

    γϑτϨϑτ(shift left)ͱ͸ɺ੡඼։ൃͳͲͰߦΘΕΔಛఆͷ޻ఔΛ௨ৗΑΓ΋લ౗࣮ͯ͠͠ࢪ͢Δ͜ͱɻ e-Words ΑΓҾ༻
  5. Production Readiness Checklistͱ͸ 1. ҆ఆੑɺ৴པੑΛඋ͍͑ͯΔ 2. εέʔϥϒϧͰύϑΥʔϚϯε͕ߴ͍ 3. ଱ো֐ੑ͕͋ΓେࢂࣄରԠྗ͕͋Δ 4.

    ద੾ʹ؂ࢹ͞Ε͍ͯΔ 5. υΩϡϝϯτ͕੔උ͞Εɺ૊৫తʹཧղ͞Ε͍ͯΔ ͜ΕΒͷ؍఺Λத৺ʹνΣοΫ͢΂͖߲໨͕঺հ͞Ε͍ͯΔ *1 ϓϩμΫγϣϯϨσΟϚΠΫϩαʔϏε[ΦϥΠϦʔɾδϟύϯ] ຊ൪ରԠͷඪ४ͱҰൠతͳཁ݅ Λ·ͱΊͨνΣοΫϦετ*1
  6. Launch ChecklistͱProduction Readiness Checklistͷҧ͍ • Launch Checklist Ұൠతʹ͸ɺϚʔέςΟϯάͳͲ΋ؚΉ৽੡඼΍৽ػೳͷࢢ৔౤ೖʹಛԽͨ͠πʔϧ SREຊతʹ͸ɺ৽͍͠αʔϏεΛ࠶ݱՄೳͳ৴པੑͷԼͰϩʔϯν͢ΔͨΊͷπʔϧ •

    Production Readiness Checklist αʔϏε͕ຊ൪ՔಇՄೳͳঢ়ଶʹͳ͍ͬͯΔͷ͔֬ೝ͢ΔͨΊͷπʔϧ • ຊൃදͰ͸SREຊͷLaunch Checklist ≒ Production Readiness Checklist ͱͯ͠औΓѻ͏
  7. SGEͷࣄྫ αʔόʔνΣοΫϦετΑΓҰ෦঺հ *࣮ࡍͷදݱ͔ΒҰ෦มߋ͍ͯ͠·͢ ֬ೝ͢ΔϑΣʔζɺॏཁ౓ɺνΣοΫ߲໨ɺΧςΰϦɺ߲໨ͷઆ໌ͳͲ 8ΧςΰϦ 106߲໨ ରԠ ࣌ظ ॏཁ౓ νΣοΫ߲໨

    ΧςΰϦ આ໌ ॳظ A ςετίʔυΛॻ͘࢓૊Έ͕͋Δ͔ ςετ ԿΒ͔ͷςετϑϨʔϜϫʔΫɺ ςετπʔϧ౳ͷಋೖ͕๬·͍͠ ॳظ S SQLΠϯδΣΫγϣϯରࡦ͸͞Ε͍ͯΔ͔ ηΩϡϦςΟ ύϥϝʔλͷΤεέʔϓͳͲ தظ B ΞϓϦέʔγϣϯϩά͕ద੾ʹ ग़ྗ͞Ε͍ͯΔ͔ ো֐ ো֐ௐࠪͳͲʹ࢖༻ தظ A ෛՙςετ͸ຊ൪ͱશ͘ಉ͡γεςϜߏ੒Ͱ ࣮ࢪ͔ͨ͠ ෛՙࢼݧ ࣮ࡍͷෛՙͱಉ౳ʹ͢ΔͨΊ
  8. SGEͷࣄྫ ΠϯϑϥνΣοΫϦετΑΓҰ෦঺հ *࣮ࡍͷදݱ͔ΒҰ෦มߋ͍ͯ͠·͢ ֬ೝ͢ΔϑΣʔζɺॏཁ౓ɺνΣοΫ߲໨ɺΧςΰϦɺ߲໨ͷઆ໌ͳͲ 8ΧςΰϦ 25߲໨ ରԠ ࣌ظ ॏཁ౓ νΣοΫ߲໨

    ΧςΰϦ આ໌ தظ A Ϧιʔεͷ্ݶ؇࿨͸ద੾ʹߦΘΕ͍ͯΔ͔ Մ༻ੑ ඞཁͳͱ͖ʹ૿΍ͤΔঢ়ଶͱͳ͍ͬͯΔ͔ தظ A ຊ൪ɾSt a ging؀ڥ͕ಉ͡ߏ੒ʹͳ͍ͬͯΔ͔ ઃܭ εϖοΫ͸௿ͯ͘ྑ͍͕ɺ ߏ੒͸Ұॹ͕๬·͍͠ தظ S ຊ൪؀ڥͱଞͷ؀ڥ͸੾Γ཭͞Ε͍ͯΔ͔ ઃܭ ωοτϫʔΫ΍ΞΧ΢ϯτ͕ผΕ͍ͯΔ͜ͱ ͕๬·͍͠ தظ A Ξϥʔτ͕௨஌͞Εͨࡍʹ ߦ͏࡞ۀ͕໌֬ʹͳ͍ͬͯΔ͔ ؂ࢹ ٯʹରԠ͕ෆཁͳ΋ͷ͸ Ξϥʔτʹઃఆ͠ͳ͍
  9. ଞࣾͷࣄྫ • גࣜձࣾϦΫϧʔτ ελσΟαϓϦ Production Readiness Checkͷ͸͡Ί͔ͨ Checklistͷ࡞Γํ΍಺༰ɺӡ༻ํ๏ ΈΜͳͰͭ͘Δ Production

    Readiness 1೥Ҏ্ӡ༻͖ͯͯ͠ͲΜͳ՝୊͕͔͋ͬͨͳͲΛղઆ • גࣜձࣾZOZO ZOZOTOWNͷProduction Readiness Checklistͱ৴པੑ޲্ͷऔΓ૊Έ ϚΠΫϩαʔϏεϦϓϨΠε࣌ʹChecklistΛ׆༻͠৴པੑΛ୲อͨ͜͠ͱΛղઆ • גࣜձࣾϝϧΧϦ Mercari Microservices Platformͷਐḿ(2019೥) ϚΠΫϩαʔϏεͷ඼࣭Λ୲อ͢Δख๏ͱͯ͠Production Readiness CheckΛಋೖͨ͜͠ͱΛ঺հ ϝϧΧϦͷProduction Readiness Checkϓϩηεʹ͓͚Δ৽ͨͳ։ൃऀମݧ νΣοΫϓϩηεΛγϑτϨϑτ͠ɺܧଓతʹվળ͍ͯ͘͠ΞϓϩʔνΛղઆ
  10. Production Readiness Checklistͷ࡞Γํ νΣοΫ͍ͨ͠؍఺Λத৺ʹ߲໨Λ࡞͍ͬͯ͘ • ·ͣ͸ϓϩμΫγϣϯϨσΟϚΠΫϩαʔϏεͷຊ൪ରԠͷνΣοΫϦετ*1͔Β 1. ҆ఆੑɺ৴པੑΛඋ͍͑ͯΔ • ඪ४Խ͞Εͨ։ൃαΠΫϧ͕͋Δ͔

    • ίʔυ͸ɺlintςετɺ୯ମςετɺ౷߹ςετɺΤϯυπʔΤϯυςετΛ௨ͯ͡పఈతʹςετ͞Ε͍ͯΔ͔ ͳͲ 2. εέʔϥϒϧͰύϑΥʔϚϯε͕ߴ͍ • Ϧιʔεͷཁ݅ͱϘτϧωοΫ͕Θ͔͍ͬͯΔ͔ ͳͲ 3. ଱ো֐ੑ͕͋ΓେࢂࣄରԠྗ͕͋Δ • ୯Ұো֐఺͕ͳ͍͔ ͳͲ 4. ద੾ʹ؂ࢹ͞Ε͍ͯΔ • Πϯγσϯτ΍ػೳఀࢭΛॲཧ͢Δ໌֬ʹఆٛ͞Εͨඪ४Խ͞Ε͍ͯΔΦϯίʔϧखଓ͖͕͋Δ͔ ͳͲ 5. υΩϡϝϯτ͕੔උ͞Ε૊৫తʹཧղ͞Ε͍ͯΔ • υΩϡϝϯτ͕։ൃऀɺνʔϜɺ૊৫ͷ֤ϨϕϧͰΑ͘ཧղ͞Ε͍ͯΔ͔ ͳͲ • աڈͷΠϯγσϯτ΍ଞࣾࣄྫ΋ࢀߟʹ *1 ϓϩμΫγϣϯϨσΟϚΠΫϩαʔϏε[ΦϥΠϦʔɾδϟύϯ]
  11. Production Readiness Checklistͷӡ༻ϑϩʔ ·ͱΊ 1. ChecklistΛ࡞੒͢Δ ຊ΍ଞࣾࣄྫɺաڈʹ໰୊ͱͳͬͨࣄྫΛࢀߟʹ 2. νΣοΫΛߦ͏Φʔφʔ͸αʔϏενʔϜʹॴଐ͍ͯ͠ͳ͍ਓΛબͿ ٬؍తʹνΣοΫͰ͖ɺνΣοΫࣗମ͕ޙճ͠ʹͳΓͮΒ͘

    3. ϩʔϯν·Ͱʹ܁Γฦ͠νΣοΫ͢ΔεέδϡʔϧΛ૊Ή γϑτϨϑτΛҙࣝɺνΣοΫ͢Δ͜ͱɾରԠ͢Δ͜ͱͷෛ୲Λ࣌ؒతʹ෼ࢄ 4. ϩʔϯνޙʹαʔϏενʔϜͱChecklistͷ߲໨Λਫ਼ࠪ͢Δ ௥Ճ͢΂͖߲໨΍౷߹ɾলུ͍͍߲ͯ͠໨ͳͲΛ੔ཧ 5. ࣍ͷϩʔϯν࣌͸2-4Λ܁Γฦ͠ɺܧଓతʹվળ͢Δ ܧଓతʹӡ༻͢Δ͜ͱͰੜ͖ͨ࢓૊Έʹ
  12. PRC͕͋Δ৔߹ͷ30೔ؒ߈ུΨΠυ 1. ϨϙʔτϥΠϯͷ֬ೝ 2. PRCରԠঢ়گͷ֬ೝͱΞΫγϣϯϓϥϯͷ࡞੒ 3. ΞΫγϣϯϓϥϯ͝ͱʹ༏ઌ౓ͱΦʔφʔઃఆ 4. ΦʔφʔΛר͖ࠐΜͰ֤ϓϥϯΛ࣮ࢪ 30೔ؒ

    = ࣮࣭20Ӧۀ೔ •1-3ͷ४උϑΣʔζΛ୹ظؒͰ׬ྃ͠ɺ4ʹ࣌ؒΛֻ͚ΒΕΔ͔͕উෛॴ •1Λ1Ӧۀ೔໨Ͱ֬ఆ͠ɺ3Ӧۀ೔໨ʹ͸2ͷ૲Ҋ͕͋ΓɺϨϙʔτϥΠϯ্ྲྀͱ3ͷ࿩ ͕ग़དྷ͍ͯΔ͜ͱ͕ཧ૝ •6Ӧۀ೔໨ʹ͸4͕։࢝Ͱ͖͓ͯΓɺ15Ӧۀ೔ͨͬ΀Γͱϓϥϯ࣮ࢪʹ࢖͑Δͱϕετ * PRC Production Readiness Checklist εϖʔεͷ౎߹Ͱলུ͍ͯ͠·͢
  13. PRC͕͋Δ৔߹ͷ30೔ؒ߈ུΨΠυ • ରԠࡁΈʹͳ͍ͬͯΔ߲໨ͷରԠ಺༰ͷ೺Ѳ ରԠ಺༰͕ෆे෼ͳՄೳੑ΋ • ະରԠͷ߲໨ͷΞΫγϣϯϓϥϯͷ࡞੒ ྫ: ద੾ʹ؂ࢹ͞Ε͍ͯΔ ͕ະରԠ SaaS౳Λಋೖ͠ɺϝτϦΫε؂ࢹ΍ΞϥʔτΛ੔උ

    ϩʔϯν࣌ʹঢ়گ೺Ѳʹ࢖༻͢ΔμογϡϘʔυΛ࡞੒ ྫ: ΤεΧϨʔγϣϯϑϩʔ͕໌֬ʹͳ͓ͬͯΒͣɺো֐࣌ͷରԠํ਑͕ෆ໌֬ ΤεΧϨʔγϣϯϑϩʔΛ࡞੒ ো֐ରԠ܇࿅Λߦ͍ɺϑϩʔͷप஌ 2. PRCରԠঢ়گͷ֬ೝͱΞΫγϣϯϓϥϯͷ࡞੒ * PRC Production Readiness Checklist εϖʔεͷ౎߹Ͱলུ͍ͯ͠·͢
  14. ΞΫγϣϯϓϥϯྫ1 αΫοͱ΍ͬͯΈΔো֐ରԠ܇࿅*1 • ϩʔϯνલʹো֐ରԠ܇࿅Λߦ͍ɺΤεΧϨʔγϣϯϑϩʔ΍ো֐ରԠϑϩʔΛ֬ೝ • ϑϩʔࣗମͷप஌΍ӡ༻ܦݧ͕ͳ͍ϝϯόʔʹମײͯ͠΋Β͏͜ͱΛ໨తʹ • ରԠ͢Δ೉қ౓͸ߴ͘ͳ͍͕Өڹ͕େ͖͍ো֐(֎෦௨৴੾அͳͲ)Λى͜͠ɺద੾ʹΤε ΧϨʔγϣϯͰ͖Δ͔ͳͲΛ֬ೝ •

    ܇࿅Λ࣮ࢪ͢ΔલʹɺϝΠϯࢀՃϝϯόʔͱϑϩʔΛ֬ೝ͠ɺϑϩʔʹԊͬͨ܇࿅Λ࣮ࢪ • ϑϩʔࣗମͷվળϙΠϯτ΋֬ೝͰ͖ΔͨΊ • ׬ྃޙʹ͸ৼΓฦΓΛߦ͍ɺϑϩʔͷվળ΍υΩϡϝϯτ੔උɺඞཁͳֶशࢧԉͳͲ࣮ࢪ *1 SRE Magazine https://sre-magazine.net/articles/6/mm-matsuda/
  15. ΞΫγϣϯϓϥϯྫ2 ϩʔϯνޙͷίετ࠷దԽઓུͷ࡞੒ • ϩʔϯν͢ΔλΠϛϯάͰ͸૝ఆ࠷େDAUͳͲʹ߹ΘͤͨΩϟύγςΟ ച্ͷN%ͳͲɺ໨ඪ஋͕ఆٛ͞Ε͍ͯΔ͜ͱ͕๬·͍͠ • ্ৼΕ/ԼৼΕ࣌ͷϓϥϯΛ༻ҙɻεϜʔζʹҙࢥܾఆͰ͖ΔΑ͏ʹ ૝ఆҎ্ʹϢʔβʔ͕૿͑ͯΩϟύγςΟΛ૿΍ͨ͠৔߹ͷίετ ݄ؒίετͳͲΛ·ͱΊ͓ͯ͘ ૝ఆΑΓ΋Ϣʔβʔ͕গͳ͔ͬͨ৔߹ͷμ΢ϯαΠδϯάεέδϡʔϧ

    (େମͷ৔߹͸গͳ͍ɺ·ͨ͸೔͝ͱʹͲΜͲΜݮ͍ͬͯ͘) DBͳͲঃʑʹεέʔϧΠϯ͍ͯ͘͠εέδϡʔϧΛཱ͓ͯͯ͘ • ϓϨεϦϦʔεͳͲͷར༻͕௓Ͷ্͕ΔλΠϛϯάͷΩϟύγςΟௐ੔ ϓϩϞʔγϣϯͱͷೝࣝͷζϨͰɺ࣮֬ʹෛՙ্͕͕Δͱ͖ʹ४උͰ͖͍ͯͳ͍ͳͲͷػձଛࣦΛ๷͙
  16. ϩʔϯνޙ • Production Readiness Checklist͕͋Δ৔߹ ࠓճͷϩʔϯνΛ౿·߲͑ͯ໨ͷݟ௚͠ ࣾ಺ϨϏϡʔɾप஌ͷ࣮ࢪ • Production Readiness

    Checklist͕ͳ͔ͬͨ৔߹ ࡞੒ͨ͠΋ͷΛࠓޙ૊৫తʹӡ༻͍͚ͯ͠ΔΑ͏ʹࢍಉऀΛूΊΔ ࣍ͷϩʔϯνͷͱ͖ʹྲྀ༻͢Δ͜ͱΛୈҰ໨ඪͱͯ͠ϒϥογϡΞοϓ
  17. Production Readiness Checklistͷӡ༻ϑϩʔ ·ͱΊ࠶ܝ 1. ChecklistΛ࡞੒͢Δ ຊ΍ଞࣾࣄྫɺաڈʹ໰୊ͱͳͬͨࣄྫΛࢀߟʹ 2. νΣοΫΛߦ͏Φʔφʔ͸αʔϏενʔϜʹॴଐ͍ͯ͠ͳ͍ਓΛબͿ ٬؍తʹνΣοΫͰ͖ɺνΣοΫࣗମ͕ޙճ͠ʹͳΓͮΒ͘

    3. ϩʔϯν·Ͱʹ܁Γฦ͠νΣοΫ͢ΔεέδϡʔϧΛ૊Ή γϑτϨϑτΛҙࣝɺνΣοΫ͢Δ͜ͱɾରԠ͢Δ͜ͱͷෛ୲Λ࣌ؒతʹ෼ࢄ 4. ϩʔϯνޙʹαʔϏενʔϜͱChecklistͷ߲໨Λਫ਼ࠪ͢Δ ௥Ճ͢΂͖߲໨΍౷߹ɾলུ͍͍߲ͯ͠໨ͳͲΛ੔ཧ 5. ࣍ͷϩʔϯν࣌͸2-4Λ܁Γฦ͠ɺܧଓతʹվળ͢Δ ܧଓతʹӡ༻͢Δ͜ͱͰੜ͖ͨ࢓૊Έʹ