11 years ago
Hiera: Ein Key Value Backend für Puppet
Um Daten von den Puppet Modulen zu trennen wurde das Backend Hiera eingeführt. In der einfachsten Form werden Daten aus einer YAML-Datei geholt. Diese befüllen die Parameter der Puppet Klassen und können zudem abhängig von Eigenschaften der Hosts (genauer Fakten `facter -p`) gemacht werden (z.B. Hostname, Betriebssystem, Hersteller des Raidcontrollers usw.). Somit kann man nicht nur in den Puppet Klassen selbst sondern auch im Backend auf verschiedenen Eigenschaften der Server reagieren. Hiera installiert man am besten über den Paketmanager. Ab der Version 3.x kommt Hiera als Abhängigkeit von Puppet mit. Die Konfigurationsdatei hiera.yaml ist relativ einfach und schnell erklärt und liegt für gewöhnlich in /etc/puppet/. $ cat /etc/puppet/hiera.yaml --- :backends: - yaml :hierarchy: - "fqdn/%{::fqdn}" - "%{operatingsystem}" - base :yaml: :datadir: '/hieradata/%{::environment}' :logger: console Als Backend werden YAML-Dateien verwendet, diese liegen im Verzeichnis /hieradata/%{::environment}. Der Key hierachy gibt an welche YAML-Dateien im speziellen angezogen werden. Die Einträge von hierachy werden von oben nach unten abgearbeitet und können Variablen enthalten welche von den Hosts geliefert werden (`facter -p`). Ein kurzes Beispiel: Auf dem Debian Server server1.netways.de wird `puppet agent -t –environment testing` ausgeführt. Hiera sucht somit die Daten in folgenden Dateien in der angegeben Reihenfolge: – /hieradata/testing/fqdn/server1.netways.de.yaml – /hieradata/testing/Debian.yaml – /hieradata/testing/base.yaml […]
Blogged: Hiera: Ein Key Value Backend für Puppet -#Schulung #puppet #hiera #PuppetArchitect
wp.me/pgR2o-emm
0
0
0
0