Select Page

NETWAYS Blog

Foreman Birthday Event 2024 – Recap

On Monday, 15.07.2024, I met early with my colleagues Lennart and Matthias to travel to Garching for the Foreman Birthday Event. This year it was again hosted by ATIX at a conference room next to their office, so thanks to all of them for having as there, especially to Bernhard! And also thanks to the community members that joined us! It was a nice mix from the German community with also some international guests from Red Hat, mostly familiar faces but also some new ones. And it is as great to see the community still growing even after 15 years as it is great to meet all the people who became friends in this time.

The morning

After some time to get together we entered the room and Bernhard gave the official welcome before handing over to his colleagues for the first talk.

First Talk“Automated Provisioning with SecureBoot and Foreman” by Jan Löser and Markus Reisner was a great talk giving insights in SecureBoot in general as a start. Then they showed the current state of Foreman handling SecureBoot and why the implementation is limiting real world scenarios. But ATIX is working on a complete overhaul of the feature and thanks to the community input it is taking shape. The new feature will be backwards compatible, so no change needed if you do not want to use it. This is great, especially as the first step will require some manual work to setup everything. But the plans for automated setup are there and as I know the guys it will not take too long to get this implemented, too. With this in place using SecureBoot with Foreman will give you a better experience!

As second speaker Martin Alfke told us the story “How Foreman Community enables new contributors”. While working with Foreman already for a long time at different customers, he never joined the community in a deeper sense. After they developed Hiera Data Manager customers asked for some integration with Foreman. And with the help of the community they delivered! So now you can debug the Hiera data of your Puppet environment not only much easier, but also directly from the Foreman UI. Foreman-HDM
On the day Martin got the help with the last missing piece, the Foreman installer, and was encourage to join official Professional Services starting with a blogpost.

After a short break Evgeni Golov introduced the audience to “Foreman build test environment: migration from Jenkins to GitHub Actions”. He showed where the Project was before starting the migration, the current stage and what else is planned. He also encouraged the Plugin developers in the room to make use of it. And I think other projects can also learn from it. So take a look at his slides.

The afternoon

ATIX invited us to have lunch in the restaurant of the office complex which provided some nice choices and great quality of food. I also used this for a nice mixture of private and business talk with Martin and some ATIX guys. It is always great to realize how well we work together in the community even we are somehow competitors.

Then the stage was mine asking the question “Foreman – a complete lifecycle management tool for desktops?”. A bit out of my comfort zone it was not a technical deep talk with many demos, but a more light one sharing my experience based on some use cases. Starting with a simple virtual desktop over our training setup to the proof of concept we did for a customer project I looked into the challenges we experienced and how we solved them if we did already. After that I came to the conclusion that Foreman is ready to manage Linux desktops with only a bit of work, but the Linux desktops are not ready to be automated without putting some more work into.

Fifth Talk“Foreman documentation: Helping users figure things out since May 15, 2019” by Maximilian Kolb and Aneta Šteflová Petrová talked us through the progress the Foreman documentation made since Red Hat started to upstream the documentation. The anecdotes and examples given by the two technical writers showed their great commitment to the project. One reason they pointed out why the project is seen as a real success story is how closely developers and technical writers of different companies involved work together.
Afterwards we had a short discussion on how to improve further and how to reach the goal of the new documentation being the default one.

And last but not least Ian Ballou joined us remotely from the US to show “New Feature: Pushing Containers Into Katello”. It was great having him give this demo even without being on-site. He did really dived deep into this new feature and answered all the questions the audience had afterwards. So if you had a Container registry to push your images to and then to be synced from to Katello, this will make your life easier by allowing direct push to Katello’s registry.

Cake time

After the talks and a short feedback round unfortunately some had to leave, but for the rest of us it was cake time. Bernhard hesitated to cut the cake, so this job become my honor. After a quick count I had to cut it into 20 pieces directly starting the discussion how to do this best with everyone offering suggestions. But with the problem solved, we split into groups. Some still discussing topics from the talks, some talking about other aspects of the project or IT in general and others just having a friendly chat. About one hour later it was time to leave so we could catch our train back to Nuremberg, but we were not the last ones.

CakeMe cutting the cake

It was again a great event, so thanks to everyone who made it possible. I already heard the feedback like having an introduction round, having more hands-on demos, more time for open discussion, more hybrid. Not sure what of this we can implement next year, but I want to make it a similar success again in 2025!

Other celebrations

But we were not the only one celebrating the Foreman’s 15th birthday. Christian Stankowic made a special on the podcast FOCUS ON: LINUX consisting of two episodes. Episode 110 is “15 Jahre Foreman” (in German) which has Christian, Evgeni, Bernhard and me talking about the project and trying to include every possible pun. Episode 111 is an Interview with Ohad Levy about the project’s history and answering questions.

P.S.: As a side note for Ian: I promised to eat a slice of the birthday cake in your name so the second piece was also delicious and replaced my diner! 😉

Dirk Götz
Dirk Götz
Principal 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.

Foreman Birthday Event 2023 – Recap

Two years ago I started my recap of the event with “Last week on Thursday we had the Foreman Birthday event and I can proudly say it was a big success.” and I can do the same for this one.

At the beginning of the year planning for the event started in the background as we discussed in which form we want it to happen. While I was excited for having an in-person event, I quickly realized that travel restrictions and budget would still be a problem for many people, so we agreed on keeping it online for another round would be the best. So keep the fingers crossed for the next time.
When we finalized the date and it was time to find some speaker, a wild hunt started as many changes of the last year had come together. Some of my usual suspects had changed position or company, environments moved from the classic IT environment managed by Foreman to a cloud native approach managed by Kubernetes and similar effects made me fear I can not provide a good program. So I was even thinking about jumping in myself and give a talk as I still do not own a kettle prod to motivate colleagues. 😉 But in the end I was happy with the four talks we got as it was a good mix.

Thanks to our events team who did so many things in the background which I would have forgotten, the managed services team who provided the servers and Christian who did the streaming setup, we had the same setup like last time. And when I started to adjust the configuration of all the buttons on the stream deck I started to finally remember everything including the mixed feeling of excitement and nervousness. Nervousness reached its top when I started the introduction and was signaled people could not hear me, just to realize one button was still showing me muted while the one I looked showed unmuted. But after this everything went smooth.

Screencapture of the Youtube Stream with Countdown at 0:00

Our first speaker was Christian Stankowic who gave a nice look into his work at many customer projects in his talk “Lessons Learned – Automated installations and hints”. The first part of his talk was about Foreman and alternatives and why people decide for or against Foreman. I like it if a talk is not free of critique and Christian had some good points here even if you do not agree with all. His tips and tricks focus on automated installation and documentation, but there are also some on infrastructure design. And with all the tips given he was so kind to provide an example repository on github, too! Thanks again Christian, I was really happy I convinced you to give this talk.

The second one was Bastian Schmidt with “Provisioning Ubuntu hosts in Foreman” who was also was very involved with implementing the topic. It was a rocky road to get this up and running after Ubuntu moved from Preseed to Autoinstall with 20.04.3/22.04.1. Bastian talk showed how rocky it was and also how good the community was in tackling it. And his talked ended with a demo showing the next improvement currently in the making. Thanks again Bastian for the talk and even more for the hard work on this feature!

Screencapture of the Youtube Stream during the Live Q&A with Bastian Schmidt

Ewoud Kohl van Wijngaarden did his talk live as he just finished it last minute, but this also worked great. In “foreman-documentation: rethinking our documentation” we heard about past, present and future of the Foreman’s documentation. If you have not heard about before the new documentation started as the documentation for Red Hat Network Satellite which was given to the Foreman Project to make this a true open source project with upstream and downstream. From this it was a huge community effort to adapt this for Foreman and Katello while creating a good base not only for the Satellite but also Orcharhino. And now the next step is to get rid of the manual and make it the one documentation. Thanks to Ewoud and all those involved in creating and improving the documentation.

And last but not least we had Samir Jha who demoed the updates from the Katello content team. As an addition Ian Ballou had added a demo focusing on the Alternate Content Source feature and Chris Roberts did send me a demo to showcase Simple Content Access. So we finished with a great look inside the latest improvements to Katello and in the live Q&A Samir also talked about future improvements. Thanks to all of you!

In parallel and afterwards we had again the social event in workadventure which I could only join after the stream ended, but this was still enough to meet some community members. All of them were happy and gave great feedback about the event. In the end I had a quite long and productive discussion with Ewoud and Maximillian about many different topics. So I am really looking forward for the next event where I can meet this great community again!

Dirk Götz
Dirk Götz
Principal 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.

Foreman Birthday Event 2023 – Save the date

I can happily announce we will have a Birthday event on 27.07. this year again. I will be our host again, supported by my colleagues from NETWAYS, ATIX and the Foreman Project. When I talked to people at Cfgmgmtcamp, I was told by many that they really liked the format from 2021 and many companies still have travel or budget restrictions, so we decided to keep the event online. Hopefully returning to a face to face event in the future, but we will see what time brings.

What is planned so far?

We want to have 5-6 30 minute talks and I will moderate the event as live stream on youtube starting 15:00. But as the event also always was not only about the talks and knowledge, but also a social get-together we do want to provide some option to chat during the talks and breaks and have some accompanying social event.

If you like to give a talk please get in touch with me as I am in charge for planing this year (here in the community or via email). We aim for a wide variety of talks, be it a new plugin or some new tricks for an old one, a case study showing your environment, about Foreman itself, Katello/Satellite/Orcharhino, Pulp, Candlepin or even Puppet and Ansible or the Community. Everything related to Foreman will be considered. We plan to have all talks pre-recorded and will provide guidance for doing so. After the talk we want to give everyone the chance to ask questions, so the speaker can answer them live.

For the chat and the social event we will very likely use the same tools again which made the last event such a success, but perhaps our event team will come up with some improvements. If you want to reminisce about the last event or if you missed it and want to know what I am talking about, you can find my recap here at our blog.

How to stay up to date?

So save the date and spread the word! I will collect news in the Foreman-Community and at the latest will write another blog post when the program is finalized.

Dirk Götz
Dirk Götz
Principal 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.

Leap(p) to Red Hat Enterprise Linux 9

Ich muss mich direkt für das Wortspiel im Titel entschuldigen, aber es lag so nahe als ich mich für das Thema entschieden hatte, denn ich möchte einen neuen Blick auf Leapp werfen mit dem Upgrades von Red Hat Enterprise Linux (RHEL) durchgeführt werden können. Der Blick soll wie gewohnt etwas ausführlicher sein, daher wird Blog-Post als erstes die Frage “Replace or In-Place” aufgreifen, die ähnlich alt ist wie “Henne oder Ei”. Als nächstes geht es um den Status des Projekts, bevor ich die Nutzung auf Kommando-Zeile erläutere. Dann ein kleiner Abstecher über Foreman-Upgrades bevor es mit dem Cockpit-Plugin graphisch wird und am Ende das Foreman-Plugin und die Ansible-Rolle das ganze Thema massentauglich machen.

Replace or In-Place?

Vermutlich stand bereits jeder Nutzer mal vor der Frage ob sich ein Upgrade lohnt oder nicht doch besser das System direkt mit der neusten Version des Betriebssystems neu zu installieren ist. Bei ersterem ist der Aufwand natürlich entsprechend geringer, denn man liest sich die Neuerungen durch, achtet dabei auf besondere Hinweise, macht nochmal ein aktuelles Backup (das tun doch hoffentlich alle?), startet das Upgrade, neustartet, lässt die Nacharbeiten laufen, neustartet und erfreut sich eines schönen glänzenden neuen Systems. Zumindest bis man merkt, dass manche Schraube immer noch locker, der Müll auf der Rückbank nicht verschwunden ist, der Motor weiter leckt und falsch eingestellt ist, um einen Autovergleich zu bemühen. Oder in unserem Fall bleibt vielleicht die oder andere Einstellung beibehalten, die sich negativ auswirkt, eine Software-Lösung wird vielleicht nicht durch eine modernere Lösung ersetzt und alles was wir mal ausprobiert haben und danach nie wieder genutzt haben nimmt weiterhin Plattenplatz weg.
Das ist dann auch meist das Argument für die Befürworter von Neuinstallationen statt Upgrades. Ein weiteres war zumindest früher oft das Thema es gibt kein einfaches, geeignetes Werkzeug und der Vorgang ist nicht supportet. So musste man früher für Updates von RHEL immer über die Installationsabbilder gehen, damit auch Änderungen an Einstellungen sowie Software möglich waren, wodurch der Aufwand quasi bis auf das Wiederherstellen von Daten der einer Neuinstallation gleicht. Der alternative Weg über den Packagemanager war oft mit manuellen Nacharbeiten verbunden und absolut nicht durch den Support abgedeckt. Hier setzt Leapp an um einen Mittelweg aus Einfachheit für den Benutzer und der Möglichkeit für Anpassungen durch die Distribution zu finden.

Das Projekt

Das Projekt Leapp hat Red Hat 2017 gestartet und es besteht aus einem Framework und den sogenannten Actors, die die eigentliche Arbeit ausführen. Das erste Mal zum Einsatz kam es dann als Upgrade von RHEL 7 auf 8. Weitere Bekanntheit bekam das Projekt unter dem Namen ELevate, was ein Fork der Actor durch die Distributoren von AlmaLinux ist. Der Fork enthält dann Actors um CentOS Linux 7 auf AlmaLinux OS 8, CentOS Stream 8, EuroLinux 8, Oracle Linux 8 oder Rocky Linux 8 zu aktualisieren. Auch wenn die Intention sicher ein einfacher Wechsel von CentOS zu AlmaLinux war, ist der Open-Source-Gedanke hier mit der zusätzlichen Unterstützung der anderen Distributionen sehr löblich umgesetzt, insbesondere nachdem CentOS selbst die Unterstützung von Leapp ausgeschlossen hatte. Für ein Upgrade von RHEL 8 auf 9 gibt es mittlerweile vom Leapp-Projekt selbst auch Actors, was der Grund für mich war mich erneut mit dem Projekt zu beschäftigen, da bei einem Kunden genau dieses Update ansteht.
read more…

Dirk Götz
Dirk Götz
Principal 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.

Schulungsnotebooks in neuem Gewand

In diesem Jahr konnten wir endlich wieder mehr Vor-Ort Trainings durchführen als in den vergangenen Jahren und sogar vereinzelte Inhouse-Trainings bei Kunden waren möglich. Bisher haben wir bei unseren Präsenztrainings oder auch -workshops auf Notebooks mit CentOS 7 gesetzt, und zwar deshalb weil die automatische Provisionierung durch unseren sog. “Event”-Foreman in Kombination mit Puppet seit langer Zeit gut funktioniert.

Recovery-Eintrag

Da es in der Vergangenheit für die Kollegen allerdings sehr aufwändig war die Notebooks nach jedem Training wieder ins Büro zu schleppen, sie zu verkabeln und sie dann von Grund auf neu zu installieren, haben wir uns einen Trick einfallen lassen: Nach der automatischen Grundinstallation des Betriebssystems wird ein LVM-Snapshot des Base Images erstellt. Grob gesagt heißt das der Stand des Base Images wird eingefroren und alles was neu hinzukommt bzw. verändert wird (z.B. individuelle Schulungsvorbereitungen für verschiedene Trainings) belegt zusätzlichen Plattenplatz. Damit lässt sich das ursprüngliche Base Image ohne Neuinstallation eines Notebooks schnell wieder herstellen und kann so auf das nächste Training angepasst werden.

Ein weiterer Vorteil des Ganzen ist das die Schulungsteilnehmer ihre Arbeitsumgebung so gestalten können wie sie möchten und beispielsweise auch uns nicht bekannte Passwörter setzen können, mit dem Löschen des LVM-Snapshots ist alles wieder vergessen. Um es auch technisch nicht so affinen Kollegen einfach möglich zu machen Notebooks “zurückzusetzen”, gibt es hierfür beim Booten unser Schulungsnotebooks einen “Recovery”-Eintrag im GRUB-Bootloader der den LVM-Snapshot des Base Images ohne jedes Zutun zurückspielt und das Notebook anschließend neu startet.

Wie kommen aber nun die individuellen Schulungsvorbereitungen auf die Notebooks? Ist die Frage die wir uns auch gestellt haben. Individuelle Schulungsvorbereitungen können z.B. die virtuelle Maschine(n) für das Training sein, meistens auf Basis von Virtual Box, SSH Keys, Hosteinträge, bestimmte Browser oder andere Applikationen um den Schulungsteilnehmern die praktischen Übungen überhaupt möglich bzw. so einfach wie nur denkbar zu machen. Sie in den Provisionierungsprozess einzubauen scheidet ja aus, da die Notebooks wenn überhaupt nur unregelmäßig neu installiert werden sollen.

Also haben wir uns auch hier etwas überlegt: Wir haben im allgemeinem Base Image ein Bash-Skript mit einem statischen Link zur Nextcloud abgelegt. Dort findet sich ein weiteres Skript das auf die aktuell angebotenen Trainings und die jeweils dafür benötigten Schulungsvorbereitungen verweist. D.h. hier liegen beispielsweise dann auch die aktuellen virtuellen Maschinen. Um das Ganze auf den Notebooks umzusetzen verwenden wir wieder Puppet, hier war die Transition leichter da wir das in der Vergangenheit so ähnlich eh schon im Foreman hatten. Damit auch jeder der Kollegen ein Notebook individualisieren kann, gibt’s hierfür natürlich auch einfache Auswahldialoge. Wurde ein Notebook für ein bestimmtes Training vorbereitet, so löscht sich das Skript zur Vorbereitung und kann erst nach dem Recovery wieder ausgeführt werden.

Beispielhafter Auswahldialog für individuelle Schulungsvorbereitung (teils mit historischen Trainings)

Das alles sollte nun natürlich auch weiterhin funktionieren. Da CentOS 7 ab 2024 keine Maintenance Updates mehr bekommt und wir bei manchen Schulungen die nativ auf den Notebooks durchgeführt werden auch etwas mit den veralteten Versionsständen zu kämpfen haben, fiel unsere Entscheidung auf CentOS Stream 9 als neues Betriebssystem für unsere Schulungsnotebooks. Damit wir überhaupt dran denken konnten CentOS Stream zu provisionieren musste erstmal das Debian auf unserem “Event”-Foreman angehoben werden, danach folgten viele kleine Updates von Foreman 1.22 bis zum aktuellen Release 3.4.0 und auch Puppet bzw. die Puppetmodule mussten aktualisiert werden. Im Foreman selbst waren die Mirrors für CentOS Stream einzurichten, Bereitstellungsvorlagen anzupassen und auch die Partitionierung haben wir aufgrund der gestiegenen Plattenkapazität der Notebooks adaptiert. Für einen automatischen Ablauf der Provisionierung nutzen wir das Foreman Discovery Plugin.

Foreman Discovery der Schulungsnotebooks

Wer sich nun selbst ein Bild von unseren Schulungsnotebooks machen möchte, dem kann ich natürlich auch nicht nur deswegen eines unserer Trainings oder einen unserer angebotenen Workshops ans Herz legen. Vielleicht auch im Zuge der diesjährigen OSMC (Open Source Monitoring Conference).

Markus Waldmüller
Markus Waldmüller
Head of Strategic Projects

Markus war bereits mehrere Jahre als Sysadmin in Neumarkt i.d.OPf. und Regensburg tätig. Nach Technikerschule und Selbständigkeit ist er nun Anfang 2013 bei NETWAYS als Senior Manager Services gelandet. Seit September 2023 kümmert er sich bei der NETWAYS Gruppe um strategische Projekte. Wenn er nicht gerade die Welt bereist, ist der sportbegeisterte Neumarkter mit an Sicherheit grenzender Wahrscheinlichkeit auf dem Mountainbike oder am Baggersee zu finden.