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
Master of Puppet
Search
Sebastian Hempel
October 19, 2010
Programming
1.2k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Master of Puppet
Einführung in das Konfigurationsmanagement mit Puppet für Administratorn
Sebastian Hempel
October 19, 2010
More Decks by Sebastian Hempel
See All by Sebastian Hempel
Wer spricht denn da? - Logging in Java (JCON 2022)
shempel
0
52
Kryptographie für Einsteiger
shempel
0
850
Jobs as Code - Jenkins Pipeline Jobs
shempel
0
860
Kryptogragire für Java-Entwickler
shempel
0
1.3k
Integration von MicroServices
shempel
0
1.6k
Dokumentation schreiben kann Spaß machen! (2017)
shempel
0
1.1k
Minifliegen im Schwarm
shempel
0
1.3k
Puppenspielerein
shempel
0
1.2k
Puppet für Entwickler
shempel
0
2k
Other Decks in Programming
See All in Programming
RSSとCodexを使ってX投稿自動化してみた
ochtum
0
110
業務時間外もAIに働いてもらう話
colorful12
3
10k
Swift愛好会100回記念 第1回を振り返る
jollyjoester
0
120
{ Android | Kotlin } Gradle Plugin in 2026
ryunen344
1
300
Family mrubyの進捗
kishima
1
110
市販E-Readerを乗っ取れ 〜Embedded Swiftで電子ペーパーガジェットを制御する〜
trickart
0
170
Building an Out-of-Order CPU
latte72
1
750
[GoCon2026] When Goroutines Are Not Enough: Runtime Locality in High-Throughput Go
takehaya
6
2k
Can LLMs Replicate 4 Years of Compose Migration? Exploring the boundaries of automation with 279 XML files from a real product
makun
0
130
変化を抱擁するドキュメントの作り方 - ビジネスルール駆動開発がもたらす、コードとの新しい関係
ioki
2
150
kubernetes コンポーネント開発入門 / 新卒N年目の勉強会&交流会!〜〇〇への誘い〜 #n_study
mazrean
0
220
Streamlitで実現する自然言語データアプリ開発
ayumu_yamaguchi
0
190
Featured
See All Featured
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
690
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
500
Prompt Engineering for Job Search
mfonobong
0
450
Utilizing Notion as your number one productivity tool
mfonobong
4
590
My Coaching Mixtape
mlcsv
0
310
SEO for Brand Visibility & Recognition
aleyda
0
4.7k
Building Applications with DynamoDB
mza
96
7.2k
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.7k
Are puppies a ranking factor?
jonoalderson
2
3.9k
Deep Space Network (abreviated)
tonyrice
0
300
The agentic SEO stack - context over prompts
schlessera
0
930
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
270
Transcript
Master of Puppets
Konfiguration durch Aktionen
Sage mir, wie die Konfiguration aussehen soll.
Wie funktioniert Puppet
Client Client System
Master Modules Client Client System
Master Modules Client Client System
Puppet stellt jedes mal die gewünschte Konfiguration her
Modules Subversion Benutzer Benutzer
Manifeste und Module
class sdv { user { "sdv": name => "sdv", home
=> "/home/sdv", shell => "/bin/bash", ensure => present } }
class openssh-server { package { "ssh-server": ensure => installed, }
service { "sshd": enable => true, ensure => running, Require => Package["ssh-server"] } }
Modul Manifest(e) Datei(en) PlugIn(s) Template(s)
Puppet Specials
architecture => x86_64 domain => hello.world.com fqdn => demo.hello.world.com hardwaremodel
=> x86_64 hostname => demo id => root interfaces => eth0 ipaddress => 10.3.xxx.xxx ipaddress_eth0 => 10.3.xxx.xxx is_virtual => true state => Abnahme
<IfDefine <%= fqdn %>> Header append X-Server <%=hostname %> </IfDefine>
/files/etc/aliases/7 /files/etc/aliases/7/name = "shutdown" /files/etc/aliases/7/value = "root" /files/etc/aliases/8 /files/etc/aliases/8/name =
"halt" /files/etc/aliases/8/value = "root" shutdown: root halt: root
Wie geht es weiter?
Implementierung Tipps und Tricks
Bildnachweis 1. Gonzo / KLEPER / Flickr 2. My First
Shell Script / Erin Donahue / Flickr 19. New blank books / Paperama / Flickr
Sebastian Hempel Staatliche geprüfter Informatiker Selbständiger Software- Entwickler und Dozent
in den Bereichen Java und OpenSource Clean Code Developer
[email protected]
http://www.it-hempel.de/