Are You a Puppet?

So I’ve never cared much for the whole DevOps thing and I sort of snicker when it’s mentioned at the office but hey, I get that it’s one of the cool new buzzwords. I get that it makes managing a ton of servers considerably easier even if it means (as a developer) that I have to remember to disable the agent when I’m playing around or my changes will be overwritten. I decided that even though it’s not really part of my playground, my servers are all controlled by the Puppet master and it might be good to have a working knowledge of what it’s doing.

puppet-enterprise

Tonight (well, last night really, but I did a fresh install again tonight) I installed Puppet Enterprise and a single Puppet node. I managed to knock out my first class even and both tested the new class on my master but also successfully forced an update to the agent with

puppet agent -t

and verified the change.

puppet-node-1st-class

I guess you can’t really start learning something in this industry properly without a good old-fashioned “Hello, world!” right? So I headed over to the Puppet docs and found their example. Just a few minutes later after a quick vi session and I pushed another update.

puppet-status

# puppet agent -t
Info: Retrieving pluginfacts
Info: Retrieving plugin
Info: Loading facts
Info: Caching catalog for runlevl4.com
Info: Applying configuration version '1455942765'
Notice: /Stage[main]/Helloworld::Motd/File[/etc/helloworld]/ensure: defined 
    content as '{md5}910c8bc73110b0cd1bc5d2bcae782511'
Notice: hello, world!
Notice: /Stage[main]/Helloworld/Notify[hello, world!]/message: defined 
    'message' as 'hello, world!'
Notice: Finished catalog run in 0.46 seconds
 
# cat /etc/helloworld 
hello, world!

So there you have it. I’m on my way to being a DevOps guy! 😀

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.