Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Puppet Book
Search
Kentaro Kuribayashi
May 10, 2013
Technology
3.9k
8
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Puppet Book
#pfcasual
Kentaro Kuribayashi
May 10, 2013
More Decks by Kentaro Kuribayashi
See All by Kentaro Kuribayashi
あとはAIに任せて人間は自由に生きる
kentaro
5
2.3k
社会人力と研究力ー博士号をキャリアの武器にするー
kentaro
3
380
IoTシステム開発の複雑さを低減するための統合的アーキテクチャ
kentaro
2
2.7k
Bidirectional Quadratic Voting Leveraging Issue-Based Matching
kentaro
2
880
大高生へのメッセージ(令和6年度「大高未来塾」) / Messages to Current Students
kentaro
0
380
「始め方」の始め方 / How to Start Starting Things
kentaro
5
1.1k
Dynamic IoT Applications and Isomorphic IoT Systems Using WebAssembly
kentaro
1
1.8k
わたしがこのところハマっている「ライセンスフリー無線」のご紹介 / An Invitation to License-Free Radio
kentaro
1
830
先行きの見えなさを楽しさに変える ーVUCA時代のキャリア論と絶対他力主義ー / How to develop your career in the VUCA era
kentaro
8
7.2k
Other Decks in Technology
See All in Technology
Maestro MCPとClaude Code Skillsによる自律的なE2Eテスト支援
asmz
0
420
re:Invent2026 事前勉強会 歴史と愉しみ方10分LT編
toshi_atsumi
0
150
ライフワーク「猫でもわかるDirectConnect」
kentapapa
0
210
Sinatra on PicoRuby ローカルでセルフホスト
bash0c7
0
100
TSKaigi Sendai 2026 - tsgo時代のTypeScript Playgroundはどう動くか
teamlab
PRO
0
110
新米を「売り越さない」、Aurora DSQLで作る在庫ゼロ死守の限定ドロップEC
yama3133
0
180
[General] 개발자로 해외 기업에서 일하기
skydoves
1
300
並列度を下げたら速くなった — go build の重複コンパイルを実測で見る
tomoaki25
0
160
お客様の「やりたい」の先を見通す合意形成プロセス ~裏にある課題と不安を解きほぐすコツ~
yukakoseki
0
110
kintoneで在庫管理システムを作るときの要件定義・設計ポイント
kai0707
0
280
Deep Data Security 機能解説
oracle4engineer
PRO
3
1k
PostgreSQL オプティマイザ統計の秘密
nori_shinoda
0
360
Featured
See All Featured
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
740
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
3
1.4k
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
670
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
650
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
2
3k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.6k
Ethics towards AI in product and experience design
skipperchong
2
460
Rails Girls Zürich Keynote
gr2m
96
14k
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
350
New Earth Scene 8
popppiees
4
2.8k
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
580
HTML-Aware ERB: The Path to Reactive Rendering @ RubyCon 2026, Rimini, Italy
marcoroth
5
900
Transcript
એ ʰೖPuppetʱ Automate Your Infrastructure
@kentaro Software engineer Rubyist / Perl Monger Agile DevOps-er Kentaro
Kuribayashi paperboy&co.
˒ લͷۈઌͰPuppet ChefΛ͚ͬͯͨͲແࢹͬ ͯͨ ˒ ͍·ͷձࣾͰPuppetΛΘ ͟ΔΛಘͳ͘ͳͬͨͷͰ PuppetͱΘͨ͠
ϒΫϩάͷύϒʔ http://p.booklog.jp/book/70667 ୡਓग़൛ձ http://tatsu-zine.com/books/puppet Amazon http://www.amazon.co.jp/dp/B00CL92JC0
อଘ༻ ؍༻ ීٴ༻
http://tmix.jp/design/detail/518356
ຊॳͷPuppetຊ
˒ ΦʔϓϯιʔεͳγεςϜࣗಈཧπʔϧ Puppet by mizzy ˒ Puppet Best Practice? by
mizzy ˒ Puppetͷεεϝ by mizzy ˒ Puppet Dojo by @trombik ͜Ε·ͰͷPuppetʹؔ͢ΔຊޠϦιʔε ͜Ε·Ͱຊޠॻ੶φγ
None
http://www.flickr.com/photos/bogdansuditu/2377844553/ ຊॻͷλʔήοτ
ΦϖϨʔγϣϯΤϯδχΞΑΓ Ή͠ΖΞϓϦέʔγϣϯ։ൃ ऀΛఆ ΞϓϦ։ൃऀ͕PuppetΛͬͯγεςϜߏங ʹࢀՃͰ͖Δ͙Β͍·Ͱ
lຊॻͷඪɺ͜ͷຊΛಡΜͩಡऀ͕Puppetͷ جຊʹ͍ͭͯͻͱͱ͓ΓΓɺΦϖϨʔγϣϯΤ ϯδχΞͷॻ͍ͨmanifest αʔόͷ͋Δ͖ঢ় ଶΛهड़ͨ͠ઃఆϑΝΠϧͷΑ͏ͳͷɻޙड़ ʹ มߋΛՃ͑ͨΓɺ͋ΔఔͷنͷͷͳΒࣗྗ Ͱ͍͔ͪΒॻ͚ΔΑ͏ʹͳͬͨΓ͢Δ͜ͱͰ͢ɻ ͦͷͨΊɺຊॻ͋͑ͯϦϑΝϨϯεͱͯ͠ͷ ཏੑΛࢦ͠·ͤΜɻ࣮ࡍͷֶशஈ֊Ͱඞཁͱͳ
Δࣝʹ͠΅ͬͯઆ໌͠·͢ɻz ʮ͡ΊʹʯΑΓ
ຊॻͷ༰
جૅฤ 112ষ lHello, World!z͔Βɺͻͱͱ͓ΓͷϦιʔεΛ͑ΔΑ͏ʹͳΔ·Ͱ Ԡ༻ฤ 13ষ td-agentΫϥελΛ࡞͠ɺserverspecͰςετɺσϓϩΠͱద༻·Ͱ
˒ VagrantΛ׆༻ͨ͠։ൃڥ ˒ ϋϯζΦϯͰֶΔΑ͏ߏ ˒ ΄Μͱʹඞཁͳ͜ͱͷΈઆ໌ جૅฤͷϙΠϯτ
˒ class/moduleͳͲେنͳ manifestΛॻ͘ͷʹ͔ܽͤͳ͍ ࣝʹ͍ͭͯղઆ ˒ ࣮ફతtd-agentΫϥελΛ࡞ ˒ serverspecʹΑΔςετʹ͍ͭͯ ˒ capistranoͰmanifestΛద༻
Ԡ༻ฤͷϙΠϯτ
Ԡ༻ฤͰߏங͢ΔγεςϜ
None
Learning Puppet͚ͩͰֶͳ͍ manifestߏͷϊϋʹ͍ͭͯղ આ͍ͯ͠Δͱ͜Ζ͕େ͖ͳҧ͍ɻ Leaning PuppetΑ͍υΩϡϝϯτ ͕ͩɺݴޠཁૉҎ্ͷ͜ͱֶͳ͍
ຊॻΛಡΉ͚ͩ Ͱجૅ͔Β࣮ફ ͰͷԠ༻తࣝ ·ͰशಘՄೳɻ
Infrastructure as Code
։ൃ Πϯϑϥ
γεςϜঢ়ଶΛίʔυͰهड़ pull requestͰ૬ޓϨϏϡʔ ιʔγϟϧγεςϜߏங!!1 ܦݧతɺҰࢠ૬తɺൿͷλϨΛͰ͖Δ͚ͩ ͳ͘͢ɺίʔυԽ͞ΕͨγεςϜߏங
None
ΤϯδχΞ
maglicaͳͲ ։ൃڥ https://github.com/mizzy/maglica AWS EC2ͳͲ ຊ൪ڥ http://aws.amazon.com/ Vagrant ϩʔΧϧڥ http://www.vagrantup.com/
αʔό͕ίʔυͰ͍͡ ΕΔΑ͏ʹͳͬͨ͜ͷ Ϋϥυ࣌Ͱʜʜ http://www.flickr.com/photos/nirak/644337888/
ΤϯδχΞͷڞ௨ݴޠ ͱͯ͠ͷʮίʔυʯͷ ׂ·͢·͢େ͖͍ http://www.flickr.com/photos/trinity-of-one/20562069/
ϓϥοτϑΥʔϜ ݻ༗ͷख࡞ۀ Puppet/Chef ϓϥοτϑΥʔϜ ݻ༗ͷΞηϯϒϥ ߴڃݴޠ says...
http://en.wikipedia.org/wiki/File:Boschsevendeadlysins.jpg ϓϩάϥϚͷࡾେඒಙ
ແਫ਼(laziness) ؾ(impatience) ၗຫ(hubris)
ແਫ਼(laziness) ؾ(impatience) ၗຫ(hubris)
γεςϜߏஙʹ ʮແਫ਼ʯΛ࣋ͪࠐΉ
˒ खॱॻ࡞͕໘ ˒ खॱॻߋ৽͕໘ ˒ εΫϦϓτԽ͢Δͷ͕໘ ˒ εΫϦϓτΛอक͢Δͷ͕໘ ˒ ႈੑΛ୲อ͢Δͷ͕໘
˒ ͱʹ͔͘໘
Ұݟ໘ͳPuppet Chef ΛֶͿͷʮ໘ Λճආ͢ΔͨΊͳΒ ͍͘ΒͰ໘Λ͜ͳ ͢ʯͱ͍͏ʮແਫ਼ʯͷ ൃ࿐ʹଞͳΒͳ͍ɻ
Chefͱͷൺֱ
ݴޠ σΟϨΫτϦߏ Puppet ֎෦DSL ൺֱతࣗ༝ Chef ෦DSL (Ruby) ෆࣗ༝
package { 'zsh': ensure => installed } Puppet package 'zsh'
do action :install end Chef
͍ͨͯ͠มΘΒͳ͍
$ knife configure $ knife cookbook create hello -o cookbooks
$ $EDITOR cookbooks/hello/recipes/default.rb $ $EDITOR localhost.json $ $EDITOR solo.rb $ chef-solo -c solo.rb -j localhost.json ChefͷHello, World! // localhost.json { "run_list" : [ "recipe[hello]" ] } # solo.rb file_cache_path "/tmp/chef-solo" cookbook_path ["/home/ec2-user/chef- repo/cookbooks"] # default.rb log “Hello, World!”
$ $EDITOR hello.pp $ puppet apply hello.pp PuppetͷHello, World! #
hello.pp notice(“Hello, World!”)
େ͖ͳҧ͍
Ͳͬͪʹ͠ΖΕΔ͜ͱಉ͡ PuppetϑΝΠϧຕ͔Β࢝ ΊΒΕΔ ಋೖোน͕͍ ಠࣗDSLͷֶशίετͱ͍ͬͯɺRubyΛΒ ͳ͍ͻͱʹͱͬͯChefͩͬͯίετߴ
·ͱΊ
˒ ຊॳͷPuppetʹؔ͢Δॻ੶ʰೖ PuppetʱΛಡΉͱΫϥυ࣌ ͷڞ௨ޠʮίʔυʯΛֶΔ ˒ Puppet/ChefγεςϜߏஙʹ ʮଵଦʯΛ࣋ͪࠐΉ ˒ Puppet/ChefͲͬͪͰ͍͍͚Ͳ Έͳ͞Μ͕ࢥͬͯΔΑΓPuppet
؆୯Ͱ͢Ϥ
˒ ͲͬͪΛ͏ʹͤΑɺ͘͢ͳ͘ͱ ͜ͷຊʹॻ͔Ε͍ͯΔ͜ͱʹͭ ্͍ͯͬͨͰɺબͼ·͠ΐ͏
ϒΫϩάͷύϒʔ http://p.booklog.jp/book/70667 ୡਓग़൛ձ http://tatsu-zine.com/books/puppet Amazon http://tatsu-zine.com/books/puppet