I really want to get more experience with Puppet as it’s the Thing Du Jour [tm]. I already have a CentOS VPS running with Nginx, PHP, MySQL and Minecraft so purchased an Ubuntu KVM VPS to use as my Puppet Master. I got both from Network Presence. Cheap prices and Australian to boot!
I used apt-get and yum to install Puppet and required supported libraries and applications (such as Ruby). I installed the Ruby rvm to enable me to easily install and manage Ruby versions. This is a good idea in that CentOS in particular is an offspring from RedHat Enterprise and Puppet only works with Ruby 1.8.7 on these platforms. I had installed the latest Ruby but used rvm to go back to 1.8.7 and it seems good.
I have set up a certificate on the Minecraft server by requesting it from the Puppet Master server and used the Puppet Master server to sign the certificate. This worked well and I’m happy with how things are going. They may be going a bit slow at this stage due to the fact that I’m still learning and there’s a lot of manual work to do in order to get a Puppet Master and Agent server up and going properly.
I think there’s a quicker way to do it now if you download the tarballs but I wanted to do it from package managers. My next step is to figure out how to get the Puppet Master web console up. So far, Apache is configured and should be running with the Puppet Ruby application, but nothing is showing as yet. I will probably update this blog post once something new happens. Stay tuned…
Aaand… we’re back!
I did cave in and install the Puppet Master and console from a tarball. No other way works. I’m very disappointed in this as I followed the PuppetLabs documentation to the letter. However, I think it may be far out of date. They really need to point you to the tarballs and be done with it!!
It turns out there were a couple more things I needed to do in order to get my Master to talk to the Agent and vicky versa. First error I found the answer to on this blog:
And the second error I found on THIS blog:
The third error was resolved thanks to this site:
The solutions posted on those pages were very helpful indeed. So now my Puppet Master and Agent servers are talking to each other. My next steps are to create manifest files so the Master makes sure the Agent is running the correct software at all times. It should. There’s no reason for anything to get deleted nor changed, but I get some good experience playing around with this stuff. 🙂