Munki at Facebook

Preview:

Citation preview

Munki @ FacebookMay 12th, 2015

Greg Batye Client Platform Engineer

Overview

Why Munki?

Source Control

Peer Review

Open Source

Scalable

Apple Updates

1

Force Updates

Day 1 using Munki….

Using Munki today….

Package Scripts

Install Check Uninstall Check Pre-install Post-install Pre-uninstall Uninstall Post-uninstall

Pre/post-install Alerts

Startup Flags

/Users/Shared/.com.googlecode.munki.checkandinstallatstartup

/Users/Shared/.com.googlecode.munki.installatstartup

ManagedInstallReport.plist

Conditionals

Conditionals - FB groups

Conditionals - Shard

{0…9}

Conditionals - Shard

Serial Number

Shard Formula

Conditionals - Unused Apps

Crankd

Database

Conditional Array

Application Removal

Unused = TrueUnused = False

Installable

Uninstall

Application Usage

Preflights/Postflights

Dynamically set Munki repo and manifest

Preflights/Postflights - Custom PromptsManaged Software Center Prompt

Wednesday between 12-5pm

Preflight —> ManagedInstallReport.plist —> MSC

Notification Banner

Every 4 Hours

Postflight —> ManagedInstallReport.plist —> Terminal Notifier

Installed By Chef

Desired state

MunkiReport/Custom scripts

Installation

Distribution of Munki Repo

Munki Server

GIT GIT-FAT

https://www.afp548.com https://github.com/cyaninc/git-fat

MSC customization

Take Aways

IRC: freenode.irc.net #ITThinkTank

GitHub: github.com/facebook/IT-CPE

Web: facebook.com/IT

Group: fb.me/groups/TheITThinkTank/ Group: fb.me/groups/macbrained/

IRC: freenode.irc.net ##osx-server

Q&A