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

楽楽明細でやってるChatOps/Development with ChatOps

A1
September 18, 2018
1k

楽楽明細でやってるChatOps/Development with ChatOps

[Rakus Meetup Tokyo #1] 発表資料
https://rakus.connpass.com/event/97795/

A1

September 18, 2018
Tweet

More Decks by A1

Transcript

  1. ָָ໌ࡉͰ΍ͬͯΔ
    $IBU0QT
    3BLVT.FFUVQ5PLZP

    &JJDIJ.JUB

    View Slide

  2. &JJDIJ.JUB
    !FJDIJTBOEFO.FNCFSTJODF
    ɹɹɹɹɹɹɹ୲౰
    εϖγϟϦετ৬
    ΧΠθϯ͓͡͞Μ+FOLJOTͷ൪ਓϙέϞϯ͓͡͞Μ

    View Slide

  3. গਓ਺Ͱ։ൃ͔Βӡ༻·Ͱ͜ͳ͢
    ͨΊʹ͸ɺ͍͔ʹϧʔνϯϫʔΫ
    ʹ͔͚Δ࣌ؒΛݮΒ͠ɺίʔυΛ
    ॻ࣌ؒ͘Λ࡞Δ͔͕ॏཁ

    View Slide

  4. ͦͷͨΊʹָָ໌ࡉνʔϜͰऔΓ
    ૊ΜͰ͖ͨΧΠθϯͷͻͱͭɺ
    $IBU0QTʹ͍͓ͭͯ࿩͠͠·͢

    View Slide

  5. πʔϧ੔උظ
    w ࣗ෼ͨͪͷ։ൃɾӡ༻ָ͕ʹͳΔεΫϦϓτΛ࡞੒
    w Ϗϧυ΍σϓϩΠʢݕূ؀ڥʣΛ+FOLJOTʹ੔උͨ͠Γ

    View Slide

  6. ָʹͳΓ·͕ͨ͠ɺ৽ͨͳ՝୊͕ʜ
    w +FOLJOTΛ͍͍ͪͪ։͘ͷ໘౗͍͘͞
    w ࢖͏͚ͩͷਓͷ+FOLJOTͷΞΧ΢ϯτΛ࡞Δͷ໘౗͍͘͞
    w ͦ΋ͦ΋ΤϯδχΞʹ͔͠࢖͑ͳ͍ʜ

    View Slide

  7. ͦ͜Ͱ$IBU0QT

    View Slide

  8. $IBU0QTͱ͸
    w l$IBUzʢνϟοτʣͱz0QTzʢӡ༻ʣͱ͍͏ͭͷϫʔ
    υΛֻ͚߹Θͤͨ଄ޠ
    w νϟοτͱ৭ΜͳαʔϏεɾϓϩάϥϜΛͭͳָ͛ͯ͠
    ͍ͨʂ

    View Slide

  9. 8FVTF.BUUFSNPTU

    View Slide

  10. ҆৺͍ͯͩ͘͠͞
    .BUUFSNPTU͸ɺΦʔϓϯιʔεͷ4MBDLޓ׵ͷνϟοτ
    ˠࠓ೔࿩͢಺༰͸ɺͦͷ··4MBDLͰ΋ੜ͔ͤ·͢

    View Slide

  11. .BUUFSNPTU֎෦࿈ܞ̏छͷਆث
    4MBDLͷz"QQzʹ֘౰͢Δ΋ͷ͸ͳ͍ͷͰɺ̏छྨͷ౷߹ػೳΛۦ࢖ͯ͠%FW0QTΛ࣮ݱ͢Δ

    View Slide

  12. ਆث಺޲͖΢ΣϒϑοΫ
    ɾνϟοτʹϝοηʔδΛૹΔͨΊͷઃఆ

    View Slide

  13. ਆث಺޲͖΢ΣϒϑοΫ
    ɾ࡞੒͢ΔͱIPPLTUPLFOͷΑ͏ͳ63-͕ৼΒΕΔ

    View Slide

  14. ਆثɿεϥογϡίϚϯυ
    w νϟοτ͔Β֎෦ʹ࿈ܞ͢ΔίϚϯυΛ࡞ΕΔ

    View Slide

  15. ࿈ܞઌͷ63-ɻ࣮ߦ͢Δͱ͜ͷ63-ʹݺͼݩ
    ͷνϟϯωϧ΍ίϚϯυͷҾ਺ͳͲͷ৘ใ͕
    +40/Ͱ౉͞ΕΔ
    ਆثɿεϥογϡίϚϯυ
    ίϚϯυ໊͜ͷྫ͸XCͰ࣮ߦͰ͖Δ
    (&5Ͱ΋1045Ͱ΋͓޷͖ͳํͰ

    View Slide

  16. ਆثɿ֎޲͖΢ΣϒϑοΫ
    ൓Ԡ͢ΔϫʔυΛࢦఆ
    τʔΫϯ͕ൃߦ͞ΕΔͷͰ߇͓͑ͯ͘
    ࿈ܞઌͷ63-Λࢦఆ
    w νϟοτͰ஻ͬͨϫʔυΛरͬͯ֎෦ʹ࿈ܞ͢Δ

    View Slide

  17. w ͨͩ͠ɺ֎޲͖΢ΣϒϑοΫ͸ύϒϦο
    ΫνϟϯωϧͰ͔͠࢖͑ͳ੍͍໿͕͋Γ
    ฐࣾͷ֤αʔϏεͷνϟϯωϧ͸ϓϥΠ
    ϕʔτͳͷͰ࢖͑ͳ͍͜ͱ͕൑໌

    View Slide

  18. ̎छͷਆثΛ࢖ͬͯઃఆ͍ͯ͘͠

    View Slide

  19. εϥογϡίϚϯυͰ௚઀+FOLJOTΛݺΜͰΈͨʢࣦഊʣ
    w εϥογϡίϚϯυͷ઀ଓઌʹ+FOLJOTͷ63-Λࢦఆ
    w ਖ਼ৗ࣮ߦ࣌ɺ+FOLJOT͕zDSFBUFEzΛฦ͖ͯ͠
    ·͕͢ɺ.BUUFSNPTU͕Τϥʔͱͯ͠ѻͬͯͯ͠͠·
    ͍ࣦഊʢ̌൪୅͸ਖ਼ৗऴྃͩΖ͕ʂʣ

    View Slide

  20. εϥογϡίϚϯυΛதܧ͢Δ
    w ͦ͜ͰɺεϥογϡίϚϯυΛҰ୴ड͚͚ͭͯɺ
    +FOLJOTʹ౉͢࢓૊ΈΛ࡞Δ͜ͱʹ
    Ͱ΋ɺ͜ͷͨΊʹ͔Β"1*αʔόʔཱͯΔͷ໘౗ष͍

    View Slide

  21. ͦ͜Ͱ)VCPU

    View Slide

  22. )VCPU
    w (JU)VC͕ެ։͍ͯ͠ΔCPUπʔϧ
    w ͓ͦΒ͘Ұ൪ϝδϟʔͰɺΞμϓλʔ΍εΫϦϓτ͕๛෋
    w ౰વɺ.BUUFSNPTU΍4MBDLͷΞμϓλʔ΋͋Δ
    w $P⒎FFεΫϦϓτͷΠϝʔδ͕ڧ͍͕ɺී௨ʹKTͰॻ͚
    Δ
    w ಺ଂ͍ͯ͠Δ&YQSFTTΛ͏·͘࢖͑͹"1*αʔόʔΛผ
    ్ཱͯΔඞཁ͕ͳ͍ʢ͜Ε͕ܾΊखʣ

    View Slide

  23. )VCPU
    w τϨϯυʹහײͳ૚ʹ͸೥͝Ζྲྀߦͬͨͱࢥ͏͕ɺͦͷޙ΋ࠜڧ͘ਓؾΛҡ͍࣋ͯ͠
    Δҹ৅
    w ޙൃ΋ௐ΂͕ͨɺγϯϓϧͩ͠ɺ͜ΕҰ൪ྑ͔ͬͨ

    View Slide

  24. ·ͨ΋໰୊͕
    w )VCPUͷ.BUUFSNPTUΞμϓλ͕ɺ֎޲͖΢Σϒ
    ϑοΫΛ࢖͏લఏʹͳ͍ͬͯΔʢ౰વͰ͕͢ʣ

    View Slide

  25. ͦ͜Ͱ
    w εϥογϡίϚϯυΛड͚෇͚ɺͦΕΛ֎޲͚΢Σϒ
    ϑοΫͰड͚औ͔ͬͨͷΑ͏ʹ)VCPUʹϝοηʔδΛ
    ྲྀ͢)VCPUͷϓϥάΠϯΛࣗ࡞͠·ͨ͠

    View Slide

  26. IUUQTXXXOQNKTDPNQBDLBHFIVCPUTMBTIDPNNBOE

    View Slide

  27. γεςϜߏ੒
    ͜͜ͷ෦෼͸ࣗ࡞ͷ044ͰOQNʹެ։ࡁΈ
    ී௨ͷ)VCPUεΫϦϓτͰॻ͚Δ͠ɺ
    044ͷεΫϦϓτ΋࢖͑Δ
    SFTQPOTFNFTTBHF
    +PCݺͼग़͠

    View Slide

  28. 044ͷ)VCPUεΫϦϓτ͕࢖͑Δ׻ͼ
    IUUQTHJUIVCDPNIVCPUTDSJQUTIVCPUQVHNF

    View Slide

  29. )VCPUεΫϦϓτͷྫ
    module.exports = (robot) => {
    robot.respond(/ping/i, (res) => {
    rebot.reply(‘pong’);
    }
    robot.respond(/σϓϩΠΑΖ͘͠/i, (res) => {
    // JenkisΛݺͼग़͠
    }
    }

    View Slide

  30. ׆༻ࣄྫ

    View Slide

  31. ݕূ؀ڥͷ࡞੒
    w XCTDIFNBDSFBUFαʔόʔ؀ڥ໊ʜͷΑ͏ʹνϟοτ͢Δͱ
    ݕূ؀ڥΛ࡞ΕΔίϚϯυΛ࡞੒ͨ͠ʢཪͰ͸+FOLJOTʹ࿈ܞͯ͠%#ε
    ΩʔϚΛ࡞ͬͨΓɺσΟϨΫτϦߏ੒Λ࡞ͬͨΓ͍ͯ͠Δʣ
    w ࡟আ͸XCEFMFUFαʔόʔ؀ڥ
    w ୭Ͱ΋௥Ճɾ࡟আ͕ՄೳʹʢҎલ͸݁ߏґཔ͞Ε͍ͯͨʣ

    View Slide

  32. "1*Λνϟοτ͔Βୟ͚ΔΑ͏ʹ
    w ָָ໌ࡉͰ༻ҙ͍ͯ͠Δ"1*Λνϟοτ͔Βୟ͚Δ
    Α͏ʹͨ͠ɻ
    w ඇΤϯδχΞͷ୅ΘΓʹDVSMΛୟ͍ͯ͋͛Δ࡞ۀ͕
    ͳ͘ͳͬͨ

    View Slide

  33. ੩తղੳ
    w ੩తղੳͷ݁ՌΛνϟοτʹ௨஌͢ΔΑ͏ʹͨ͠ɻ
    w ΈΜͳݟ͍ͯΔͷͰɺ์ஔ͞Εؾຯͳ੩తղੳΛӡ
    ༻Ͱ͖ΔΑ͏ʹͳͬͨ

    View Slide

  34. ϦϦʔεதͷόʔδϣϯΛνΣοΫ
    w Կे୆΋͋ΔαʔόʔΛεΫϨΠϐϯά࣮ͯ͠ࡍʹ
    σϓϩΠ͞Ε͍ͯΔΞϓϦͷόʔδϣϯΛௐ΂Δπʔ
    ϧΛνϟοτ͔Β࣮ߦͰ͖ΔΑ͏ʹɻ
    w ສ͕ҰͷϦϦʔε࿙ΕΛ๷͍͛ͯΔ
    w ݩʑ͋ͬͨQZUIPOεΫϦϓτΛνϟοτ͔Βݺͼ
    ग़ͤΔΑ͏ʹ͚ͨͩ͠ʢεΫϦϓτͷग़ྗΛͦͷ·
    ·νϟοτʹग़ྗ͚ͨͩ͠ɺ΄΅࿑ྗθϩͰ࣮ݱʣ

    View Slide

  35. ϦϦʔεϞδϡʔϧͷϏϧυ
    w νϟοτͰ΍Δ͜ͱͰɺݸਓ͕΍ͬͯΔ͜ͱ͕Մ
    ࢹԽɾڞ༗͞ΕΔͷ͸ྑ͔ͬͨ
    w Θ͟Θ͟+FOLJOTʹϩάΠϯͤͣͱ΋੒Ռ෺Λ
    νϟοτ͔Βμ΢ϯϩʔυͰ͖Δ

    View Slide

  36. ໰୊͕ى͖ͨΒଈରԠ
    w Կ͔໰୊͋ͬͯ΋ɺνϟοτΛݟ͍ͯΔΤϯδχ
    Ξ͕ଈରԠͯ͘͠ΕΔ҆৺ײ

    View Slide

  37. ৭Μͳ௨஌Λνϟοτʹू໿
    w ϝʔϧΛසൟʹ։͘ͷ͸ਏ͍ͷͰɺࠓ··Ͱϝʔ
    ϧͰͷ௨஌Λνϟοτʹू໿ʢνϟοτͷྲྀྔ͕
    ૿͖͑ͯͨΒผͷ՝୊͕ग़ͦ͏͕ͩݱঢ়͸շదʣ

    View Slide

  38. ͍͞͝ʹ
    w طଘͷπʔϧΛνϟοτͭͳָ͛ͯΛ͠Α͏
    w αʔϏε֎ͷίʔσΟϯά͸΋ָ͍͠
    w ָΛ͢ΔͨΊͷۤ࿑Λ͠Α͏
    w $IBUͰ५׈ͳίϛϡχέʔγϣϯΛ

    View Slide

  39. ͋Γ͕ͱ͏͍͟͝·ͨ͠

    View Slide