Puppet deckt bereits von Haus aus viele Einsatzbereiche ab. Dennoch gibt es auch hier Grenzen.
Initiale Serverkonfiguration
Bevor Puppet arbeiten kann muss auf dem Server der Agent installiert und der Hostname gesetzt werden. Um auch diese Schritte zu automatisieren, empfehlen wir
die Verwendung von Kickstart Skripten.
Bestehende Konfigurationen
Es gibt kein Tool, welches bestehende Konfigurationen in das Puppet Format überträgt. Dieser Schritt muss manuell durchgeführt und getestet werden.
Distributionsunabhängigkeit
Viele Aufgaben in Puppet erfordern keine weiteren distributionsspezifischen Anpassungen. Bei manchen Modulen unterscheiden sich allerdings Speicherorte und Paketnamen.
Hier müssen entsprechende Weichen im Modulcode eingefügt werden. Die meisten in Puppet Forge verfügbaren Module berücksichtigen dies allerdings.
Sicherheitsupdates
Ein Stück weit lassen sich auch Sicherheitsupdates mit Puppet verwalten. So lassen sich beispielsweise Versionsstände festsetzen oder sichergestellt werden, dass stets die neueste Version installiert ist. Ein echtes Patchmanagement wie Spacewalk / Satellite (RedHat, CentOS), SUSE Manager (SLES) oder Landscape (Ubuntu) ersetzt Puppet allerdings nicht.
Windows Unterstützung
Derzeit unterstützt Puppet nur einige rudimentäre Funktionen unter Windows. Dies soll mit den nächsten Versionen jedoch weiter ausgebaut werden. Der Haupteinsatzbereich liegt allerdings ganz klar im Unix / Linuxbereich.