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

Immutable Infrastructureが開発プロセスに与える影響(仮) #immutableinfra

Immutable Infrastructureが開発プロセスに与える影響(仮) #immutableinfra

B4afc7d853d7f1cb6a253d3c7183c05a?s=128

Naoya Ito

March 25, 2014
Tweet

Transcript

  1. *NNVUBCMF*OGSBTUSVDUVSF ͕։ൃϓϩηεʹ༩͑ΔӨڹ Ծ  !OBPZB@JUP *NNVUBCMF*OGSBTUSVDUVSF$POGFSFODF 

  2. *NNVUBCMF*OGSBTUSVDUVSF •  %JTQPTBCMF$PNQPOFOUT •  ෆมͳɺঢ়ଶΛ࣋ͨͳ͍ɺഇغՄೳͳ

  3. αʔόʔͷঢ়ଶ •  ͋Δ೔ೲ඼͞Εͨ3BJMTαʔόʔ –  9݄9೔ʹ%/4ΩϟογϡΛઃఆͨ͠ –  :݄:೔ʹϓϩηε਺Λνϡʔχϯάͨ͠ –  ;݄;೔ʹSVCZͷόʔδϣϯΛ্͛ͨ – 

    ŋŋŋ ͍Ζ͍Ζ܁Γฦ͠  •  ͜ͷαʔόʔʹ൒೥ৼΓʹ3BJMTΞϓϦΛσϓϩ Π –  Ռͨͯ͠σϓϩΠ͸ਖ਼͘͠ऴΘΔͷ͔
  4. αʔόʔͷঢ়ଶΛ؅ཧ͢Δ •  खॱॻ  •  ࣗಈԽ  •  αʔόʔ؅ཧσʔλϕʔε 

    •  $IFG 1VQQFU 
  5. ঢ়ଶ؅ཧ͕໘౗ͳΒɺঢ়ଶΛ ؅ཧ͠ͳ͚Ε͹ྑ͍͡Όͳ͍

  6. h"p://chadfowler.com/blog/2013/06/23/immutable-­‐deployments/

  7. #MVF(SFFO%FQMPZNFOU

  8. ΄ΒɺΈΜͳ8JOEPXTௐࢠѱ͘ͳΔͱ ࠶Πϯετʔϧͯͨ͠͡Όͳ͍Ͱ͔͢ɻ ͋ΕͰ͢Α͋Ε

  9. )FSPLV )FSPLV͸HJUQVTI͢Δຖɺ৽͍͠؀ڥ ίϯςφ Λ࡞Γɺݹ͍؀ڥΛغͯΔ

  10. 5SBWJT$* 5SBWJT$*΋ςετΛ࣮ߦ͢ΔͨͼɺίϯςφΛ࡞ΓऴΘͬͨΒغͯΔ

  11. ࣌ؒʹ ճσϓϩΠ h"p://www.publickey1.jp/blog/12/amazon11000_aws_reinventday2_am.html

  12. *NNVUBCMF*OGSBTUSVDUVSF Λࢧ͑Δٕज़ •  ίϯςφ – -JOVYͳΒ-9$ͳͲ •  ίϯςφΛӡ༻͢Δपล࣮૷ – FH%PDLFS

  13. %PDLFS

  14. *NNVUBCMF*OGSBTUSVDUVSF ͱ ͍ۙকདྷͷ ։ൃϓϩηε

  15. ઌʹαϚϦ*NNVUBCMFʹͳΔӨڹ •  *NNVUBCMFͳ੍໿ˠΞϓϦέʔγϣϯΞʔΩ ςΫνϟ ઃܭ ΁΋ଟେͳӨڹ •  ʮ࠶ݱՄೳʯͳΞϓϦέʔγϣϯ •  ςετ༰қੑͷ޲্

    •  ্ॻ͖σϓϩΠ͔ΒίϯςφϕʔεσϓϩΠ΁ –  ݁ՌɺΑΓਝ଎ͳܧଓσϓϩΠ͕Մೳʹ  ΞϓϦέʔγϣϯ։ൃऀ΋ແࢹͯ͠͸͍ΒΕͳ͍ ઃܭ΍։ൃϓϩηε΁ͷมԽ
  16. ΞʔΩςΫνϟ΁ͷӨڹ •  *NNVUBCMFŋŋŋ͋Δҙຯෆࣗ༝ʹͳΔ – αʔόʔ؀ڥ͕ෆࣗ༝ʹͳΔ – ͦͷෆࣗ༝͞ΛΞϓϦέʔγϣϯ͕ड͚༰Ε Δඞཁ͕͋Δ – Ώ͑ʹɺαʔόʔΞʔΩςΫνϟىҼͰΞϓ ϦέʔγϣϯΞʔΩςΫνϟ੍͕ݶ͞ΕΔ

  17. ੍໿  •  ੍໿͸ඞͣ͠΋ѱ͍΋ͷͰ͸ͳ͍ – ྫ3&45 – ྫεςʔτϨεͳ)551ͱ888

  18. 5IF5XFMFWF'BDUPS"QQ h"p://twelve-­‐factor-­‐ja.herokuapp.com/   (オリジナル:  h"p://12factor.net/)

  19. •  ϓϩηε͸εςʔτϨε͔ͭ4IBSFE /PUIJOHͰ͋Δ •  ઃఆΛίʔυ͔Βݫີʹ෼཭͢Δ͜ͱΛ ཁٻ͢Δ •  ͢΂ͯͷ ύοέʔδͷ ґଘؔ܎Λґଘ

    ؔ܎એݴϚχϑΣετͰ׬શ͔ͭݫີʹ એݴ͢Δ #VOEMFSͳͲͷ࿩  h"p://twelve-­‐factor-­‐ja.herokuapp.com/  より引用
  20. ݁Ռͱͯ͠ŋŋŋ •  ηοτΞοϓࣗಈԽͷͨΊʹએݴతͳϑΥʔϚοτΛ࢖͍ɺ ϓϩδΣΫτʹ৽͘͠ՃΘͬͨ։ൃऀ͕ཁ͢Δ࣌ؒͱίετ Λ࠷খԽ͢Δ •  Լ૚ͷ04΁ͷґଘؔ܎Λ໌֬Խ͠ɺ࣮ߦ؀ڥؒͰͷҠ২ੑΛ ࠷େԽ͢Δ •  ϞμϯͳΫϥ΢υϓϥοτϑΥʔϜ্΁ͷσϓϩΠʹదͯ͠

    ͓Γɺαʔόʔ؅ཧ΍γεςϜ؅ཧΛෆཁͳ΋ͷʹ͢Δɻ •  ։ൃ؀ڥͱຊ൪؀ڥͷࠩҟΛ࠷খݶʹ͠ɺΞδϦςΟΛ࠷େ Խ͢ΔܧଓతσϓϩΠΛՄೳʹ͢Δɻ •  πʔϧɺΞʔΩςΫνϟɺ։ൃϓϥΫςΟεΛେ෯ʹมߋ͢ Δ͜ͱͳ͘εέʔϧΞοϓͰ͖Δɻ h"p://twelve-­‐factor-­‐ja.herokuapp.com/  より引用
  21. *NNVUBCMFͳ੍໿͕΋ͨΒ͢ྑ͍Өڹ •  5XFMFWF'BDUPS"QQ͸)FSPLVͰϗετ ͢Δ4BB4Λഎܠʹهड़͞Εͨจॻ •  ੍໿͕ΞϓϦέʔγϣϯઃܭʹٴ΅͢ ྑ͍ Ө ڹ – 

    ྫεςʔτϨε͔ͭ4IBSFE/PUIJOHˠΞϓϦ έʔγϣϯͷ࠶ݱੑ޲্ *NNVUBCMFͰ͋Δͱ͍͏Ұݟෆࣗ༝ͳ੍໿͕ɺΠϯϑϥӡ༻͚ͩ Ͱͳ͘ɺΞϓϦέʔγϣϯͷઃܭʹ·Ͱྑ͍ӨڹΛٴ΅͢
  22. ʮ࠶ݱՄೳʯͳΞϓϦέʔγϣϯ •  Ͳ͜Ͱ΋࠶ݱͰ͖Δ͔Β –  BTB4FSWJDFʹ์ΓࠐΉ͜ͱ͕Ͱ͖Δ •  1MBUGPSNBTB4FSWJDFɺ$*BTB4FSWJDFɺ $%BTB4FSWDJDFŋŋŋ •  ΞϓϦέʔγϣϯͷަ׵Մೳੑ

    – ։ൃ؀ڥͱϓϩμΫγϣϯΛಉҰࢹͰ͖Δ – ԣల։ͷεέʔϧ͕༰қʹͳΔ
  23. ςετ༰қੑ •  ʮ࠶ݱՄೳʯʮεςʔτϨε͔ͭγΣΞʔυφογϯ άʯ –  ŋŋŋ͍͔ʹ΋ςετ͠΍͍͢ h"p://www.slideshare.net/techblogyahoo/jenkins-­‐withdocker-­‐131220

  24. ্ॻ͖σϓϩΠ͔Β ίϯςφϕʔεͷσϓϩΠ΁ •  طଘͷ؀ڥΛ্ॻ͖͢ΔͷͰ͸ͳ͘ɺΦϯσϚϯυͰ৽͍͠؀ڥΛ ࡞Γग़͢ –  ࢼߦ༰қੑϒϥϯν͝ͱʹΞϓϦ 2VJQQFSࣾޙड़  – 

    ੾Γ໭͠Մೳੑ#MVF(SFFO%FQMPZNFOU "NB[PO 
  25. 2VJQQFSࣾͷࣄྫ •  GFBUVSFCSBODI΁ͷQVTIͷͨͼɺ)FSPLVͰΞϓϦέʔγϣϯ Λ࡞Δ •  ඇ։ൃऀͱ63-Λަ׵ͯ͠ɺ࣮؀ڥͰ͙͢ʹϨϏϡʔͰ͖Δ •  *NNVUBCMF*OGSBTUSVDUVSFͰಈతɾϙʔλϒϧʹͳ͍ͬͯ͘ͱɺ ͜͏͍͏͜ͱ͕Մೳʹͳ͍ͬͯ͘ͱ͍͏ྑ͍ࣄྫ h"p://blog.madoro.org/mn/93

  26. *NNVUBCMF*OGSBTUSVDUVSFͷݱࡏ •  ։ൃऀ͕ࢼߦࡨޡΛ܁Γସ͍͑ͯ͠Δஈ֊ •  ͍Ζ͍Ζඞཁͳ෦඼͕࡞ΒΕ͍ͯΔ –  %PDLFSɺNFTPTEPDLFSɺTFSG •  ʮ1SJWBUFͳ1BB4͕ཉ͍͠ʯͰ͸ͳ͘ʮطଘΠϯϑϥ ͷҰ෦Λಈతʹ͍ͨ͠ʯͱ͍͏Ϣʔβʔ͕஫໨

    –  શ෦)FSPLVͰ0,Ͱ͸ͳ͍Ͱ͢͠ •  Ϣʔβʔ͸ίϯςφϕʔεͷσϓϩΠͷརӹΛମײ࢝͠ Ί͍ͯΔ
  27. ͜Ε͔Β •  *NNVUBCMF*OGSBTUSVDUVSFʹΑͬͯɺࠓ·Ͱݻఆత ͩͱߟ͍͑ͯͨίϯϙʔωϯτ͕ಈతɾΦϯβϑϥΠʹ ͳ͍ͬͯ͘ –  ੜ͖෺ͷΑ͏ʹγεςϜͷܥશମ͕ಈ͘ྖҬ΁·ͨҰา •  ࡢࠓͷαʔόʔΠϯϑϥύϥμΠϜͷूେ੒ͱͯ͠ͷ *NNVUBCMF*OGSBTUSVDUVSF

    –  ͍Ζ͍Ζͳ֓೦ɺ࣮૷͕͜ͷߟ͑ํʹू໿͞Ε͍ͯ͘ –  ݁ՌతʹɺΞϓϦέʔγϣϯઃܭ΍։ൃϓϩηε΋ӨڹΛड͚ Δɺͱࢥ͏ɻ