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

サーバにログインしない・させないサービス運用 / AWS Summit 2015 Devcon

F4ab9a845cd932f7aa97bdb634d74d77?s=47 koid
June 03, 2015

サーバにログインしない・させないサービス運用 / AWS Summit 2015 Devcon

F4ab9a845cd932f7aa97bdb634d74d77?s=128

koid

June 03, 2015
Tweet

Transcript

  1. αʔόʹϩάΠϯ͠ͳ͍ɾͤ͞ͳ͍ αʔϏεӡ༻ ɹ גࣜձࣾ!Gunosyɹখग़!޾య

  2. ࣗݾ঺հ • খग़"޾య"/"@koid • גࣜձࣾGunosy"։ൃຊ෦ • ޙํࢧԉܥΤϯδχΞ • ͨ·ʹόονॻ͍ͨΓͨ·ʹAPI௚ͨ͠Γ

  3. ͜Μʹͪ͸GunosyͰ͢

  4. Gunosyʹ͍ͭͯ • χϡʔεΩϡϨʔγϣϯΞϓϦ • 2011.09'ϝʔϧαʔϏεͱͯ͠։࢝ • 2013.01'iOS൛ΞϓϦϦϦʔε • 2013.02'Android൛ΞϓϦϦϦʔε •

    ݱࡏ900ສDLಥഁ
  5. ΍͍ͬͯΔ͜ͱ • χϡʔε഑৴ • ޿ࠂ഑৴ • ΞυωοτϫʔΫ • ϓϥοτϑΥʔϜ

  6. ΤϯδχΞʹ͍ͭͯ • ݱࡏ26໊ • ͓͓Αͦͷकඋൣғ σβΠϯ+ϑϩϯτΤϯυ:&3ਓ ΫϥΠΞϯτ+QA:&5ਓ Web+API:&5ਓ Ξυ:&5ਓ ਺஋ղੳ+ίϯςϯπ:&5ਓ

    Πϯϑϥ:&1ਓ ͦͷଞSMͬΆ͍ਓ
  7. GunosyͰΑ͘࢖͍ͬͯΔ΋ͷ • ։ൃݴޠ ɹ"#API:#Golang ɹ"#ύʔτφʔ༷/޿ࠂओ༷޲͚؅ཧը໘:#Rails ɹ"#όονɾ಺෦޲͚؅ཧը໘:#Django#or#ૉͷPython • ͦͷଞ ɹ"#όʔδϣϯ؅ཧ:#GitHub ɹ"#ߏ੒؅ཧ/σϓϩΠ:#Chef#(+AWS#OpsWorks)

  8. ։ൃͷಛ௃ • খ͍͞୯ҐͰ࡞͙ࣺͬͯͯ͢Δ • ϚΠΫϩαʔϏεతͳ • ػೳ͕૿͑ա͗ͨΒ෼ׂ • ϝϯς͢ΔΑΓϦϓϨʔε

  9. ຊ୊ɿ ։ൃੜ࢈ੑΛ্͛ΔͨΊͷऔΓ૊Έ αʔό΁ͷෆཁͳϩάΠϯΛ΍ΊΑ͏

  10. ͔͜͜Βஏ͔͍ͣ͠࿩Λ͠·͢

  11. αʔόʹϩάΠϯ͞ΕͯࠔΔ͜ͱ ʢϩάΠϯࣗମ͕௚઀ѱ͍Θ͚Ͱ͸ͳ͍Ͱ͕͢…ʣ

  12. ৴པͰ͖ͳ͍ϏϧυɾσϓϩΠ • ։ൃऀͷखݩͰϏϧυ→Ξοϓϩʔυ • αʔόʹೖͬͯσϓϩΠεΫϦϓτ࣮ߦ • ͦΕͲ͜ͷஅ໘ͳΜ͚ͩͬʁ࠷৽ͷmasterͱஅ໘߹ͬͯΔʁ • ࠓϓϩμΫγϣϯʹ্͕͍ͬͯΔϞϊ͕৴༻Ͱ͖ͳ͍ •

    ࠓεςʔδϯάʹ্͕͍ͬͯΔϞϊɺຊ౰ʹςετ͍ͨ͠அ ໘͚ͩͬʁ
  13. উखʹՃ͑ΒΕΔมߋ • উखʹ௥Ճ͞ΕΔύοέʔδ • αʔό௥Ճ/ϦϓϨʔε͠Α͏ͱͨ͠Βಈ͔ͳ͍ • উखʹมߋ͞ΕΔcrontab • ίϝϯτΞ΢τͨ͠ͷ୭ʁͦͯ͠Կނʁ

  14. ฐࣾɺҎલ͔ΒChefΛ࢖͍ͬͯ·ͨ͠

  15. ʮαʔόͱϨγϐͷؒʹဃ཭͕͋Δʯ ʮϨγϐΛ௥ਵͤ͞Δඞཁ͕͋Δʯ

  16. ͑ͬ…

  17. ϩάΠϯͯ͠௚઀͍͡Δͷ͸΍Ί·͠ΐ͏ ʢ੾࣮ʣ

  18. ΞϓϦέʔγϣϯͷσϓϩΠ͸ ৴པͰ͖Δ΋ͷͰ͋Δඞཁ͕͋Δ

  19. ৴པͰ͖ͳ͍σϓϩΠ • ࣄނͷϦεΫ • ख໭Γͷൃੜ • ΤϯδχΞͷ࣌ؒతɾਫ਼ਆతෛ୲

  20. ܧଓతσϦόϦ • όʔδϣϯ؅ཧ • ܧଓతΠϯςάϨʔγϣϯ • ܧଓతσϓϩΠ

  21. ͔͠͠ • όʔδϣϯ؅ཧπʔϧΛ࢖͑͹ྑ͍ͱ͍͏΋ͷͰ͸ͳ͍ • CIπʔϧΛ࢖͑͹ྑ͍ͱ͍͏΋ͷͰ͸ͳ͍ • σϓϩΠπʔϧΛ࢖͑͹ྑ͍ͱ͍͏΋ͷͰ͸ͳ͍ શͯΛ౷߹ͨ͠Ұ࿈ͷϫʔΫϑϩʔΛ࡞Δ͜ͱ͕ॏཁ

  22. ৭ʑͳਏ͍ࢥ͍Λͯ͠ɺݱࡏ

  23. GitHubΛத৺ͱͨ͠։ൃɾσϓϩΠϑϩʔ • Service(HookΛར༻͠ɺ֤αʔϏεΛ࿈ܞ • GitHub • CircleCI • AWS(OpsWorks •

    GunosyͰͷOpsWorksͷར༻ʹ͍ͭͯ͸Լه • h;ps:/ /speakerdeck.com/koid/yokuwakaruCawsCopsworks
  24. MergeϘλϯʹશͯΛूதͤ͞Δ

  25. ۩ମతʹ • ֤ϒϥϯνΛϚʔδ͢Δ౓ʹࣗಈͰϏϧυɾςετɾσϓϩΠ

  26. σϓϩΠ͚ͨ͠Ε͹Pull$RequestΛ࡞Δ

  27. ༨ஊʣOpsWorksͰ΋σϓϩΠཤྺ͕௥͑Δ

  28. ݁Ռ • Pull%Request%Driven%Deploy • શͯͷ৘ใ͕GitHubʹू໿ • ݟ͑ΔԽɺϏϧυɾσϓϩΠͷޮ཰Խɺࣄނͷ࡟ݮ • ϫʔΫϑϩʔ͕Θ͔Γ΍͘͢ͳͬͨ

  29. ΑΓαʔόʹϩάΠϯ͠ͳ͍ͨΊʹ

  30. Ͳ͏ͯ͠΋͖ͭ΋ͷͳͷ͕ௐࠪ • ϛυϧ΢ΣΞϩάऩू • ΞϓϦέʔγϣϯϩάऩू αʔόʹϩάΠϯͯ͠ௐ΂·͔͢ʁ

  31. ϒϥ΢β͔ΒશͯͷαʔόͷϩάΛݟΒΕΔΑ͏ʹ • OS/ϛυϧ΢ΣΞϩάऩू • papertrail • ΞϓϦέʔγϣϯϩάऩू • airbrake.(errbit) •

    kibana
  32. αʔό΁ͷෆཁͳϩάΠϯ͸΍Ί·͠ΐ͏

  33. ͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠