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

SIerもはじめる わたしたちのDevOps #jjug_ccc

syobochim
January 30, 2017

SIerもはじめる わたしたちのDevOps #jjug_ccc

syobochim

January 30, 2017
Tweet

More Decks by syobochim

Other Decks in Technology

Transcript

  1. 4*FS΋͸͡ΊΔ Θͨͨͪ͠ͷ%FW0QT [email protected]ɹ[email protected][email protected]

  2. ͓͸Α͏͍͟͝·͢ syobochim _Dr_ASA ͓Εͨͪ4*FS

  3. ͓͸Α͏͍͟͝·͢ syobochim ͓Εͨͪ4*FS ৽࠺ ࣗݾ঺հͬͯԿݴͬͨΒ͍͍ͷ͔ Θ͔ΒΜɻ

  4. ೦ͷͨΊ

  5. MUSIC START

  6. %FW0QT %FW0QTͬͯ࠷ۙͳΜ͔͘͢͝ฉ͘͠ɺࠓ೔΋%FW0QTͷηο γϣϯ͕͍ͬͺ͍͋ΔʂͰ΋ͦ΋ͦ΋%FW0QTͬͯͳʹʁʁ

  7. ։ൃYӡ༻ ։ൃνʔϜͱӡ༻νʔϜ͕ڠྗͯ͠ ϏδωεʹՁ஋Λಧ͚Α͏ʂ %FW0QT

  8. จԽYٕज़ จԽ͚ͩͰ΋ٕज़͚ͩͰ΋μϝʂ %FW0QT

  9. ٕज़ • "VUPNBUFEJOGSBTUSVDUVSFʢΠϯϑϥͷ ࣗಈԽʣ • 4IBSFEWFSTJPODPOUSPMʢόʔδϣϯ؅ ཧͷڞ༗ʣ • 0OFTUFQCVJMEBOEEFQMPZʢϫϯες οϓʹΑΔϏϧυͱσϓϩΠʣ

    • 'FBUVSF'MBHTʢϑΟʔνϟʔϑϥάʣ • 4IBSFENFUSJDTʢϝτϦΫεͷڞ༗ʣ • *3$BOE*.SPCPUTʢ*3$΍*.ͷCPUʣ จԽ w 3FTQFDU ଚॏ  w 5SVTUʢ৴པʣ w )FBMUIZBUUJUVEFBCPVU GBJMVSFʢࣦഊʹରͯ͠ͷ݈શ ͳଶ౓ʣ w "WPJEJOH#MBNFʢඇ೉Λ͠ͳ ͍ʣ ͳʹ͢Δͷʁ http://www.slideshare.net/jallspaw/10-deploys-per-day-dev-and-ops-cooperation-at-flickr
  10. ٕज़ • "VUPNBUFEJOGSBTUSVDUVSFʢΠϯϑϥͷ ࣗಈԽʣ • 4IBSFEWFSTJPODPOUSPMʢόʔδϣϯ؅ ཧͷڞ༗ʣ • 0OFTUFQCVJMEBOEEFQMPZʢϫϯες οϓʹΑΔϏϧυͱσϓϩΠʣ

    • 'FBUVSF'MBHTʢϑΟʔνϟʔϑϥάʣ • 4IBSFENFUSJDTʢϝτϦΫεͷڞ༗ʣ • *3$BOE*.SPCPUTʢ*3$΍*.ͷCPUʣ จԽ w 3FTQFDU ଚॏ  w 5SVTUʢ৴པʣ w )FBMUIZBUUJUVEFBCPVU GBJMVSFʢࣦഊʹରͯ͠ͷ݈શ ͳଶ౓ʣ w "WPJEJOH#MBNFʢඇ೉Λ͠ͳ ͍ʣ ͳʹ͢Δͷʁ http://www.slideshare.net/jallspaw/10-deploys-per-day-dev-and-ops-cooperation-at-flickr ΞδϟΠϧ
  11. ΞδϟΠϧ اը ཁ݅ఆٛ ઃܭ ࣮૷ ςετ ϦϦʔε ΢ΥʔλʔϑΥʔϧ ΞδϟΠϧ ܭ

    ը ઃ ܭ ࣮ ૷ ς ε τ ϦϦ ʔε ϑΟʔυόοΫ ܭը͔ΒϦϦʔε·Ͱͷ ϦʔυλΠϜΛ୹͘ग़དྷΔ ܭ ը ઃ ܭ ࣮ ૷ ς ε τ ϦϦ ʔε ܭ ը ઃ ܭ ʜ ϑΟʔυόοΫ ӡ༻͸͜ͷλΠϛϯά͔Β։࢝
  12. ٕज़ • "VUPNBUFEJOGSBTUSVDUVSFʢΠϯϑϥͷ ࣗಈԽʣ • 4IBSFEWFSTJPODPOUSPMʢόʔδϣϯ؅ ཧͷڞ༗ʣ • 0OFTUFQCVJMEBOEEFQMPZʢϫϯες οϓʹΑΔϏϧυͱσϓϩΠʣ

    • 'FBUVSF'MBHTʢϑΟʔνϟʔϑϥάʣ • 4IBSFENFUSJDTʢϝτϦΫεͷڞ༗ʣ • *3$BOE*.SPCPUTʢ*3$΍*.ͷCPUʣ จԽ w 3FTQFDU ଚॏ  w 5SVTUʢ৴པʣ w )FBMUIZBUUJUVEFBCPVU GBJMVSFʢࣦഊʹରͯ͠ͷ݈શ ͳଶ౓ʣ w "WPJEJOH#MBNFʢඇ೉Λ͠ͳ ͍ʣ ͳʹ͢Δͷʁ http://www.slideshare.net/jallspaw/10-deploys-per-day-dev-and-ops-cooperation-at-flickr *OGSBTUSVDUVSFBT$PEF (JU $*$% ػೳͷ੾Γସ͑ σʔλͷݟ͑ΔԽ ϏϧυɾσϓϩΠ݁ՌͷΞϥʔτ
  13. ٕज़ • "VUPNBUFEJOGSBTUSVDUVSFʢΠϯϑϥͷ ࣗಈԽʣ • 4IBSFEWFSTJPODPOUSPMʢόʔδϣϯ؅ ཧͷڞ༗ʣ • 0OFTUFQCVJMEBOEEFQMPZʢϫϯες οϓʹΑΔϏϧυͱσϓϩΠʣ

    • 'FBUVSF'MBHTʢϑΟʔνϟʔϑϥάʣ • 4IBSFENFUSJDTʢϝτϦΫεͷڞ༗ʣ • *3$BOE*.SPCPUTʢ*3$΍*.ͷCPUʣ จԽ w 3FTQFDU ଚॏ  w 5SVTUʢ৴པʣ w )FBMUIZBUUJUVEFBCPVU GBJMVSFʢࣦഊʹରͯ͠ͷ݈શ ͳଶ౓ʣ w "WPJEJOH#MBNFʢඇ೉Λ͠ͳ ͍ʣ ͳʹ͢Δͷʁ http://www.slideshare.net/jallspaw/10-deploys-per-day-dev-and-ops-cooperation-at-flickr *OGSBTUSVDUVSFBT$PEF (JU $*$% ػೳͷ੾Γସ͑ σʔλͷݟ͑ΔԽ ϏϧυɾσϓϩΠ݁ՌͷΞϥʔτ ʘ஌ͬͯΔʗ
  14. ͔͜͜Β͕ຊ୊ ͜͜·Ͱ͸ڭՊॻతͳ࿩͚ͩͬͨͲɺॻ͍ͯ͋Δٕज़ʹ͍ͭͯ͸π ʔϧ͸ҧ͏ʹ͠Ζɺ͞Μ͟Μ৭Μͳਓ͕ൃද͖ͯͨ͜͠ͱͩ͠ʜɻ

  15. 4*FS͕%FW0QT ͡Ό͋ɺ4*FSͱ͍͏ཱ৔Ͱ%FW0QTΛ΍Ζ͏ͱ͢Δҙຯ͸ʁ

  16. 8IZ w %FW0QTΛ࣮ݱ͢Δٕज़ΛϚελʔʂ Ҋ݅Λޮ཰Խʂ w ͓٬༷͕ʮ%FW0QT͍ͨ͠ʯͦΜͳͱ ͖ʹߩݙग़དྷΔύʔτφʔʹʂ w ࣗࣾαʔϏεͷڝ૪ྗ61ʂ

  17. 8IZ w %FW0QTΛ࣮ݱ͢Δٕज़ΛϚελʔʂ Ҋ݅Λޮ཰Խʂ w ͓٬༷͕ʮ%FW0QT͍ͨ͠ʯͦΜͳͱ ͖ʹߩݙग़དྷΔύʔτφʔʹʂ w ࣗࣾαʔϏεͷڝ૪ྗ61ʂ

  18. w %FW0QTΛ࣮ݱ͢Δٕज़ΛϚελʔʂ Ҋ݅Λޮ཰Խʂ w ͓٬༷͕ʮ%FW0QT͍ͨ͠ʯͦΜͳͱ ͖ʹߩݙग़དྷΔύʔτφʔʹʂ w ࣗࣾαʔϏεͷڝ૪ྗ61ʂ 8IZ ௨ৗͷ4*Ҋ݅Ͱ΋

    ඞཁʂ *OGSBTUSVDUVSFBT$PEF (JU $*$% ػೳͷ੾Γସ͑ σʔλͷݟ͑ΔԽ ϏϧυɾσϓϩΠ݁ՌͷΞϥʔτ
  19. ͱ͋Δ4*Ҋ݅ ݁ߏେ͖ΊʴݎΊͷҊ݅ ͓٬༷ɿۚ༥ܥ ମ੍ɿνʔϜʢΠϯϑϥνʔϜΞϓϦνʔϜʣ ɹɹɹϓϩύʔ͚ͩͰਓ௒͑ʢύʔτφʔ߹ΘͤΔͱʜʁʣ උߟɿ௒େن໛γεςϜͷपลγεςϜ։ൃ

  20. ͱ͋Δ4*Ҋ݅ (JU#VDLFU +FOLJOT https://12factor.net/ja/codebase ։ൃαʔόʔ ςετ؀ڥ ຊ൪؀ڥ ιʔείʔυ

  21. Why ? w %FW0QTΛ࣮ݱ͢Δٕज़ΛϚελʔʂ Ҋ݅Λޮ཰Խʂ w ͓٬༷͕ʮ%FW0QT͍ͨ͠ʯͦΜͳͱ ͖ʹߩݙग़དྷΔύʔτφʔʹʂ w ࣗࣾαʔϏεͷڝ૪ྗ61ʂ

  22. w %FW0QTΛ࣮ݱ͢Δٕज़ΛϚελʔʂ Ҋ݅Λޮ཰Խʂ w ͓٬༷͕ʮ%FW0QT͍ͨ͠ʯͦΜͳͱ ͖ʹߩݙग़དྷΔύʔτφʔʹʂ w ࣗࣾαʔϏεͷڝ૪ྗ61ʂ Why ?

    ͓٬༷͕ʁʁ %FW0QT͍ͨ͠ʜʁ
  23. ೔ܦίϯϐϡʔλ ೥݄೔߸

  24. ސ٬͕ຊ౰ʹ ΍Γ͍ͨ͜ͱ %FW0QT͍ͨ͠ʜʁ ʷπʔϧΛೖΕ͍ͨ ˓ϏδωεΛՃ଎͢ΔͨΊʹ ɹϦʔυλΠϜΛ୹͍ͨ͘͠

  25. ϦʔυλΠϜʁ Ҋ͕݅࢝·͔ͬͯΒϦϦʔε͢Δ·Ͱ اը ઃܭ ϦϦʔε ։ൃ

  26. ސ٬͕ຊ౰ʹ ΍Γ͍ͨ͜ͱ ϦʔυλΠϜΛ୹͘͢Δ ࢓૊Έ࡞Γ͸4*FS͕ఏڙ͢ Δ

  27. ސ٬͕ຊ౰ʹ ΍Γ͍ͨ͜ͱ ͜ͷ࿩ͷৄࡉ͸ͪ͜Β http://qiita.com/kawasima/items/aefbe8ffefb14a685624

  28. w %FW0QTΛ࣮ݱ͢Δٕज़ΛϚελʔʂ Ҋ݅Λޮ཰Խʂ w ͓٬༷͕ʮ%FW0QT͍ͨ͠ʯͦΜͳͱ ͖ʹߩݙग़དྷΔύʔτφʔʹʂ w ࣗࣾαʔϏεͷڝ૪ྗ61ʂ Why ?

  29. w %FW0QTΛ࣮ݱ͢Δٕज़ΛϚελʔʂ Ҋ݅Λޮ཰Խʂ w ͓٬༷͕ʮ%FW0QT͍ͨ͠ʯͦΜͳͱ ͖ʹߩݙग़དྷΔύʔτφʔʹʂ w ࣗࣾαʔϏεͷڝ૪ྗ61ʂ Why ?

    ͍·औΓ૊ΜͰ͍Δ͜ͱʂ
  30. ࣗࣾαʔϏε ސ٬ͷγεςϜΛվળ͍ͯ͘͜͠ͱΛ໨తͱͨ͠ ΞϓϦέʔγϣϯͷ࢖༻ঢ়گΛऩूͯ͠ϨϙʔςΟϯά͢ΔαʔϏε w ͲͷϖʔδͰγεςϜΛݟݶ͔ͬͨʢ཭୤཰ʣ w ೖྗ߲໨ͷͲΕ͕࢖͍ʹ͍͔͘ʢΤϥʔ཰ʣ w ࢖ΘΕ͍ͯͳ͍ػೳ͸ͳ͍͔ʢ࢖༻཰ʣ ͳͲͳͲʜ

    ࣄྫ
  31. ࣗࣾαʔϏε ϢʔβͷߦಈΛՄࢹԽ ཁ͸,JCBOB

  32. ࣄྫ -PHTUBTI &MBTUJDTFBSDI ,JCBOB Ϣʔβͷ ߦಈϩά ԾઆΛཱͯΔ σʔλΛऩू ݁ՌΛ෼ੳ ސ٬ʹվળఏҊ

    ऩू Ճ޻ ղੳର৅ γεςϜ
  33. શࣾһ͕ٕज़త࣭໰Λ౤ߘͰ͖ΔαΠτ τϥΠΞϧ ՝୊ γεςϜΛ࢖ͬͯ͘ΕΔਓ͕গͳ͍ ϊ΢ϋ΢͕ͳ͔ͳ͔ू·Βͳ͍ ͍·͸ࣾ಺ࢼߦϑΣʔζʂ ࣾ಺γεςϜʹద༻த

  34. ࣗࣾαʔϏε ମ੍ ։ൃϝϯόʔ ϓϩμΫτϚωʔδϟ ސ٬ LBXBTJNB HPSPOBP TZPCPDIJN ZN TFLJ

    [email protected] ฏۉࡀ ೥໨ ೥໨ ೥໨ ৽ਓ ৽ਓ
  35. ϢʔβߦಈΛՄࢹԽͨ݁͠Ռ ໰୊͕Έ͖͑ͯͨ ࣗࣾαʔϏε ϢʔβߦಈΛՄࢹԽ

  36. ։ൃͷਐΊํ Ծઆ ෼ੳ ݕূ

  37. ࣭໰ͷ౤ߘ͕গͳ͍ͷ͸౤ߘը໘͕࢖͍ʹ͍͔͘ΒͰ͸ʁ ˣ ౤ߘը໘ͷϢʔβߦಈΛσʔλͱͯ͠औಘɾՄࢹԽ ࣗࣾαʔϏε Ծઆ

  38. ࣗࣾαʔϏε ݁Ռ ߲໨͝ͱͷΤϥʔ཰ ʮظ೔ʯ͚͕ͩ Τϥʔ཰͔͍ͨ ϢʔβϏϦςΟ͕ ѱ͍ͷͰ͸ʁ

  39. ࣗࣾαʔϏε ݁Ռ ʮظ೔ʯ͸ඞਢ߲໨Ͱ །Ұɺॳظ஋͕ೖͬͯͳ͍

  40. ࣗࣾαʔϏε ݁Ռ ߲໨͝ͱͷฏۉೖྗ࣌ؒ ʮίϯςϯπΧςΰϦ໊ʯ ͷೖྗ͕࣌ؒ௕͍ ʢ࣍఺͕վળςʔϚʣ ೖྗʹϢʔβ͕ ೰ΜͰ͍ΔͷͰ͸ʁ

  41. ࣗࣾαʔϏε ݁Ռ ʮίϯςϯπΧςΰϦ໊ʯ͸ બ୒ࢶ͕ଟ͍͠ ҧ͍͕Θ͔Γʹ͍͘

  42. ސ٬ʹվળఏҊΛͯ͠ ࣮ࡍʹվળҊ݅Λ·Θ͍ͯ͠Δ ϦʔυλΠϜ͸࠷୹ͰIPVST ࣗࣾαʔϏε ੒Ռ

  43. ݕࡧػೳͰϢʔβ͕ٻΊ͍ͯΔ౤ߘʹͨͲΓண͚͍ͯͳ͍ͷͰ͸ ϩάΠϯը໘͕͋Δ͜ͱͰϢʔβ͕཭୤͍ͯ͠ΔͷͰ͸ = ଞʹ΋ Ծઆʹ͋Θͤͯϩάऩूͷ࢓૊Έࣗମ΋มߋ

  44. ͜ͷϢʔβ͸͓ͦΒ͘ݕࡧͰཉ͍݁͠Ռ ͕ ಘΒΕ͍ͯͳ͍͠ ͦΕʹର͢ΔϑΥϩʔ΋Ͱ͖ͯͳ͍ ೰ΜͰ͍ΔϢʔβʹΞϓϩʔν͢ΔͨΊʹ ϩάऩूͷ࢓૊ΈࣗମΛมߋͯ͠ σʔλऔಘத ଞʹ΋ ݕࡧػೳͰϢʔβ͕ٻΊ͍ͯΔ౤ߘʹͨͲΓண͚͍ͯͳ͍ͷͰ͸

  45. ͜ΜͳࣗࣾαʔϏεΛࢧ͑Δ Θͨͨͪ͠ͷ%FW0QT Θͨͨͪ͠ͷ%FW0QT

  46. Θͨͨͪ͠ͷ%FW0QT ٕज़ %FW0QTΛࢧ͑Δ

  47. ։ൃͷϦʔυλΠϜ اը ސ٬ ఏҊ ઃܭɾ։ൃ ϦϦʔε ࠷୹IPVST اըͰग़ͨ͠ԾઆΛఏҊ ΦϯαΠτͰ։ൃ͍ͯ͠Δͷ Ͱɺ͙͢ʹఏҊ͕ग़དྷΔ

    ͓٬༷ͷঝೝΛ͍͍ͨͩ ͨΒ։ൃΛ։࢝ (JU)VC'MPXͰ։ൃ NBTUFS UPQJD 13 (JU)VC'MPX ϨϏϡʔ׬ྃޙʹ+FOLJOT͔Β ຊ൪؀ڥʹσϓϩΠ
  48. εϐʔυ FOLBOGBMDIJPODPOUBJOFSͰσϓϩΠ͕ͱʹ͔͘଎͍ʂʂ FOLBOGBMDIJPODPOUBJOFSͷৄࡉ͸ࢀߟϦϯΫΛΈ͍ͯͩ͘͞ ͔ͳΓͬ͘͟Γݴ͏ͱ FOLBOىಈ࠶σϓϩΠ͕ΊͬͪΌ͸΍͍ϑϨʔϜϫʔΫ GBMDIJPODPOUBJOFSαʔό୆ͰແఀࢭσϓϩΠͰ͖Δίϯςφ FOLBO https://enkan.github.io/index.html http://qiita.com/kawasima/items/723646eb30a91d724352 GBMDIJPODPOUBJOFS

    https://github.com/kawasima/falchion http://www.slideshare.net/kawasima/java-62447735
  49. TFSWFS σϓϩΠ GBMDIJPODPOUBJOFS FOLBO QVTI ௨஌ ΞϓϦͷ഑ஔ SFGSFTI Ϗϧυ ௨஌

    αʔό୆Ͱ ແఀࢭσϓϩΠ͕ग़དྷΔʂ +0#࣮ߦ͕࣌ؒ෼Ҏ಺ʂ͸΍͍ʂ ɾςετ ɾNBWFOϦϙδτϦ΁ͷΞοϓϩʔυ ɾKBSΛసૹ ɾσϓϩΠ
  50. ࠶σϓϩΠ͸ϦΫΤετΛ౤͛Δ͚͔ͩͩΒ௒؆୯ ಉ͡ΞϓϦΛ࠶σϓϩΠ 1045IUUQYYYYYYYDPOUBJOFSSFGSFTI όʔδϣϯ͕ҧ͏ΞϓϦΛ࠶σϓϩΠ 1045IUUQYYYYYYYDPOUBJOFSSFGSFTI ˞όʔδϣϯͷΞϓϦΛσϓϩΠ͢Δ৔߹ σϓϩΠ CBTFEJS ΞϓϦ 

     ΞϓϦ
  51. Θͨͨͪ͠ͷ%FW0QT %&.0

  52. จԽ %FW0QTΛࢧ͑Δٕज़Λࢧ͑Δ Θͨͨͪ͠ͷ%FW0QT

  53. ;ͭ͏ͷडୗ։ൃ TZPCP0QT 4*FSͷதͰ࣮ߦՄೳͳ Α͏ʹ૊ΈཱͯΒΕͨ ΞδϟΠϧ εΩϧʹϚονͨ͠ ΞαΠϯ Θͨͨͪ͠ͷ%FW0QT 8JMM$BO

  54. ;ͭ͏ͷडୗ։ൃ 4*FSͷதͰ࣮ߦՄೳͳΑ ͏ʹ૊ΈཱͯΒΕͨΞδ ϟΠϧ खॱΛकΔ͜ͱͰΞδϟΠϧ͕ ୭ʹͰ΋ग़དྷΔ https://github.com/kawasima/rascal-scheme/ http://www.slideshare.net/kawasima/ss-15118922

  55. 8JMM$BO εΩϧʹϚονͨ͠ΞαΠϯ ݸਓͷಛੑ΍ಘҙ෼໺ΛΈͯΞαΠϯ https://github.com/kawasima/mentr IUUQXXXTMJEFTIBSFOFULBXBTJNBTT

  56. ेਓे৭ TZPCPDIJN HPSPOBP ZN TFLJ [email protected] ෯޿͍஌ࣝΛ࣋ͭεϖγϟϦ ετͱٕͯ͠ज़తͳҙࢥܾఆ Λͨ͠Γٕज़૬ஊΛ͏͚Δ ޿ใΤϯδχΞͱͯ͠ԿΛ໨ࢦ͠

    ͯԿΛಘΔͷ͔Λઃܭ͢Δ ੒ՌΛܭը࣮ͯ͠ߦ͠ɺपΓʹ఻ ͑Δ Ϧʔμϒϧίʔμʔ Α͍ίʔυͷॻ͖ํΛ ߟ͑ΒΕΔ ϑϩϯτΤϯυͱ ػցֶश୲౰ &MBTUJD੡඼୲౰
  57. ΍ͬͯΈͯ

  58. ̑೥໨ҎԼͷϝϯόʔ͕ू·͍ͬͯΔ ϐνϐνϑϨογϡͳνʔϜ Ͱ΋ 4*FSͳฐࣾͷϧʔϧͷͳ͔Ͱ %FW0QT͕Ͱ͖ͨ TZPCP0QT ΍ͬͯΈͯ

  59. TZPCP0QT ΍ͬͯΈͯ ʘ͍··Ͱʗ ఺ຬ఺͔Βͷݮ఺ ސ٬ͷجװγεςϜͳͲ اը͕ϛεͬͯ͸͍͚ͳ͍γ εςϜ࡞Γ͹͔ͬΓͩͬͨ ϦʔυλΠϜΛ୹͍͔ͯ͘͠ͳ͍ͱ Ձ஋Λಧ͚ΒΕͳ͍ ʘ͍·ʗ

    ఺͔ΒͷՃ఺ ࠓճͷγεςϜ։ൃ͸اը͕ ͋ͨΕ͹ϥοΩʔͱ͍͏ ελϯεͰγεςϜ։ൃ
  60. ϦʔυλΠϜ͕୹͍ͷͰ αʔϏε։ൃ͸ ࣄྫΛ࡞Δɾϊ΢ϋ΢ΛಘΔͷʹ खͬऔΓૣ͍ TZPCP0QT ΍ͬͯΈͯ

  61. TZPCP0QT ࠓޙʹ͍ͭͯ ࠓޙ͸ސ٬ͷ͍ΖΜͳγεςϜʹ ಋೖ͍ͯ͘͠༧ఆ

  62. ʘ͋Γ͕ͱ͏͍͟͝·ͨ͠ʗ

  63. ରઓ૬खืूத