サーバにログインしない・させないサービス運用 / AWS Summit 2015 Devcon
by
koid
Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
αʔόʹϩάΠϯ͠ͳ͍ɾͤ͞ͳ͍ αʔϏεӡ༻ ɹ גࣜձࣾ!Gunosyɹখग़!య
Slide 2
Slide 2 text
ࣗݾհ • খग़"య"/"@koid • גࣜձࣾGunosy"։ൃຊ෦ • ޙํࢧԉܥΤϯδχΞ • ͨ·ʹόονॻ͍ͨΓͨ·ʹAPIͨ͠Γ
Slide 3
Slide 3 text
͜ΜʹͪGunosyͰ͢
Slide 4
Slide 4 text
Gunosyʹ͍ͭͯ • χϡʔεΩϡϨʔγϣϯΞϓϦ • 2011.09'ϝʔϧαʔϏεͱͯ͠։࢝ • 2013.01'iOS൛ΞϓϦϦϦʔε • 2013.02'Android൛ΞϓϦϦϦʔε • ݱࡏ900ສDLಥഁ
Slide 5
Slide 5 text
͍ͬͯΔ͜ͱ • χϡʔε৴ • ࠂ৴ • ΞυωοτϫʔΫ • ϓϥοτϑΥʔϜ
Slide 6
Slide 6 text
ΤϯδχΞʹ͍ͭͯ • ݱࡏ26໊ • ͓͓Αͦͷकඋൣғ σβΠϯ+ϑϩϯτΤϯυ:&3ਓ ΫϥΠΞϯτ+QA:&5ਓ Web+API:&5ਓ Ξυ:&5ਓ ղੳ+ίϯςϯπ:&5ਓ Πϯϑϥ:&1ਓ ͦͷଞSMͬΆ͍ਓ
Slide 7
Slide 7 text
GunosyͰΑ͍ͬͯ͘Δͷ • ։ൃݴޠ ɹ"#API:#Golang ɹ"#ύʔτφʔ༷/ࠂओ༷͚ཧը໘:#Rails ɹ"#όονɾ෦͚ཧը໘:#Django#or#ૉͷPython • ͦͷଞ ɹ"#όʔδϣϯཧ:#GitHub ɹ"#ߏཧ/σϓϩΠ:#Chef#(+AWS#OpsWorks)
Slide 8
Slide 8 text
։ൃͷಛ • খ͍͞୯ҐͰ࡞͙ࣺͬͯͯ͢Δ • ϚΠΫϩαʔϏεతͳ • ػೳ͕૿͑ա͗ͨΒׂ • ϝϯς͢ΔΑΓϦϓϨʔε
Slide 9
Slide 9 text
ຊɿ ։ൃੜ࢈ੑΛ্͛ΔͨΊͷऔΓΈ αʔόͷෆཁͳϩάΠϯΛΊΑ͏
Slide 10
Slide 10 text
͔͜͜Βஏ͔͍ͣ͠Λ͠·͢
Slide 11
Slide 11 text
αʔόʹϩάΠϯ͞ΕͯࠔΔ͜ͱ ʢϩάΠϯࣗମ͕ѱ͍Θ͚Ͱͳ͍Ͱ͕͢…ʣ
Slide 12
Slide 12 text
৴པͰ͖ͳ͍ϏϧυɾσϓϩΠ • ։ൃऀͷखݩͰϏϧυ→Ξοϓϩʔυ • αʔόʹೖͬͯσϓϩΠεΫϦϓτ࣮ߦ • ͦΕͲ͜ͷஅ໘ͳΜ͚ͩͬʁ࠷৽ͷmasterͱஅ໘߹ͬͯΔʁ • ࠓϓϩμΫγϣϯʹ্͕͍ͬͯΔϞϊ͕৴༻Ͱ͖ͳ͍ • ࠓεςʔδϯάʹ্͕͍ͬͯΔϞϊɺຊʹςετ͍ͨ͠அ ໘͚ͩͬʁ
Slide 13
Slide 13 text
উखʹՃ͑ΒΕΔมߋ • উखʹՃ͞ΕΔύοέʔδ • αʔόՃ/ϦϓϨʔε͠Α͏ͱͨ͠Βಈ͔ͳ͍ • উखʹมߋ͞ΕΔcrontab • ίϝϯτΞτͨ͠ͷ୭ʁͦͯ͠Կނʁ
Slide 14
Slide 14 text
ฐࣾɺҎલ͔ΒChefΛ͍ͬͯ·ͨ͠
Slide 15
Slide 15 text
ʮαʔόͱϨγϐͷؒʹဃ͕͋Δʯ ʮϨγϐΛਵͤ͞Δඞཁ͕͋Δʯ
Slide 16
Slide 16 text
͑ͬ…
Slide 17
Slide 17 text
ϩάΠϯ͍ͯ͠͡ΔͷΊ·͠ΐ͏ ʢ࣮ʣ
Slide 18
Slide 18 text
ΞϓϦέʔγϣϯͷσϓϩΠ ৴པͰ͖ΔͷͰ͋Δඞཁ͕͋Δ
Slide 19
Slide 19 text
৴པͰ͖ͳ͍σϓϩΠ • ࣄނͷϦεΫ • खΓͷൃੜ • ΤϯδχΞͷ࣌ؒతɾਫ਼ਆతෛ୲
Slide 20
Slide 20 text
ܧଓతσϦόϦ • όʔδϣϯཧ • ܧଓతΠϯςάϨʔγϣϯ • ܧଓతσϓϩΠ
Slide 21
Slide 21 text
͔͠͠ • όʔδϣϯཧπʔϧΛ͑ྑ͍ͱ͍͏ͷͰͳ͍ • CIπʔϧΛ͑ྑ͍ͱ͍͏ͷͰͳ͍ • σϓϩΠπʔϧΛ͑ྑ͍ͱ͍͏ͷͰͳ͍ શͯΛ౷߹ͨ͠Ұ࿈ͷϫʔΫϑϩʔΛ࡞Δ͜ͱ͕ॏཁ
Slide 22
Slide 22 text
৭ʑͳਏ͍ࢥ͍Λͯ͠ɺݱࡏ
Slide 23
Slide 23 text
GitHubΛத৺ͱͨ͠։ൃɾσϓϩΠϑϩʔ • Service(HookΛར༻͠ɺ֤αʔϏεΛ࿈ܞ • GitHub • CircleCI • AWS(OpsWorks • GunosyͰͷOpsWorksͷར༻ʹ͍ͭͯԼه • h;ps:/ /speakerdeck.com/koid/yokuwakaruCawsCopsworks
Slide 24
Slide 24 text
MergeϘλϯʹશͯΛूதͤ͞Δ
Slide 25
Slide 25 text
۩ମతʹ • ֤ϒϥϯνΛϚʔδ͢ΔʹࣗಈͰϏϧυɾςετɾσϓϩΠ
Slide 26
Slide 26 text
σϓϩΠ͚ͨ͠ΕPull$RequestΛ࡞Δ
Slide 27
Slide 27 text
༨ஊʣOpsWorksͰσϓϩΠཤྺ͕͑Δ
Slide 28
Slide 28 text
݁Ռ • Pull%Request%Driven%Deploy • શͯͷใ͕GitHubʹू • ݟ͑ΔԽɺϏϧυɾσϓϩΠͷޮԽɺࣄނͷݮ • ϫʔΫϑϩʔ͕Θ͔Γ͘͢ͳͬͨ
Slide 29
Slide 29 text
ΑΓαʔόʹϩάΠϯ͠ͳ͍ͨΊʹ
Slide 30
Slide 30 text
Ͳ͏͖ͯͭ͠ͷͳͷ͕ௐࠪ • ϛυϧΣΞϩάऩू • ΞϓϦέʔγϣϯϩάऩू αʔόʹϩάΠϯͯ͠ௐ·͔͢ʁ
Slide 31
Slide 31 text
ϒϥβ͔ΒશͯͷαʔόͷϩάΛݟΒΕΔΑ͏ʹ • OS/ϛυϧΣΞϩάऩू • papertrail • ΞϓϦέʔγϣϯϩάऩू • airbrake.(errbit) • kibana
Slide 32
Slide 32 text
αʔόͷෆཁͳϩάΠϯΊ·͠ΐ͏
Slide 33
Slide 33 text
͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠