Slide 1

Slide 1 text

ೖ໳$IFG4PMP མͪึर͍

Slide 2

Slide 2 text

No content

Slide 3

Slide 3 text

No content

Slide 4

Slide 4 text

ຊ೔ͷ࿩୊

Slide 5

Slide 5 text

•  ग़൛ޙͷ൓Ԡ͔Β •  མͪึर͍

Slide 6

Slide 6 text

GBDFCPPLͱDIFG

Slide 7

Slide 7 text

• $IFG$POG • GBDFCPPLͷதͷਓൃද IUUQULBLIBUFOBCMPHDPNFOUSZ

Slide 8

Slide 8 text

•  QFPQMF •  5FOTPGUIPVTBOETPG IFUFSPHFOFPVTTZTUFNT •  0QTDPEF1SJWBUF$IFG •  l5FTUJOHBHBJOTUSFBMTZTUFNJT VTFGVMBOEOFDFTTBSZz

Slide 9

Slide 9 text

$IFGͰͲ͜·Ͱ΍Δͷ

Slide 10

Slide 10 text

•  $IFGͰશ෦΍Δͷ •  σϓϩΠ΋$IFGͰ •  TTIͯ͠௚઀มߋ͸͢Δͷ

Slide 11

Slide 11 text

No content

Slide 12

Slide 12 text

•  جຊ͸$IFG͚ͩͰ΍Δ – Πϯελϯεىಈޙͷߏ੒มߋ͸શͯ $IFGͰߦ͏ɻ௚઀มߋ͠ͳ͍ •  ΞϓϦέʔγϣϯͷσϓϩΠ͸ྫ֎ – DBQJTUSBOPFUD

Slide 13

Slide 13 text

•  େࣄͳߟ͑ํ – (>$IFGࣗಈԽπʔϧ – <0,>$IFGϊʔυͷঢ়ଶ؅ཧ ccoonnvveerrggeennccee ((収束))

Slide 14

Slide 14 text

•  ϊʔυͷঢ়ଶ͸$IFGͰهड़͞Ε͍ͯ ͳ͚Ε͹ͳΒͳ͍ – 㱺TTIͰߏ੒มߋ͢Δͱهड़͞Εͯͳ͍ ঢ়ଶ͕ଘࡏ͢Δ͜ͱʹ •  ΞϓϦέʔγϣϯσϓϩΠ͸ಛघ – SPMMCBDL΍ϒϧʔάϦʔ ϯσϓϩΠ – ͦΕઐ༻ͷπʔϧʹ೚ͤΔ

Slide 15

Slide 15 text

$IFG4PMPͰͲ͜·Ͱ

Slide 16

Slide 16 text

•  $IFG4PMP͸ͲͷϨϕϧ·Ͱ •  ෳ਺୆ʹ$IFG4PMP •  $IFG4FSWFSWT$IFG4PMP

Slide 17

Slide 17 text

•  େن໛ ਺ඦʙ ୆ – ͓ͦΒ͘$IFG4FSWFSҰ୒ •  தن໛ ʙ਺े୆ – $IFG4PMPͰ΋ؤுΕΔ – $IFG4FSWFSೖΕΔ͔೰ΈͲ͜Ζ •  খن໛ ʙे਺୆ – $IFG4PMPͰे෼

Slide 18

Slide 18 text

$  echo  host1  host2  host3  |  xargs  –n  1  knife  solo  cook ਺୆ͳΒ͜ΕͰ

Slide 19

Slide 19 text

$  cap  provision YBSHTͰਏ͘ͳͬͨΒŋŋŋ

Slide 20

Slide 20 text

$  knife  search  node  “platform:centos  AND  languages_ruby_version: 1.8*” $IFG4FSWFS͸OPEFΛͰݕࡧͰ͖Δ

Slide 21

Slide 21 text

$  sudo  chef-­‐client  –d  –i  900 $IFG4FSWFSͰ͸$MJFOU͕ࣗ཯ߋ৽Ͱ͖Δ

Slide 22

Slide 22 text

•  $IFG4FSWFSͷಋೖ͕໘౗ – DIFG[FSPͬͯͷ͕ग़ͨͦ͏Ͱ͢ – %#΍ೝূ͕ͳ͍ͷͰӡ༻ָ͕ – ˞ະݕূ

Slide 23

Slide 23 text

'BCSJDWT$IFG

Slide 24

Slide 24 text

No content

Slide 25

Slide 25 text

•  ൺֱ͕࣠ͣΕ͍ͯ·͕͢ŋŋŋ •  'BCSJD ͱTI $IFG͸ίϯηϓ τ͕େ͖͘ҟͳΔ

Slide 26

Slide 26 text

•  ʲೋ౓໨ʳେࣄͳߟ͑ํ – (>$IFGࣗಈԽπʔϧ – <0,>$IFGϊʔυͷঢ়ଶ؅ཧ ccoonnvveerrggeennccee ((収束))

Slide 27

Slide 27 text

•  $IFG͸ঢ়ଶΛ؅ཧ͢Δ – ϨγϐͱҟͳΔঢ়ଶΛɺͦͷঢ়ଶʹͳ ΔΑ͏ʹ͢Δ •  ৔߹ʹΑͬͯ͸ʮ໭͢ʯ •  ʮαʔόʔߏஙࣗಈԽʯ͸ͦͷҰ໘ •  'BCSJD͸ঢ়ଶ͸؅ཧ͠ͳ͍ – ॻ͔Εͨ௨Γʹʮલਐʯ͢Δ͚ͩ

Slide 28

Slide 28 text

ϨγϐΛ(JUͰ؅ཧ͢Ε͹ʮϊʔυͷঢ়ଶʯΛόʔδϣϯ؅ཧ͢Δ͜ͱ͕Ͱ͖ Δɻ؅ཧ͍ͯ͠Δͷ͸୯ͳΔίʔυͰ͸ͳ͘ʮঢ়ଶʯɻ

Slide 29

Slide 29 text

7.Λڞ༗͢Δͷ ϨγϐΛ഑Δͷ

Slide 30

Slide 30 text

•  ։ൃ؀ڥͷඪ४Խʹ$IFGΛ࢖͓͏ •  Ͱ͖͕͋ͬͨ7.ΠϝʔδΛڞ༗͢΂ ͖͔ɺϨγϐΛڞ༗͢΂͖͔ŋŋŋ

Slide 31

Slide 31 text

•  ϨγϐΛڞ༗͠Α͏ʂ – ࣗ෼ͰDPOWFSHFODFͯ͠΋Β͏ – ίʔυͰঢ়ଶΛ֎෦Խͨ͠ͷ͔ͩΒ – Ϩοπ4PDJBM$PEJOH

Slide 32

Slide 32 text

ςετͲ͏͢Δͷ

Slide 33

Slide 33 text

No content

Slide 34

Slide 34 text

•  CFGPSFDPOWFSHFODFͳςετ •  *OUFHSBUJPOςετ

Slide 35

Slide 35 text

•  CFGPSFDPOWFSHFODFͳςετ – LOJGFDPPLCPPLUFTU •  γϯλοΫενΣοΫͱ͔ – GPPEDSJUJD •  -*/5&3Έ͍ͨͳͷ – DIFGTQFD •  Ϣχοτ ςετ – TUSBJOFS •  Ҏ্ͷπʔϧͷ࣮ߦΛิॿ͢Δ΋ͷ

Slide 36

Slide 36 text

require  'chefspec'     describe  'http_server::default'  do      let  (:chef_run)  {  ChefSpec::ChefRunner.new.converge  'http_server::default'  }      it  'should  install  nginx'  do          chef_run.should  start_service  'nginx'      end        it  'should  start  nginx'  do          chef_run.should  start_service  'nginx'      end   end DIFGTQFD IUUQRJJUBDPNJUFNTGFEFFCDCGΑΓ

Slide 37

Slide 37 text

•  *OUFHSBUJPOςετ – NJOJUFTUDIFGIBOEMFS – TFSWFSTQFD – 5FTU,JUDIFO •  ෳ਺؀ڥΛ7BHSBOUͰ্ཱͪ͛ͯ NJOJUFTUͰςετ૸ΒͤͨΓ͢Δ

Slide 38

Slide 38 text

require  'minitest/spec’     describe_recipe  'spec_examples::default'  do      describe  "files"  do          it  "creates  the  config  file"  do              file("/etc/fstab").must_exist          end            it  "ensures  that  the  foobar  file  is  removed  if  present"  do              file("/etc/foobar").wont_exist          end      end   end NJOJUFTUDIFGIBOEMFS

Slide 39

Slide 39 text

TFSWFSTQFD ଞͷਓͷൃදݟͯͶ

Slide 40

Slide 40 text

•  ఆ൪͸UFTULJUDIFONJOJUFTU –  PQTDPEFެࣜͩ͠ •  TFSWFSTQFDਪ͠ –  *OUFHSBUJPOςετ͸ॲཧܭʹґଘ͠ͳ͍ํ͕ྑ͍ •  কདྷԿ͔ʹ৐Γ׵͑Δ࣌΋ςετΛͦͷ··ྲྀ༻Ͱ͖Δ –  UFTULJUDIFOTFSWFSTQFDྑͦ͞͏ɻͨͩ͠ະݕূ •  ೰·͍͠ͱ͜Ζ – DIFGTQFD*OUFHSBUJPO5FTU͸݁ߏ৑௕ŋŋŋ ಉ͡Α͏ͳهड़͕ଟ͍

Slide 41

Slide 41 text

•  $IFG੝Γ্͕ͬͯΔ – GBDFCPPL͕਺ສ୆ͱ͔ܹ͍͠ •  ࢖͏ͳΒ$IFGͷίϯηϓτʹै͓͏ – ʮϊʔυͷঢ়ଶʯΛ؅ཧ͠Α͏ •  TFSWFSTQFDਪ͠ɻଞ΋ީิ͋ΔΑ