How does Munki work?

Even though the posts on this blog go into detail on how to get Munki set up for your school environment, you may want to get more of a bird’s-eye-view of what all the pieces are, and how they work together.

On a very basic level, there is a Munki client, which is any Mac (MacBook Air, MacBook Pro, iMac, etc.) that has Munki installed and configured on it, and then the Munki repo server, which is a static web server of any kind (Apache, Nginx, IIS, etc.). All the server does is serve up files. It is just as static as a Geocities website from the 1990s. The Munki client does all the work. The Mac will check in with the Munki repo (in the background once every hour or so or manually if the user launches up Managed Software Center) to check for instructions on what needs to be done (Do I need to update my software? Is there new optional software the user can install herself? What new software that wasn’t installed before should I install?).

On the Munki repo itself, there are several key components that a Mac admin would need to change up so machines checking in know what to do to themselves.

When you add items (packages, drag-and-drop .app bundles, .mobileconfig profiles) to the Munki repo, there’s a pkginfo text file (an XML format) that stores information about that item (what version, the name of the item, where its installer is, etc.), and then there’s the installer itself, in whatever form it takes (.pkg, .dmg, .mobileconfig, etc.).

Every item has at least one catalog attached to it, indicating whether it is in testing or production (or both). You can also have a development catalog, too, if you want to add a third layer to your rollout process.

Each client machine uses a manifest on the Munki repo to determine what items it should install, remove, update, or make available for the user to install. There can be manifests that many client Macs share, or you can have individual manifests unique to each machine.

As you go through the tutorials on this blog, you’ll get a much better sense of how all these pieces fit together.

Leave a comment

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