Hiera: Welche Daten bekommt Puppet?

Wie im erstem Teil der Blogserie erklärt kann man mit Hiera Daten und Puppetmodule trennen. Wichtig dabei ist, dass die Daten in Abhängigkeit von Eigenschaften von Hosts gespeichert und extrahiert werden können (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. Dabei kann man alle Fakten verwenden die von facter -p geliefert werden und die von außen hinzu gegeben werden, z.B. durch einen external node classifier (ENC) wie Foreman.
Im erstem Teil wurde ein einfaches Beispiel einer Hiera-Konfiguration gezeigt. In komplexeren Umgebungen werden die Daten nicht aus einer Datei sondern je nach Fakten aus einer ganzen Hierarchie aus YAML Dateien oder anderen Backends angezogen. Zudem können die selben Daten in den verschiedenen Hierachiestufen wieder überschrieben oder zusammengefasst werden. Zum Beispiel soll für alle meine Server ein Backup erstellt werden, weshalb der Key “bareos::ensure: present” ganz oben in der Hierarchie gesetzt wird (base.yaml). Natürlich gibt es Ausnahmen, weshalb weiter unten in der Hierachie der selbe Key auf “absent” gestellt wird, was sicherstellt, dass Bareos nicht installiert und konfiguriert wird. Je nach Hierachie kann das ganze schnell unübersichtlich werden. Welche Daten Puppet aus Hiera bekommt, lässt sich aber trotzdem einfach und schnell herausfinden, indem man hiera in der Shell aufruft. Als Parameter muss man die Hiera Konfigurationsdatei angeben und natürlich den Namen des Schlüssels der geholt werden soll.

 hiera -c /etc/puppet/hiera.yaml "bareos::ensure" 

Wenn wir als Beispiel die hiera.yaml aus dem ersten Teil verwenden, müssen wir leider feststellen, dass keine Daten gefunden werden, da wir die benötigen Fakten environment, operatingsystem bzw. fqdn nicht an Hiera übergeben. Die Fakten kann man manuell an Hiera übergeben, entweder als key=value Paare direkt beim Aufruf oder besser in Form einer yaml (-y facts.yaml) oder json Datei (-j facts.json).

$ cat facts.yaml
environment: production
::fqdn: "server1.netways.de"
::operatingsystem: Debian

Diese Daten werden normalerweise von den Hosts geliefert und müssen hier manuell übergeben werden:

hiera -y facts.yaml -c /etc/puppet/hiera.yaml -h bareos::ensure

Viel wichtiger ist aber auf welche Art und Weise man Daten aus Hiera extrahieren kann. Verwendet man den Parameter -h, werden die Daten als merged Hash zurückgegeben, d.h. Keys die auf mehreren Ebenen existieren, werden zu einem Hash zusammengeführt, wobei bei Konflikten der erst gefundene Key verwendet wird. Verwendet man den Parameter -a, werden die Daten als flattend Array zurückgeliefert, das bedeutet, dass Keys die auf mehreren Ebenen gefunden werden, zu einem gemeinsamen Array zusammengeführt werden. Bei einem Aufruf ohne Parameter wird einfach der zu erst gefunden Key verwendet.
Passend zum Thema darf ich euch noch an das PuppetCamp in Düsseldorf am Donnerstag erinnern!

Achim Ledermüller
Achim Ledermüller
Lead Senior Systems Engineer

Der Exil Regensburger kam 2012 zu NETWAYS, nachdem er dort sein Wirtschaftsinformatik Studium beendet hatte. In der Managed Services Abteilung ist unter anderem für die Automatisierung des RZ-Betriebs und der Evaluierung und Einführung neuer Technologien zuständig.

Puppentheater in München

Eine neue Konferenz, ein neuer Blogpost. Diesmal berichte ich von unserer Winteredition des Puppetcamp aus München.
Für mich begann die Konferenz bereits am Mittwoch, allerdings nicht als Teilnehmer sondern als Vortragender bei “Puppet getting started”. Wenn man einen Consultant nervös machen will muss man einfach Stichwörter verwenden wie “mit 50 Leuten ausgebucht”, “auf Englisch”, “2,5 Stunden”, “Kamera-Aufzeichnung”. Trotzdem sollte es mir gelungen sein den Teilnehmer ein paar interessante Tools vorzustellen und ein paar Tipps zum Design ihrer Umgebung, ihres Workflows und ihrer Module zu geben.
Donnerstag startete dann mit der üblichen Begrüßung durch Bernd bevor Ralph Luchs von Puppet Labs in der Keynote eine kurze Einführung in Puppet und Puppet Enterprise gab. Da die Mehrheit der 170 Teilnehmer bereits mit Puppet vertraut waren, waren wohl vor allem kleinere Informationshäppchen interessant. Schön finde ich das Puppet Armatures Projekt, dass zeigt wie viel Einfluss die Community auf die Entwicklung von Puppet nehmen kann. Oder auch das Online-Training, welches zwar keinen Trainer ersetzen kann, den man mit Fragen löchert, aber doch sehr hilfreich ist für den Einstieg.
Interessant war der Vortrag von David Mytton, der gezeigt hat wie Server Density Puppet und MCollective nutzt um restriktive Berechtigungen für die zuständigen Administratoren umzusetzen und es ihnen gleichzeitig erleichtert ihre Arbeit zu tun. Zusätzlich wird es genutzt für Failover, Simulation von Ausfallszenarios und zur Unterstützung der Entwicklung.
Tom Doran von Yelp gab einen sowohl interessanten als auch amüsanten Vortrag rund um die Modul-Entwicklung. Und mal wieder landet etwas auf meiner ToDo-Liste: Parameter-Klassen durch “Data in Modules” ersetzen. Außerdem möchte auch ich die Stdlib von Puppet Labs jedem ans Herzen legen.
In seinem Vortrag gab David Lutterkort von Puppet Labs einen tieferen Einblick in Razor, warum dieses einem Rewrite unterzogen wurde und wie man eine Virtualisierungsplattform wie VMware vSphere oder Openstack automatisiert mit Razor aufsetzt. Zukünftig soll es auch möglich sein BIOS-Updates zu steuern, andere Systeme mit Events zu befüllen oder Powermanagement von zentraler Stelle zu betreiben.
Rhommel Lamas von 3scale Networks zeigte ein paar andere Ansätze zum Aufbau der Puppetumgebung mit dem Schwerpunkt auf Skalierbarkeit. Auch wenn ich diese nicht für jede Umgebung empfehlen kann, waren doch Lösungsansätze dabei die auch für andere interessant sein könnten.
In seinem Vortrag “Workflow story: Theory versus Practice in Large Enterprises” zeigte Marcin Piebiak von Linux Polska die Gründe dafür auf, dass Puppet helfen kann rechtliche Anforderungen zu erfüllen. Aber die Organisationen, die solchen Anforderungen unterliegen, haben natürlich besondere Arbeitsabläufe. Antworten auf die Fragen, die sich dadurch stellen, waren das Hauptthema des Vortrags.
Zum Abschluss gab uns Tom einen tieferen Einblick in das Orchestration-Framework MCollective. Wie immer unterhaltsam, informativ und vor allem viel Input.
P.S.: Ich möchte an der Stelle auch noch allen gratulieren, die die Chance zur kostenlosen Puppet-Zertifizierung genutzt und bestanden haben. Insbesondere unserem Tom, der nun auch zertifizierter Puppet Developer ist!

Dirk Götz
Dirk Götz
Senior Consultant

Dirk ist Red Hat Spezialist und arbeitet bei NETWAYS im Bereich Consulting für Icinga, Puppet, Ansible, Foreman und andere Systems-Management-Lösungen. Früher war er bei einem Träger der gesetzlichen Rentenversicherung als Senior Administrator beschäftigt und auch für die Ausbildung der Azubis verantwortlich wie nun bei NETWAYS.

Weekly Snap: PuppetCamp Munich, Mac Resets & Puppet Course Online

weekly snap7 – 11 October was packed with events – in the lead up to the OSMC and PuppetCamp Munich, we dug into online instruction on Puppet and LConf while sharing a few Apple Mac resets on the side.
With just 15 days to the OSMC, Eva shared Mike Adolph’s presentation on “Monitoring Behavior Driven Infrastructures with Cucumber-Nagios”.
Georg rounded up interested participants for a webinar on the Icinga/Nagios configuration tool, LConf and uploaded the video promptly thereafter.
Markus announced the upcoming PuppetCamp III on 28 November in Munich while Silke unveiled our new online Puppet Fundamentals course in cooperation with the Media Linux Academy.

Weekly Snap: CeBIT Stand & PuppetCamp, Icinga / Nagios & Puppet Courses

weekly snap18 – 22 February was all about events, workshops and training courses in Puppet, Icinga / Nagios and development.
Eva began by counting 58 days down to the OSDC with Christian Winkler’s presentation on “Ultra performant websites with varnish MP4”.
She also announced NETWAYS’ CeBIT stand whereabouts this year and reminded interested speakers to submit their talks to the Puppet Camp 2013 Call for Papers before 15 March.
Puppet Labs then trained our Puppet trainers Sebastian and Thomas in preparation for the upcoming Puppet courses they’ll be running.
Continuing with courses, Eva dished the details on Dirk and Christian’s three Nagios / Icinga workshops with iX.
Lastly, Markus shared his .vimrc and favourite VIM addons as our dev team re-emerged from their two-day blue-sky think camp with new processes and photos to show.

Warum iOS6 und Passbook unbedingt gebraucht wird

Ich muss ehrlich sein; es gehört vermutlich noch ein dickes Vielleicht hinter den Titel des Blogposts, aber ich wollte Euch ja hier haben.

Möglicherweise hat der ein oder andere Leser bereits die neue Passbook-App bemerkt, die Apple im Anhang zu iOS 6 auf ihren Geräten verbreitet hat. Da es bei uns weder Starbucksgutscheine noch anderweitige, für mich interessante Anwendungsbeispiele gibt, wurde sie einfach ein paar Screens nach hinten geschoben.
Was ist Passbook eigentlich: Dabei handelt es sich um die Verteilung von fest definierten Paketstrukturen mit der Endung pkpass. Diese werden dann vom iOS-Device erkannt und dem elektronischen Wallet-Manager Passbook hinzugefügt. Vereinfacht bedeutet dies einen großen Haufen an Dateien in definiertem Format, die dann gezipped verteilt werden.

Das eigentlich witzige daran ist das dahinter liegende Framework, dass auch spätere Aktualisierung von Tickets, Gutscheinen und anderen Karten via Webservice ermöglicht. So können Status der Veranstaltung, Räume oder sonstige Infos automatisch an den Eigner des Tickets gesendet werden. Im Notification-Center bekommt man dann einen Hinweis auf Änderung und kann sich diese dann auch gleich eingekreist darstellen lassen. Verbindet man das Ticket noch mit einer bestimmten Location, poppt das Ticket automatisch bei Erreichung auf und der Ticketeigner lässt sich mit einer individuellen Nachricht willkommen heissen.
Wo wir sind ist vorne und deshalb haben wir gleich mal zwei Passbooks für die kommende OSMC und das PuppetCamp erstellt. Einfach den QR-Code scannen oder den Link mit dem Mobile-Device aufrufen und schon sollte das digitale Ticket bei Euch landen. Eifrige OSMC-Restplatzsucher muss ich beim Gedanken sich doch noch Zutritt zu verschaffen leider enttäuschen. Wir vertrauen nur unserem Ticket-System und es handelt sich mehr um einen Feldversuch 🙂

QR-Code für die OSMC

QR-Code für das PuppetCamp

Wer sich nicht in die API einarbeiten oder stundenlange Development-Guidelines lesen möchte, der findet bspw. mit PassK.it einen Online-Editor für die Erstellung solcher Karten. So lassen sich in ein paar Minuten Tickets zusammenklopfen und ausprobieren.
Mehr Infos über die Funktionsweise finden sich im Apple-Developer-Bereich.
Danke an Martin Eichenberg, der mich heute in einem inspirierendem Telefongespräch darauf gebracht hat!

Bernd Erk
Bernd Erk
CEO

Bernd ist Geschäftsführer der NETWAYS Gruppe und verantwortet die Strategie und das Tagesgeschäft. Bei NETWAYS kümmert er sich eigentlich um alles, was andere nicht machen wollen oder können (meistens eher wollen). Darüber hinaus startet er das wöchentliche Lexware-Backup und investiert seine ganze Energie in den Rest der Truppe und versucht für kollektives Glück zu sorgen. In seiner Freizeit macht er mit sinnlosen Ideen seine Frau verrückt und verbündet sich dafür mit seinem Sohn.

So war die PuppetConf 2012 in San Francisco

PuppetConfBereits am Freitag Abend ging die PuppetConf in San Francisco zu  Ende, aber da die meisten von Euch noch oder schon im Bett waren, nun zum Wochenanfang ein kleiner Rückblick.
Für mich persönlich hat die Anreise erstmal mit einem schönen Interview bei der amerikanischen Grenzbehörde (Border Protection) begonnen. Die Antwort “gleich morgen” auf die Frage ob ich den demnächst nach Pakistan reisen würde, habe ich mir verkniffen und so dauerte die ganze Einreise nach Landung nur 1,5 Stunden. Dafür durfte ich gleich am Flughafen noch unsere Rollups “aufstellen”, also ein voller Marketingerfolg.
Eigentlich sind wir im Puppet-Umfeld ja alte Hasen und Gründer und CEO Luke Kanies war schon 2009 bei unserer ersten OSDC in Nürnberg dabei. Seitdem hat sich sowohl die Software als auch das Unternehmen ordentlich weiterentwickelt. Auf der Konferenz waren knapp 750 Teilnehmern und PuppetLabs zieht mit über 115 (damals waren es bei Puppet bei 3 Mitarbeiter) Angestellten bald in das nächste Gebäude. Neben der Keynote bot die Konferenz ein buntes Vortragsprogramm mit vielen bekannten aber auch unbekannten Gesichtern. Alles in allem wurden unsere Erwartungen deutlich übertroffen, da wir viele alte Kontakte intensivieren und viele neue Kontakte knüpfen können. So werden nun 6 Kollegen aus Portland zu unserem PuppetCamp in zwei Wochen kommen und bereits am Vortag ein Train-the-Trainer-Event bei uns stattfinden. Auch das Trainingsprogramm von Puppet wird sich in den nächsten Monaten deutlich verändern. Hier gehe ich mit den neuen Unterlagen auf die Rückreise, damit wir das bald in die Planungen einfliessen lassen können.
Mit Pascal und Patrick habe ich auch zwei unserer PuppetCamp-Referenten in San Francisco kennengelernt und freue mich beide in zwei Wochen in Nürnberg wieder zu sehen.

JETZT MÜSST IHR EUCH ANMELDEN! 🙂

Was bleibt ist ein toller Eindruck dieser sehr schönen Stadt und der entspannten (WEST COAST RULES) Bewohner. Fast 40% der Einwohner sind übrigens nicht hier geboren und auch Deutsch hört man an jeder Ecke. San Francisco ist definitiv eine private oder geschäftliche Reise wert.
Jetzt heisst es für mich Koffer packen, denn morgen geht’s nach Hause.
Der Mann in Lederhose auf dem letzten Bild war übrigens kein Deutscher. Hier läuft eben gerade auch ein Oktoberfest und als wir nach dem Camp mit den anderen Partner aus Australien und Italien noch ein Bier trinken waren ist mir der arme Kerl zugelaufen. Mit einem Bier haben wir die transatlantischen Beziehungen wieder in Schwung gebracht!

Bernd Erk
Bernd Erk
CEO

Bernd ist Geschäftsführer der NETWAYS Gruppe und verantwortet die Strategie und das Tagesgeschäft. Bei NETWAYS kümmert er sich eigentlich um alles, was andere nicht machen wollen oder können (meistens eher wollen). Darüber hinaus startet er das wöchentliche Lexware-Backup und investiert seine ganze Energie in den Rest der Truppe und versucht für kollektives Glück zu sorgen. In seiner Freizeit macht er mit sinnlosen Ideen seine Frau verrückt und verbündet sich dafür mit seinem Sohn.

If you`re going to San Francisco

Dann wäre es eine gute Gelegenheit nächste Woche bei der PuppetConf vorbeizuschauen. Julian, Tom und ich werden dort nächste Woche vor Ort sein und uns die aktuellen Trends rund um Puppet geben. Auch die anstehende Puppet Zertifizierung feiert dort Premiere und wir werden unser bestes versuchen.
Aufgrund der langen Partnerschaft mit PuppetLabs, hat sich die Zusammenarbeit bei der Konferenz angeboten und wir unterstützen die Konferenz als Partner sind an allen Tagen vor Ort. Am Freitag habe ich dann dort noch die Gelegenheit einen kleinen Vortrag zum Thema Puppet zu halten und unsere Erfahrungen aus dem Managed Service Bereich mit der Community zu teilen. Die genauen Details zum Vortragsslot stehen noch nicht Fest, ich werde das jedoch hier nachholen.
Falls jemand unserer Blog-Leser vor Ort ist oder kurzfristig nach San Francisco kommen möchte, bekommt er mit dem Sponsoring-Code “SPONSOR150” bei der Anmeldung noch einen ordentlichen Discount.
Im Vorfeld findet in Sunnyvale auch noch ein Eucalyptus Meetup statt, dass wir uns aufgrund der Örtlichkeit nicht entgehen lassen möchte. Hier werden, wie das Foto schon vermuten lässt, aktuelle Neuerungen zum Thema Cloud-Computing mit Eucalyptus diskutiert.
Wer es nicht nach San Francisco schafft, muss auf jeden Fall zum PuppetCamp nach Nürnberg kommen. Gemeinsam mit PuppetLabs veranstalten wir im Anschluss an die OSMC das erste Puppet Camp in Deutschland und freuen uns jetzt schon über die tolle Resonanz und die erstklassigen Vorträge.
Wir sehen uns also, am besten bei allen drei Veranstaltungen, in den nächsten Tagen und werden von unserem Roadtrip berichten.

Bernd Erk
Bernd Erk
CEO

Bernd ist Geschäftsführer der NETWAYS Gruppe und verantwortet die Strategie und das Tagesgeschäft. Bei NETWAYS kümmert er sich eigentlich um alles, was andere nicht machen wollen oder können (meistens eher wollen). Darüber hinaus startet er das wöchentliche Lexware-Backup und investiert seine ganze Energie in den Rest der Truppe und versucht für kollektives Glück zu sorgen. In seiner Freizeit macht er mit sinnlosen Ideen seine Frau verrückt und verbündet sich dafür mit seinem Sohn.

Flut, Sturm, Hüttenbrand… Nasebohren?

Abgesehen von dem fiesen Sturm am Samstag haben wir es in der NETWAYS Eventabteilung seit ein paar Tagen noch mit einer anderen Naturkatastrophe zu tun: Mailflut.
Die Mailflut hat allerdings gar nichts mit dem Sturm zu tun – also kein Tsunami –  sondern eher mit dem (An)Sturm auf die letzten vergünstigten OSMC-Tickets und den damit verbundenen Anmeldungen.
Die trafen am Freitag nämlich schon im Sekundentakt bei uns ein, sodass sich das Eventteam zeitweise mit einer ganzen Reihe von Ventilatoren abkühlen musste um nicht zu überhitzen, weil die Hütte so gebrannt hat.
Jetzt sind sie alle weg, die Early Bird-Tickets und auch Bewerbungen als Speaker auf der OSMC weigern mein Kollege und ich uns inzwischen standhaft anzunehmen (sorry ihr Schlafmützen, der Call for Papers ist vorbei. Markiert euch die OSDC fürs nächste Jahr schon mal fett im Kalender!).
Das sollte doch dann eigentlich bedeuten: (An)Sturm auf Tickets fällt weg, Mailflut ebbt ab, kein Hüttenbrand mehr!
Damit dürfte doch der Weg frei sein für entspanntes Nasebohren und Gala lesen während der Arbeitszeit!
Nichts gegen die Gala, oder das Bedürfnis mal in sich zu gehen und den eigenen Körper kennen zu lernen, aber wir wollen das gar nicht. Mein Kollege und ich, wir sind aus einem anderen Holz geschnitzt. Wir wollen während der Arbeitszeit große Taten vollbringen. Todesmutig auf der unzähmbar wilden Welle der Mailflut reiten, mitten im Orkan hereinschießender Anmeldungen stehen und eine beidseitige Sehnenscheidenentzündung an Armen und Beinen kriegen, weil wir so viele Anmeldungen bearbeiten müssen, um dann über alle hereinbrechenden Katastrophen zu triumphieren!
Was soll man machen? So sind wir nun mal, mein Kollege und ich! Unseren geheimen, schmutzigen Leidenschaften können wir schließlich auch, jeder für sich, im Privaten frönen.
Deshalb widmen wir uns jetzt nicht nur voller Innbrunst den regulären Anmeldungen zur OSMC und dem Programm für die mitgebrachten Herzensmenschen unserer Teilnehmer, sondern sind auch im Hinblick auf das Puppet Camp fleißig. Referentenauswahl ist hier das Stichwort!
Für das Puppet Camp kann man sich nämlich noch weiterhin als Speaker bewerben. Und das sollte man schleunigst tun (hier, hier oder hier), schließlich ist meine Sehnenscheidenentzündung schon wieder am abklingen – und das geht ja wohl nicht!