DevOps

Must-have Ressourcen, Skills und Techniken für Data Engineers und Data Scientists

Nachdem wir in den Artikeln „Onboarding neuer IT-Mitarbeiter (DevOps, Big Data, Developer)“ und „Tutorial: IT-Basiswissen für DevOps, Big Data, Developer“ die grundlegenden Themen für neue IT-Fachkräfte vorgestellt und ein Tutorial zum Erlernen dieses Basiswissens gezeigt haben, möchten wir nun genauer auf Werkzeuge und Techniken eingehen, die speziell für Mitarbeiter im Bereich Data Engineering oder Data Science relevant sind.

Maurice KnoppMust-have Ressourcen, Skills und Techniken für Data Engineers und Data Scientists
Mehr

Container OS Vergleich

Seit dem Aufstieg der Container-Community in den letzten drei Jahren sind viele Unternehmen und Projekte entstanden, die wirklich innovative Wege zur Verwaltung von Anwendungen bieten.

Es gibt mehrere Projekte rund um das Thema Management, Netzwerk, Speicherung, Protokollierung, Überwachung und mehr (siehe diese Mind Map des Ökosystems). Die Container-Betriebssysteme spielen in diesem Ökosystem eine besonders wichtige Rolle.

In allen Unternehmen wo ich bisher als Berater unterwegs war gab es eine Frage die sich alle Entwickler stellten: Welches ist das beste Betriebssystem, um Container zu betreiben? Ein komplettes Linux? CoreOS? Was ist mit RedHat? Ich habe auch von etwas namens RancherOS gehört? Und diese ganzen „Atomic“ Systeme?

Masiar IghaniContainer OS Vergleich
Mehr

Java Heap Settings in Docker Containern

Entwicklern sollte bewusst sein, dass sich Java Prozesse in Docker Containern anders verhalten als wenn sie direkt auf einem Host ausgeführt werden. Wenn wir z.B. eine Anwendung mit java -jar mypplication-fat.jar” starten, dann passt die JVM einige Parameter selbständig an, um die bestmögliche Performance zu gewährleisten.

Man neigt dazu zu denken, dass Container genau wie virtuelle Maschinen sind, wo wir eine Reihe von virtuellen CPUs und virtuellen Speicher vollständig definieren können. Container sind eher ein Isolationsmechanismus, bei denen die Ressourcen (CPU, Speicher, Dateisystem, Netzwerk, etc.) für Prozesse voneinander getrennt sind. Diese Isolation wird durch eine Linux-Kernelfunktion namens cgroups ermöglicht. Einige Anwendungen, die Informationen aus der Ausführungsumgebung benutzen, wurden jedoch vor der Existenz von cgroups implementiert. Tools wie ‚top‘, ‚free‘, ‚ps‘, und selbst die JVM ist nicht dafür optimiert, innerhalb eines Containers einen stark eingeschränkten Linux-Prozess auszuführen. Schauen wir uns das mal an.

Masiar IghaniJava Heap Settings in Docker Containern
Mehr

Tutorial: IT-Basiswissen für DevOps, Big Data, Developer

Nachdem wir im Artikel „Onboarding neuer IT-Mitarbeiter (DevOps, Big Data, Developer)“ die grundlegenden Themen für neue IT-Fachkräfte vorgestellt haben, möchten wir nun anhand eines Tutorials zeigen, wie Wissen zu diesen Themen praktisch angewendet werden kann. Neue IT-Mitarbeiter können die nachfolgenden Tutorialaufgaben Schritt für Schritt durchlaufen und zum Abschluss die Projektdokumentation und die beiden kurzen Präsentationen einem Senior Entwickler vorlegen bzw. präsentieren.

Maurice KnoppTutorial: IT-Basiswissen für DevOps, Big Data, Developer
Mehr

Onboarding neuer IT-Mitarbeiter (DevOps, Big Data, Developer)

Damit Hochschulabsolventen aus MINT Fächern als IT-Fachkräfte möglichst schnell produktiv im Firmenumfeld arbeiten können, sollten diese die gebräuchlichsten Technologien und Werkzeuge kennen und verwenden können. Nachfolgend heben wir die wichtigsten Themen heraus und verweisen auf Ressourcen um diese schnell zu erlernen.

Maurice KnoppOnboarding neuer IT-Mitarbeiter (DevOps, Big Data, Developer)
Mehr