Building a test Puppet Master with Vagrant

Puppet is awesome. Until you deploy some code that worked locally, but for some reason didn’t when you put it onto your Puppet Master. Whoops. So, you need a testing setup. But Puppet can take a while to keep configuring. Which is where Vagrant comes in. It it a tool which allows you to build virtual machines automatically (currently only with VirtualBox, but VMWare Fusion support is coming very soon). And the best part (for me, anyway) is that it uses Puppet to configure the VM (Puppet to configure your Puppet Master? All too meta for this time of the morning). ...

February 13, 2013

Getting started with Puppet on OS X (part 2)

Before reading this post, you really need to read part 1 - none of this will make sense without it! Still with me? Let’s do finally do something with Puppet. SSH into your Puppet Master (if it’s IP has changed since you first did the setup, make sure you reflect this change in the Mac client’s /etc/hosts file) and navigate to /etc/puppet and list the directory’s contents: cd /etc/puppet ls -la You’ll see a few directories here - we’re interested in two today - manifests and modules. Manifests will be where you describe your nodes, and the modules are the functional Puppet code. ...

January 27, 2013

Getting started with Puppet on OS X (part 1)

When I was first getting started, the first hurdle I had to get over was trying to work out how it would apply to what I do - manage Macs. There are plenty of resources on managing servers with Puppet, but precious little on using Puppet with OS X - so, here’s how to get started with Puppet. ...

January 25, 2013

Crypt: A FileVault 2 escrow solution

Although it’s been blogged about over at afp548 and Rich Trouton’s blog, I’d like to introduce you all to Crypt. Crypt is a solution for enabling FileVault 2 on Macs running either 10.7 or 10.8 and securely storing those keys, using no outside infrastructure like other solutions do (Cauliflower Vest’s requirement of Google App Engine). It’s only requirement is a web server that can run a Django app (which is pretty much anything - the example setup uses Apache on Ubuntu 12, but you can use anything you want). ...

January 18, 2013

Casper Vs Munki

Next up in the battle of Casper vs the rest of the Mac admin toolset looking to reign supreme in the contest of software installation is Munki. Setup The setup process for a Munki server can seem to be very daunting at first if you’ve not configured a web server before. If you are happy setting one up, it’s the easiest server install you’ll ever do! Munki’s requirement of just a basic web server means it can run on literally anything (although Casper will also run on anything you’re likely to use - I’ve had both running on Windows boxes for example). ...

January 13, 2013

Updating InstaDMG based NetRestore images

This probably isn’t news to anyone else, but I made a discovery last week that will save me a fair bit of time. Whilst staring at System Image Utility after yet another change to the build, I thought that there must be a better way of doing this, bearing in mind that the basic InstaDMG process is: Install the OS Install Packages Make a read-only DMG Prep the DMG for ASR And SIU’s process is: ...

January 7, 2013

InstaDMG Tips

I’ve been using InstaDMG for nearly two years now. We all know it’s awesome (if you aren’t aware of it’s awesomeness, I suggest taking a look at Allister Banks’ talk at PSU MacAdmins last year). I’m almost ashamed to admit that I was happily making my Golden Master images on my test iMac and hoping for the best when I cleaned them up by hand and pushed them out. Anyway, that’s enough of my admissions. Over these two years, I’ve picked up a few tips and tricks for working effectively with InstaDMG. ...

January 5, 2013

MacScripts

I’ve had my Mac scripts dotted around my Macs over the years, so after spending twenty minutes looking for my script to add a login item to a user, I decided to put them all in one place on GitHub. Hopefully someone will find them useful, I’ll be adding the rest as soon as I work out where I put them. MacScripts on GitHub

January 1, 2013

Casper versus DeployStudio

I’ll preface this with one thing - I’m not a Casper Suite expert. I don’t use it regularly, and at what it costs, I probably won’t! It’s this price that gave me high expectations for this last install. Unfortunately they were unfounded. I’m hoping to write a series of articles comparing the various aspects of Casper against the free tools I use every day. First up is DeployStudio. Workflow creation Both Casper Imaging and DeployStudio have a nice GUI for creating the workflow. It’s just a drag and drop to place the tasks you need. The DeployStudio interface feels a bit more polished, but that’s probably just my bias showing though. The only real differentiator here are the package groups that DeployStudio offers. If you had a standard group of packages that you deploy over several different workflows, DeployStudio makes it easy to maintain - yes, this should probably be done elsewhere, but it can be handy to install a certain set of applications at imaging time. I couldn’t see a direct replacement for this in Casper Imaging. ...

December 15, 2012

MacNamer

A few months ago, we decided to move away from DeployStudio for imaging our Macs to reduce the OS X footprint in the server room (a plain old NetRestore can be run from NetSUS). This left us with a problem - how are we going to name our Macs now (a task previously performed by DeployStudio)? Enter MacNamer. It’s usage and installation is detailed in the Readme file, please fork, try to break, file pull requests. This has been in production for several months at work, but I’m sure someone will manage to make it break!

December 12, 2012