Seite wählen

NETWAYS Blog

DEV-Trainings: Git und Jenkins

training_jenkinstraining_gitWir starten 2016 voll durch mit einem erweiterten Schulungsportfolio – neben Foreman und Ceph fokussieren wir uns im Development auf Git und Jenkins.
Die ersten Schulungen mit frisch erstellten Unterlagen fanden letzte Woche In-House bei einem unserer Kunden statt, sozusagen die „Feuertaufe“ für die kommenden Schulungen.
git_introduction_basics_03_three_statesNach einer kurzen Einführung in die Geschichte von VCS und der Entstehungsgeschichte von Git haben wir anhand von praktischen Beispielen erste Schritte mit Git gemacht – wie initialisiere ich ein Repository, was bedeutet „modified“, „staged“, „committed“, was passiert bei „git add“ und „git commit“? Bevor wir uns in die Tiefe mit Remote Repositories gestürzt haben, kam auch noch das Arbeiten mit Branches und unterschiedlicher Commit-Historie und – natürlich absichtlich provozierten – Fehlern beim Merge und Rebase dran.
Um das Gelernte auch in der Praxis weiterhin verwenden zu können, wurde die Arbeit mit einem lokalen Git-Server und fetch, pull, push und Branches vertieft. Das ganze kombiniert mit den unterschiedlichen Workflows (Feature-Branch, Gitflow, Forking) und praktischen Beispielen und nachgehender Analyse.
Die Brücke zur Jenkins-Schulung haben wir mit einem Git-Hook geschlagen, der für einen Git-Commit einen Jenkins-Job ansteuert.
jenkins_job_chuck_norrisNach der Installation des Jenkins-Installationspakets haben wir uns sogleich in die Konfiguration gestürzt – und natürlich in den ersten gemeinsamen Job. Ein Python-Script will gebaut werden, und später dann auch paketiert. In erster Linie haben wir uns Code Coverage und Qualität für CI und Test-Frameworks angesehen. Mit verschiedenen Build-Schritten und der Hilfe des Trainers gings dann auch gleich weiter mit der Einbindung an einen Jenkins-Agenten, der dediziert die Jenkins-Jobs ausführen sollte. Hierbei gibts einige Fallstricke zu beachten, gerade was SSH-Keys und shared Workspaces betrifft. Die Köpfe haben geraucht – aber spätestens dann als der frisch installierte Git-Hook den Jenkins-Paket-Bau angestossen hat, gabs für jeden das persönliche Erfolgserlebnis.
git_integrations_jenkins_git_hook
Neben den praktischen Beispielen haben wir uns auch Zeit genommen, gezielt Fragen zur eigenen Umgebung zu diskutieren, oder auch aus dem Nähkästchen zu plaudern. Git und Jenkins ist Teil unserer täglichen Arbeit an Icinga & Co und da gibts schon ein bissl Best Practice zu erzählen 😉
Für kurz entschlossene wissbegierige Anwender und jene die ihr Wissen auffrischen wollen – es gibt noch Plätze in unserer Git-Schulung am 28.6.2016 und Jenkins-Schulung am 30.8.2016 🙂
Und für all jene, die das Git-Fachwissen schon in sich aufgesaugt haben – wir hosten auch die eigene GitLab CE Instanz in unserer Cloud. Lust auf mehr? Kommt einfach auf uns zu!
PS: Trainings machen mir Spass – darum werd ich auch den diesjährigen Git-Workshop auf der OSMC halten 🙂
 

Darf ich vorstellen: Die offiziellen Foreman Schulungsunterlagen by NETWAYS

Selbstverständlich sind wir ständig darauf bedacht, die Qualität unserer Schulungen zu verbessern. So auch die unserer Foreman-Schulungen, die wir Anfang des Jahres in unser Schulungsportfolio aufgenommen haben.
Das Lifecycle Management System Foreman kommt bei der Unterstützung der Provisionierung virtueller und physikalischer Systeme und beim Konfigurationsmanagement zum Einsatz.
training_sidebar_foreman_en_200x155
In der Schulung lernen die Teilnehmer von Architektur und Installation, über Provisionierung und Konfiguration, bis hin zu Grundlagen der Automatisierung. Die genauen Inhalte der Schulung findet Ihr hier. Alle Themen behandelt Ihr sowohl theoretisch als auch praktisch.
Neue Schulung – neue Unterlagen! Dementsprechend hat unser Dirk sich im Rahmen des Configmanagement Camp mal schlau gemacht und sich allerhand Anregungen geholt und drauf losgeschrieben. Harte Arbeit wird belohnt! So auch die von Dirk! Und so kam es, dass die beiden Manager des Foremanprojekts so begeistert waren, dass man beschloss, die Unterlagen als gemeinsames Open Source Projekt zu veröffentlichen.
Wir sind super stolz und setzten die Unterlagen natürlich ab sofort bei allen unseren Foreman Trainings ein.
Ihr habt Lust auf eine Foreman-Schulung? Dann gleich anmelden!
Hier die nächsten Termine:

  • Juli – 27. Juli | Foreman Schulung | Nürnberg
  • Oktober – 07. Oktober | Foreman Schulung | Nürnberg

Falls euch keiner der Termine passt, weil Ihr viel beschäftigt seid, können wir für euch und eure Kollegen selbstverständlich auch eine speziell auf Eure Wünsche abgestimmt Inhouse-Schulung organisieren. Einfach anrufen, oder eine E-Mail schreiben.

Foreman/Puppet vs. Gnome – Einstellungen automatisieren

foreman_small
Der Gnome Desktop ist prinzipiell eine sehr schöne Software, da durch seine Hilfe die Bedienung eines Linux Betriebssystems als Desktop deutlich einfacher wird. Ähnlich zu Windows Systemen können Einstellungen durch wenige Klicks mit der Maus getätigt werden.
Aber wie Automatisiert man diese Einstellungen? Und warum will man das? Für alle Teilnehmer unserer Schulungen stellen wir Notebooks zur Verfügung. Diese sind je nach Schulung (Icinga, Puppet, Ceph, usw.) unterschiedlich vorbereitet. Daher betanken wir alle Notebooks vor jeder Schulung mit unserem Foreman neu. Nach der frischen Grundinstallation müssen Einstellungen wie z. B. das Keyboard Layout dementsprechend neu konfiguriert werden.
Keyboard Layout ändern? Ja und? – Genau das dachte ich mir auch. Kann doch nicht so schwer sein…
Aber die Praxis belehrt eines besseren. Ändert man mit Puppet die /etc/default/keyboard ist dies bei unserem Debian 8.4 zwar theoretisch global gültig (z. B. für den Login-Screen), die einzelnen Benutzer-Accounts (mit Gnome) interessiert dies aber herzlich wenig. Wurde das Grundsystem in englischer Sprache installiert, ist das Tastaturlayout englisch und das völlig unabhängig von den Einträgen der /etc/default/keyboard.
Aber nichts leichter als das. Mit einem beherzten gsettings set org.gnome.desktop.input-sources sources "[('xkb', 'de')]" lassen sich solche Einstellungen schnell korrigieren. Pustekuchen! Das Kommando gsettings verlangt einen Execute über eine grafische Oberfläche, was Puppet und sein Manifest ziemlich uncool finden.
Rätsels Lösung ist in diesem Fall der für meine Begriffe etwas „dreckige“ Workaround:
/usr/bin/sudo -u training dbus-launch --exit-with-session gsettings set org.gnome.desktop.input-sources sources "[('xkb', 'de')]"
Tja, wer hätte das gedacht. Es ist nicht sonderlich hübsch, funktioniert aber tadellos. In Zukunft kümmere ich mich lieber wieder um Serversysteme und behaupte nie wieder das die Umstellung des Keyboard Layouts nicht so schwer sein kann 😉

Tobias Redel
Tobias Redel
Head of Professional Services

Tobias hat nach seiner Ausbildung als Fachinformatiker bei der Deutschen Telekom bei T-Systems gearbeitet. Seit August 2008 ist er bei NETWAYS, wo er in der Consulting-Truppe unsere Kunden in Sachen Open Source, Monitoring und Systems Management unterstützt. Insgeheim führt er jedoch ein Doppelleben als Travel-Hacker und renoviert, baut und bastelt als Heimwerker an allem was er finden kann.

NETWAYS stellt sich vor – Tim Albert

Name: Tim Albert

MA_talbert_frei_deu_eng_125x125

Alter: 32

Position bei NETWAYS: Systems Engineer

Bei NETWAYS seit: Februar 2016

Was genau gehört zu Deinem Aufgabenbereich bei NETWAYS?

Bei NETWAYS bin ich als Systems Engineer für den reibungslosen Betrieb unserer Infrastruktursysteme zuständig.

An welchen Projekten arbeitest Du gerade?

Als neues Mitglied der NETWAYS-Familie bin ich natürlich erst einmal am „Ankommen“. Ich lerne gerade intensiv die internen Prozesse und technischen Eigenheiten kennen, um danach mit vollem Einsatz das Team Infrastructure und somit auch unsere Kunden zu unterstützen. Die Kollegen helfen mir hierbei sehr gut, so dass ich mich ausgezeichnet aufgehoben fühle. Auch das Umgewöhnen aus der Linux-Welt auf meinen aktuellen Arbeitsrechner (MacBook) verlangt nach Aufmerksamkeit (Wo ist gleich wieder das „Pipe“-Symbol?).

Welche größeren oder besonders interessanten Projekte stehen zukünftig an?

Letzte Woche besuchten wir „Neuen“ eine intensive Puppet-Schulung von unserem Kollegen Ufuk Sentürk, die viel von meiner Zeit in  Anspruch genommen hat. Dazu kommen noch die weiteren Einarbeitungstasks, z.B. zu den Themen HA-Netzwerke, CoreOS, Ceph, Hiera und tagesaktuelle Projekte.

Was macht Dir an Deiner Arbeit am meisten Spaß?

Am meisten Spaß macht mir mit Sicherheit, mit einem sehr guten Team zusammen zu arbeiten und das in einem Bereich, den ich lange als Hobby betrachtet habe.

Außerdem sehe ich ich jetzt bisher ganz alltägliche Dinge in einem anderen Licht, nachdem ich hier die Möglichkeit habe, einen Blick hinter die Kulissen zu bekommen.

Die Entwicklungen im IT-Sektor hautnah mitzuerleben und nicht nur als bloßer Beobachter dabei zu sein ist auch ein besonderes Gefühl.

Welche Technologie oder Entwicklung der letzten Jahre ist Deiner Meinung nach die wichtigste, bzw. herausragendste im Bereich Open Source?

Dadurch, dass jedem der Zugriff auf die Software möglich ist, wurde die IT egalitärer. Jeder, der ein gewisses Maß an Interesse mitbringt und natürlich die Fähigkeiten und Hardware besitzt, kann sich damit auseinandersetzen und mitarbeiten. FOSS sind auch keine reinen Nischenprodukte für professionelle IT-Anwender mehr, sondern erreichen jeden durchschnittlichen Anwender.

Wie geht es in Zukunft bei Dir weiter?

Mit dem Ankommen ist es natürlich nicht getan. Im Infrastrukturbereich haben wir selbstverständlich auch nicht nur den Status quo zu erhalten, sondern auch neue Lösungen und Prozesse zu implementieren. Was da genau auf mich zu kommt, ist erstmal offen, – Ich weiß nur, es bleibt spannend!

Tim Albert
Tim Albert
Senior Systems Engineer

Tim kommt aus einem kleinen Ort zwischen Nürnberg und Ansbach, an der malerischen B14 gelegen. Er hat in Erlangen Lehramt und in Koblenz Informationsmanagement studiert. Seit Anfang 2016 ist er bei uns tätig. Zuerst im Managed Services Team, dort kümmerte Tim sich um Infrastrukturthemen und den internen Support, um dann 2019 - zusammen mit Marius - Gründungsmitglied der ITSM Abteilung zu werden. In seiner Freizeit engagiert sich Tim in der Freiwilligen Feuerwehr – als Maschinist und Atemschutzgeräteträger -, spielt im Laientheater Bauernschwänke und ist auch handwerklich ein absolutes Allroundtalent. Angefangen von Mauern hochziehen bis hin zur KNX-Verkabelung ist er jederzeit...

Im Oktober lassen wir nochmals die Puppen tanzen!

Im Oktober habt ihr die letzte Chance euch für dieses Jahr noch einen Platz auf einer unserer weiterführenden Puppet Schulungen zu sichern!
training_sidebar_puppet_practitioner_200x155Unsere 3-tägige Puppet Practitioner Schulung findet vom 27.-29. Oktober in Nürnberg statt, wo ihr auch gleich eure Englischkenntnisse mit auffrischen könnt.
Aufgrund einiger internationale Teilnehmer wird dieses Training dieses Mal auf Englisch gehalten. Wer sich also nicht scheut, sollte „very quickly“ auf unsere Webseite schauen und sich hier noch einen der wenigen Plätze sichern.
In diesem Training gehen wir tiefer auf die Frage ein, warum man seine Infrastruktur auf die richtige Art und Weise in Puppet verwalten sollte. Wir zeigen euch mehrere Verfahren, um Aufgaben in Puppet zu lösen und dafür die bestmögliche Vorgehensweise anzuwenden. Ebenso werden Best Practice Beispiele zur Umsetzung des Rollen & Profilen Konzeptes vermittelt.
training_sidebar_puppet_architect_200x155Für alle Puppet Interessierten, die gerne noch Ihre Kenntnisse im Aufbau ihrer eigenen Umgebung erweitern möchten und einen individuellen Weg suchen, um Puppet zu implementieren, sind in unserer Puppet Architect Schulung genau richtig. Lennart wird euch zeigen wie ihr die fortgeschrittene Puppet DSL Techniken anwendet, Klassifikationen und Datensuchtechniken erlernt sowie die effizienteste Architektur bestimmt, um Puppet nach euren eigenen Bedürfnissen einzurichten.
Unsere 2-tägige Puppet Architect Schulung findet vom 22.-23. Oktober 2015 in Nürnberg statt und eure Anmeldungen könnt ihr direkt hier absenden.
Wir freuen uns auf Euch!