Slide of a workshop about DevOps with Docker in German.
DevOps mit Docker - ein Workshop für Softwareentwickler und Systemadministratoren
Docker zieht seit einiger Zeit viel Aufmerksamkeit auf sich, hauptsächlich weil es das aktuelle sehr populäre Thema DevOps adressiert. Bei Docker handelt es sich eine offene Plattform für Software-Entwickler und Sysadmins, mit der sie Software annähernd überall bauen, ausliefern und betreiben können. In diesem Workshop werden Sie lernen wie Software-Container gebaut, ausgeliefert, konfiguriert und betrieben werden. Der Vortragende wird sie anhand von praktischen Beispielen an seinen Erfahrungen teilhaben lassen.
http://www.opitz-consulting.com/go/3-6-11 --- Softwareentwicklung, -test und -betrieb können durch Virtualisierung viele Vorteile erzielen. In diesem Zusammenhang werden häufig Werkzeuge für die Bereitstellung von Umgebungen eingesetzt. Verschiedene Werkzeuge adressieren aber unterschiedliche Einsatzszenarien. Wo im Applikationslebenszyklus können diese Werkzeuge sinnvoll eingesetzt werden und wie sieht es mit Kosten und Nutzen aus? ---- Unser Senior Software Architect Richard Attermeyer stellte bei der W Jax am 5.11.2014 in München die Tools Vagrant, Puppet und Docker im Einzelnen vor und erläuterte ihren Nutzen anhand von Use Cases und Live Demos. ---- Weitere Infos: https://jax.de/wjax2014/sessions/vagrant-puppet-docker-fuer-entwickler-und-architekten ---- Über uns: Als führender Projektspezialist für ganzheitliche IT-Lösungen tragen wir zur Wertsteigerung der Organisationen unserer Kunden bei und bringen IT und Business in Einklang. Mit OPITZ CONSULTING als zuverlässigem Partner können sich unsere Kunden auf ihr Kerngeschäft konzentrieren und ihre Wettbewerbsvorteile nachhaltig absichern und ausbauen.---- Über unsere IT-Beratung: http://www.opitz-consulting.com/go/3-8-10 ---- Unser Leistungsangebot: http://www.opitz-consulting.com/go/3-8-874 ---- Karriere bei OPITZ CONSULTING: http://www.opitz-consulting.com/go/3-8-5
Docker und Kubernetes Patterns & Anti-PatternsQAware GmbH
JavaLand 2018, Brühl: Vortrag von Josef Adersberger (@adersberger, CTO bei QAware).
Abstract:
Kubernetes und Docker sind trotz des hohen Verbreitungsgrads noch relativ junge Technologien. Viele Menschen machen gerade gute und teilweise auch schmerzliche Erfahrungen mit beiden. Der Vortrag bietet einen Katalog an Patterns und Antipatterns bei der Entwicklung von Anwendungen auf Basis Kubernetes und Docker. Der Katalog repräsentiert dabei die Erfahrung aus mehreren Industrieprojekten, die es bis in Produktion geschafft haben.
Es geht darum, was man bei Docker-Files und Kubernetes-Deskriptoren richtig und falsch machen kann; welche Architekturbausteine man einsetzen sollte; wie die Continuous Delivery Pipeline gestaltet werden sollte und wie Anwendungen auf Cloud-Native-Plattformen gut betreibbar und diagnostizierbar gemacht werden können.
docker.io @ CentOS 7 - Secure And Portable Containers Made Easyinovex GmbH
The speaker Jürgen Brunks works for inovex GmbH as a senior linux systems engineer and designs, optimises and deploys highly scalable, automated linux environments for customers. For over 20 years he has been professionally with Unix/Linux and open source and could through numerous projects gained extensive practical experience. His duties include the design, construction and operation of systems. His focus is here in the Automation and Virtualization of highly available and highly scalable infrastructures.
Container Services mit Docker
Deutsch/Englische Folien. Es gibt eine deutsche Video Aufzeichnung des Talks unter https://entropia.de/GPN15:Docker
----
Container services with Docker
German/English slides. There is a german recording to this talk at https://entropia.de/GPN15:Docker
http://www.opitz-consulting.com/go/3-6-11 --- Softwareentwicklung, -test und -betrieb können durch Virtualisierung viele Vorteile erzielen. In diesem Zusammenhang werden häufig Werkzeuge für die Bereitstellung von Umgebungen eingesetzt. Verschiedene Werkzeuge adressieren aber unterschiedliche Einsatzszenarien. Wo im Applikationslebenszyklus können diese Werkzeuge sinnvoll eingesetzt werden und wie sieht es mit Kosten und Nutzen aus? ---- Unser Senior Software Architect Richard Attermeyer stellte bei der W Jax am 5.11.2014 in München die Tools Vagrant, Puppet und Docker im Einzelnen vor und erläuterte ihren Nutzen anhand von Use Cases und Live Demos. ---- Weitere Infos: https://jax.de/wjax2014/sessions/vagrant-puppet-docker-fuer-entwickler-und-architekten ---- Über uns: Als führender Projektspezialist für ganzheitliche IT-Lösungen tragen wir zur Wertsteigerung der Organisationen unserer Kunden bei und bringen IT und Business in Einklang. Mit OPITZ CONSULTING als zuverlässigem Partner können sich unsere Kunden auf ihr Kerngeschäft konzentrieren und ihre Wettbewerbsvorteile nachhaltig absichern und ausbauen.---- Über unsere IT-Beratung: http://www.opitz-consulting.com/go/3-8-10 ---- Unser Leistungsangebot: http://www.opitz-consulting.com/go/3-8-874 ---- Karriere bei OPITZ CONSULTING: http://www.opitz-consulting.com/go/3-8-5
Docker und Kubernetes Patterns & Anti-PatternsQAware GmbH
JavaLand 2018, Brühl: Vortrag von Josef Adersberger (@adersberger, CTO bei QAware).
Abstract:
Kubernetes und Docker sind trotz des hohen Verbreitungsgrads noch relativ junge Technologien. Viele Menschen machen gerade gute und teilweise auch schmerzliche Erfahrungen mit beiden. Der Vortrag bietet einen Katalog an Patterns und Antipatterns bei der Entwicklung von Anwendungen auf Basis Kubernetes und Docker. Der Katalog repräsentiert dabei die Erfahrung aus mehreren Industrieprojekten, die es bis in Produktion geschafft haben.
Es geht darum, was man bei Docker-Files und Kubernetes-Deskriptoren richtig und falsch machen kann; welche Architekturbausteine man einsetzen sollte; wie die Continuous Delivery Pipeline gestaltet werden sollte und wie Anwendungen auf Cloud-Native-Plattformen gut betreibbar und diagnostizierbar gemacht werden können.
docker.io @ CentOS 7 - Secure And Portable Containers Made Easyinovex GmbH
The speaker Jürgen Brunks works for inovex GmbH as a senior linux systems engineer and designs, optimises and deploys highly scalable, automated linux environments for customers. For over 20 years he has been professionally with Unix/Linux and open source and could through numerous projects gained extensive practical experience. His duties include the design, construction and operation of systems. His focus is here in the Automation and Virtualization of highly available and highly scalable infrastructures.
Container Services mit Docker
Deutsch/Englische Folien. Es gibt eine deutsche Video Aufzeichnung des Talks unter https://entropia.de/GPN15:Docker
----
Container services with Docker
German/English slides. There is a german recording to this talk at https://entropia.de/GPN15:Docker
Presentation on WebLogic Basics and how to run WebLogic 12.2.1 in Docker Container. Live-Demo included. Talk was given at DOAG 2015 in Nürnberg, Germany.
Slides for the talk I gave at PiAndMore 2016 in Trier.
Are Docker and Raspberry Pi a dream team? Yes indeed.
---
Images courtesy of
https://www.flickr.com/photos/nizz7/
https://www.flickr.com/photos/wbur/
https://www.flickr.com/photos/fdecomite/
https://www.flickr.com/photos/jmverco/
https://www.flickr.com/photos/wenzday01/
https://www.flickr.com/photos/45131642@N00/
Provisionierung von Dockerhosts und -Containern mit Terraform, Ansible und LXD auf Blech und Cloud
Lästige und aufwändige manuelle Serverinstallation kann auf einfache Art durch automatisierte Provisionierung und Konfiguration der Infrastruktur ersetzt werden. Dieser Vortrag zeigt einen Ansatz, bei dem die Definition der Infrastruktur in voll maschinenlesbarer und ausführbarer Form in einem git repo anstatt in den Köpfen der (oder des) Engineers vorhanden sind.
Es wird gezeigt, wie das Verfahren sowohl auf Blech (d.h. auf lokalen physischen Maschinen) als auch in der Cloud angewendet werden kann, und somit eine grosse Übereinstimmung zwischen Test-/Integrations- und Produktionsinfrastruktur erreicht wird.
Die vorgestellten Werkzeuge sind terraform und ansible für Provisionierung und Konfigurationsmanagement, sowie lxd (nur lokal) und docker für System- und Applikationscontainer. Die vollständige Codebasis ist auf github verfügbar, so dass alle TeilnehmerInnen auch sofort mit eigenen Experimenten loslegen können.
OpenShift-Build-Pipelines: Build ► Test ► Run!Tobias Schneck
GitHub Repo: https://github.com/toschneck/openshift-example-bakery-ci-pipeline
Stabile und skalierbare Continuous-Integration-Umgebungen sind seit jeher schwer aufzusetzen und zu pflegen. Besonders in Zeiten von Containern und Cloud-Native-Apps, wird der nächste Schritt hin zur voll-automatisierten Build-Pipeline eingefordert. Sowohl der Aufbau des automatisierten Deployments als auch die Ausführung von automatisierten Integration- und UI-Tests stellen die DevOps-Teams vor neue Hürden. Einen eleganten Ausweg bieten Container-basierte CI/CD-Umgebungen, die dynamisch zum Build-Zeitpunkt bereitgestellt werden. An diesen Punkt setzt die Open-Source-Container-Plattform "OpenShift" an. Durch den Infrastructure-as-Code-Ansatz wird sowohl der CI-Server als auch der komplette Build-Lifecycle vom Bau der Artefakte bis zum Testen der Anwendung in den Container-Cluster verschoben.
Der Talk zeigt auf wo die Unterschiede von OpenShift zur Kubernetes-API liegen, wie durch Jenkins-Build-Pipelines Artefakte gebaut, in Docker Images verpackt, getestet und deployed werden können. In mehreren Live-Demos wird aufgezeigt, wie mit geschickten Einsatz von Open-Source-Tools sowohl Server-APIs als auch grafische Web- und Rich-Client-Oberflächen in Container-Clustern als Black-Box getestet werden können. Eine abschließende, kritische Bewertung der gesammelten Erfahrungen, zeigt wo das Potenzial dieses Ansatz liegt, aber auch welche Fallstricke derzeit (noch) zu meistern sind.
Continuous Delivery für Cloud-native Anwendungen auf Cloud-nativer InfrastrukturQAware GmbH
JAX 2017, Mainz: Vortrag von Josef Fuchshuber (@fuchshuber, Cheftechnologe bei QAware) und Tobias Placht (@knacht, Software Ingenieur bei QAware).
Abstract: Wie oft kannst du ein neues Feature releasen? Jede Woche? Jeden Tag? Jede Stunde? Continuous Delivery ist einer der wesentlichen Treiber, warum wir Cloud-native Anwendung bauen. Für Software-driven Organisationen ist das der Schlüssel für eine sicherere, stabilere Software bei minimiertem Risiko und kurzen Feedbackschleifen. Die Herausforderung dabei ist, aus jeder Codeänderung möglichst schnell eine lauffähige und gründlich getestete Software zu machen. Das ist für viele Firmen ein wesentlicher Wettbewerbsvorteil. Wir zeigen in diesem Vortrag eine Werkzeugkette, mit der Continuous Delivery nicht nur für Cloud-native Anwendungen, sondern auch auf Cloud-nativer Infrastruktur möglich ist. Ganz im Gedanken von „Everything is Code“ betrachten wir dabei nicht nur das Bauen und Testen von Software, sondern auch die Automatisierung der Infrastrukturbereitstellung, der Deployments und Roll-outs. Dabei treffen alte Bekannte (z.B. Jenkins, SonarQube) auf Cloud-Computing-Technologien wie z.B. Docker für Betriebssystemvirtualisierung und DC/OS für das Clustermanagement.
SLAC 2009 - Disaster Recovery und P2V-Migrationen mit Relax and Recover (ReaR)Schlomo Schapiro
Es ist nur in bash programmiert -- aber ReaR ("Relax and Recover") hält, was der Name verspricht: Auf Knopfdruck recovert das über CD, USB-Stick oder PXE-Bootimage bereitgestellte Rescue-System einen einmal gebackupten Orginalserver -- vollautomatisch, von A bis Z. Auch schwierige Konfigurationen wie Software-RAID, LVM-Systeme, ausgefallene Dateisysteme, Netzwerkbondings und andere Konstellationen erledigt ReaR im Handumdrehen. Am Ende bootet der restaurierte Server, als ob nichts gewesen wäre.
Doch wer sagt denn, dass ein Recovery immer auf vergleichbarer Hardware stattfinden muss? Die von Heinlein Support erstellten neuesten Versionen von ReaR können das Recovery auch bei geänderter Hardware durchführen. Echte udev-Unterstützung macht's möglich: Geänderte Festplattencontroller und Netzwerkinterfaces werden erkannt, die notwendigen Treiber geladen und die entscheidenden Änderungen an der initrd werden automatisch vorgenommen.
Damit kann ReaR auch als universelles Migrationstool genutzt werden, um physikalische Server zu virtualisieren (P2V). Auf Knopfdruck ziehen Server in eine VMware-Umgebung um -- im Idealfall vollautomatisch ohne Interaktion mit dem Administrator. Nach wenigen Minuten Ausfallzeit ist die Migration durchgeführt.
Doch nicht nur das: Selbst der Weg von Vmware zurück auf einen physikalischen Server ist möglich -- oder der Wechsel von einer Virtualisierungslösung hin zu einer anderen.
Und wenn als nächstes Feature auch Größenanpassungen in Partitionstabellen möglich werden, macht das ganze noch einmal doppelt Spaß.
Die DevOps-Bewegung - Einführung und Überblick
OOP 2012, 24.01.2012
Uhrzeit: 14:00 - 14:45
Sprecher: Udo Pracht
Die Bereiche Software-Entwicklung und IT-Betrieb in größeren Unternehmen haben meist eine sehr verschiedene Vorstellung davon, wie selbstentwickelte Anwendungen produktiv genommen und betreut werden. Diese unterschiedliche Zielsetzung führt zu geschäftsrelevanten Verzögerungen, Behinderungen oder gar Ausfällen. Um das Problem zu lösen, will DevOps die Zusammenarbeit von Entwicklern und Administratoren agil gestalten, deren Umgang miteinander verbessern.
Der Vortrag stellt den Ansatz und aktuellen Stand des Themas im Überblick vor.
Presentation on WebLogic Basics and how to run WebLogic 12.2.1 in Docker Container. Live-Demo included. Talk was given at DOAG 2015 in Nürnberg, Germany.
Slides for the talk I gave at PiAndMore 2016 in Trier.
Are Docker and Raspberry Pi a dream team? Yes indeed.
---
Images courtesy of
https://www.flickr.com/photos/nizz7/
https://www.flickr.com/photos/wbur/
https://www.flickr.com/photos/fdecomite/
https://www.flickr.com/photos/jmverco/
https://www.flickr.com/photos/wenzday01/
https://www.flickr.com/photos/45131642@N00/
Provisionierung von Dockerhosts und -Containern mit Terraform, Ansible und LXD auf Blech und Cloud
Lästige und aufwändige manuelle Serverinstallation kann auf einfache Art durch automatisierte Provisionierung und Konfiguration der Infrastruktur ersetzt werden. Dieser Vortrag zeigt einen Ansatz, bei dem die Definition der Infrastruktur in voll maschinenlesbarer und ausführbarer Form in einem git repo anstatt in den Köpfen der (oder des) Engineers vorhanden sind.
Es wird gezeigt, wie das Verfahren sowohl auf Blech (d.h. auf lokalen physischen Maschinen) als auch in der Cloud angewendet werden kann, und somit eine grosse Übereinstimmung zwischen Test-/Integrations- und Produktionsinfrastruktur erreicht wird.
Die vorgestellten Werkzeuge sind terraform und ansible für Provisionierung und Konfigurationsmanagement, sowie lxd (nur lokal) und docker für System- und Applikationscontainer. Die vollständige Codebasis ist auf github verfügbar, so dass alle TeilnehmerInnen auch sofort mit eigenen Experimenten loslegen können.
OpenShift-Build-Pipelines: Build ► Test ► Run!Tobias Schneck
GitHub Repo: https://github.com/toschneck/openshift-example-bakery-ci-pipeline
Stabile und skalierbare Continuous-Integration-Umgebungen sind seit jeher schwer aufzusetzen und zu pflegen. Besonders in Zeiten von Containern und Cloud-Native-Apps, wird der nächste Schritt hin zur voll-automatisierten Build-Pipeline eingefordert. Sowohl der Aufbau des automatisierten Deployments als auch die Ausführung von automatisierten Integration- und UI-Tests stellen die DevOps-Teams vor neue Hürden. Einen eleganten Ausweg bieten Container-basierte CI/CD-Umgebungen, die dynamisch zum Build-Zeitpunkt bereitgestellt werden. An diesen Punkt setzt die Open-Source-Container-Plattform "OpenShift" an. Durch den Infrastructure-as-Code-Ansatz wird sowohl der CI-Server als auch der komplette Build-Lifecycle vom Bau der Artefakte bis zum Testen der Anwendung in den Container-Cluster verschoben.
Der Talk zeigt auf wo die Unterschiede von OpenShift zur Kubernetes-API liegen, wie durch Jenkins-Build-Pipelines Artefakte gebaut, in Docker Images verpackt, getestet und deployed werden können. In mehreren Live-Demos wird aufgezeigt, wie mit geschickten Einsatz von Open-Source-Tools sowohl Server-APIs als auch grafische Web- und Rich-Client-Oberflächen in Container-Clustern als Black-Box getestet werden können. Eine abschließende, kritische Bewertung der gesammelten Erfahrungen, zeigt wo das Potenzial dieses Ansatz liegt, aber auch welche Fallstricke derzeit (noch) zu meistern sind.
Continuous Delivery für Cloud-native Anwendungen auf Cloud-nativer InfrastrukturQAware GmbH
JAX 2017, Mainz: Vortrag von Josef Fuchshuber (@fuchshuber, Cheftechnologe bei QAware) und Tobias Placht (@knacht, Software Ingenieur bei QAware).
Abstract: Wie oft kannst du ein neues Feature releasen? Jede Woche? Jeden Tag? Jede Stunde? Continuous Delivery ist einer der wesentlichen Treiber, warum wir Cloud-native Anwendung bauen. Für Software-driven Organisationen ist das der Schlüssel für eine sicherere, stabilere Software bei minimiertem Risiko und kurzen Feedbackschleifen. Die Herausforderung dabei ist, aus jeder Codeänderung möglichst schnell eine lauffähige und gründlich getestete Software zu machen. Das ist für viele Firmen ein wesentlicher Wettbewerbsvorteil. Wir zeigen in diesem Vortrag eine Werkzeugkette, mit der Continuous Delivery nicht nur für Cloud-native Anwendungen, sondern auch auf Cloud-nativer Infrastruktur möglich ist. Ganz im Gedanken von „Everything is Code“ betrachten wir dabei nicht nur das Bauen und Testen von Software, sondern auch die Automatisierung der Infrastrukturbereitstellung, der Deployments und Roll-outs. Dabei treffen alte Bekannte (z.B. Jenkins, SonarQube) auf Cloud-Computing-Technologien wie z.B. Docker für Betriebssystemvirtualisierung und DC/OS für das Clustermanagement.
SLAC 2009 - Disaster Recovery und P2V-Migrationen mit Relax and Recover (ReaR)Schlomo Schapiro
Es ist nur in bash programmiert -- aber ReaR ("Relax and Recover") hält, was der Name verspricht: Auf Knopfdruck recovert das über CD, USB-Stick oder PXE-Bootimage bereitgestellte Rescue-System einen einmal gebackupten Orginalserver -- vollautomatisch, von A bis Z. Auch schwierige Konfigurationen wie Software-RAID, LVM-Systeme, ausgefallene Dateisysteme, Netzwerkbondings und andere Konstellationen erledigt ReaR im Handumdrehen. Am Ende bootet der restaurierte Server, als ob nichts gewesen wäre.
Doch wer sagt denn, dass ein Recovery immer auf vergleichbarer Hardware stattfinden muss? Die von Heinlein Support erstellten neuesten Versionen von ReaR können das Recovery auch bei geänderter Hardware durchführen. Echte udev-Unterstützung macht's möglich: Geänderte Festplattencontroller und Netzwerkinterfaces werden erkannt, die notwendigen Treiber geladen und die entscheidenden Änderungen an der initrd werden automatisch vorgenommen.
Damit kann ReaR auch als universelles Migrationstool genutzt werden, um physikalische Server zu virtualisieren (P2V). Auf Knopfdruck ziehen Server in eine VMware-Umgebung um -- im Idealfall vollautomatisch ohne Interaktion mit dem Administrator. Nach wenigen Minuten Ausfallzeit ist die Migration durchgeführt.
Doch nicht nur das: Selbst der Weg von Vmware zurück auf einen physikalischen Server ist möglich -- oder der Wechsel von einer Virtualisierungslösung hin zu einer anderen.
Und wenn als nächstes Feature auch Größenanpassungen in Partitionstabellen möglich werden, macht das ganze noch einmal doppelt Spaß.
Die DevOps-Bewegung - Einführung und Überblick
OOP 2012, 24.01.2012
Uhrzeit: 14:00 - 14:45
Sprecher: Udo Pracht
Die Bereiche Software-Entwicklung und IT-Betrieb in größeren Unternehmen haben meist eine sehr verschiedene Vorstellung davon, wie selbstentwickelte Anwendungen produktiv genommen und betreut werden. Diese unterschiedliche Zielsetzung führt zu geschäftsrelevanten Verzögerungen, Behinderungen oder gar Ausfällen. Um das Problem zu lösen, will DevOps die Zusammenarbeit von Entwicklern und Administratoren agil gestalten, deren Umgang miteinander verbessern.
Der Vortrag stellt den Ansatz und aktuellen Stand des Themas im Überblick vor.
Using Rancher and Docker with RightScale at Industrie IT RightScale
Many early Docker users are also now looking at clustering solutions such as Rancher. Industrie IT is using Docker, Rancher, and RightScale to help clients build digital applications using continuous integration (CI) and continuous delivery (CD) practices.
Preparing your dockerised application for production deploymentDave Ward
You’ve got your application dockerised for development. That process is working smoothly, and you’re gaining a lot of the benefits that docker gives you - environments are trivial to setup, independent of platform, and they are consistent for everyone on your team.
How do you go about taking the next step so that your application is deployed into a scalable and reliable production setup?
How do you create deployment artefacts which are built with consistency and transparency? How do you manage environment variables between staging and production environments? How do you perform actions / schedule processes in one environment and not another?
In this talk we will discuss what you need to do to get your dockerised application ready for deployment into a production environment.
Unter http://www.youtube.com/watch?v=8fATk1esGj4 gibt es den Vortrag auch als Film.
Während sich agile Verfahren in der Entwicklung immer mehr durchsetzen, fehlt es im IT-Betrieb häufig noch an der Akzeptanz und Implementierung agiler Prozesse. Die Folge: eine Kluft zwischen Entwicklern und Administratoren.
DevOps ist eine IT-Bewegung, die es sich zur Aufgabe macht, ein Umdenken in den Lagern der Entwicklung (Development) und des IT-Betriebs (Operations) zu bewirken. Ziel ist es:
bei Entwicklern und Administratoren ein Bewusstsein für die übergeordneten, gemeinsamen Ziele zu wecken (auch wenn sich individuelle Teilziele und Anforderungen der zwei Bereiche zumindest auf den ersten Blick zu unterscheiden scheinen).
Lösungen zu entwickeln, mit denen die Zusammenarbeit zwischen Entwicklern und Administratoren optimiert werden kann und die zentralen Grundsätze agiler Methoden auch auf den Betrieb ausgedehnt werden können.
Schlomo Schapiro, Systemarchitekt und Open-Source-Evangelist bei ImmobilienScout24, gibt eine Einführung in das Thema und berichtet über die DevOps-Erfolge bei ImmobilienScout24. Nach 2 Jahren agilem Umdenken in der Entwicklung hat sich gezeigt, dass die klassische Gewaltenteilung Plan - Build - Run nicht mehr praktikabel ist, weil sich die Anforderungen und Erwartungen sowohl in der Entwicklung als auch im Betrieb kontinuierlich ändern und neue Formen der Zusammenarbeit erfordern.
Zielgruppe des TechTalks sind Mitarbeiter und Führungskräfte aus IT- und Web-Unternehmen, die sich für agile Arbeitsweisen und crossfunktionale Teams interessieren. Der Vortrag dreht sich weniger um technische Errungenschaften (die hier eher als konkretes Beispiel dienen), sondern vielmehr um die Art und Weise, wie die DevOps-Idee ein Unternehmen weiterentwickeln kann und dabei alle Mitarbeiter aus der IT und darüber hinaus mitnehmen kann.
DevOps fordert die Anwendung agiler Methoden und Konzepte des Software-Managements für die IT Operations. Was das bedeutet, erfahren Sie hier!
Eine Revolution findet zurzeit in den Anwendungsentwicklungs-Abteilungen statt: Agile Entwicklungs- und Projektmanagement-Ansätze ersetzen schwerfällige Wasserfall-Methoden und versprechen rasche Auslieferung von neuer Funktionalität mit besserer Qualität.
Doch dies kann nur eine Seite der Medaille sein: Der IT-Betrieb muss genauso in der Lage sein, den sehr viel höheren Rhythmus an Changes und Releases bewältigen zu können. Die Antwort darauf: DevOps!
In dieser Präsentation erhalten Sie eine Übersicht über die neusten Trends im IT-Betrieb und wie man neu (DevOps) mit alt (ITIL) verbindet und Hype vn der Realität unterscheidet.
Einblick in die Intranet Transformation bei Swisscom AGThomas Maeder
Einblick in die Intranet Transformation bei Swisscom AG. Diese Präsentation zeigt am Fall von Swisscom AG auf, wie sich das Corporate Intranet schrittweise in ein Digital Workplace bzw. modernes Mitarbeiterportal verwandelt und dabei Social Features nutzt.
Konferenz "IntraNET-Tag", Frankfurt, 27.03.2014
Container Tag – Nie mehr warten auf die IT! - Tag Management LösungConnected-Blog
Email-Expo 2012
DC Storm Deutschland GmbH
Das Blog der Messe Frankfurt zur Digitalisierung des Geschäftslebens:
http://connected.messefrankfurt.com/de/
Make Developers Fly: Principles for Platform EngineeringQAware GmbH
CloudLand 2023, Juni 2023, Robert Hoffmann (Amazon Web Services) & Alex Krause (QAware)
How can your company help developers to fly, but not crash down? The answer is platform engineering, which is the discipline of building and operating self-service internal developer platforms (IDPs) to simplify software delivery and life cycle management for product teams. In this talk, you will learn how platform engineering evolved from the DevOps movement and what principles and best practices make a good implementation. Finally, we take a look at reference architectures that can power your platform.
Einführung in Vagrant und wie es als lokale Entwicklungsumgebung verwendet werden kann.
Präsentation von März 2015.
Themen: Vagrant CLI, vagrant share, Provider, Boxes, Provisioning, Netzwerk, Synced Folders, Multi-Maschine Setup, Vergleich mit Docker
Vortrag auf dem TYPO3 Meetup 3 am 13.11.2017 bei sitegeist
über Docker Umgebungen für TYPO3 zu Präsentationszwecken und als Entwicklungsumgebung mit xdebug.
Kuck mal, Node.js! Einstieg für .NET Entwickler mit Visual Studio Code und Ty...Gregor Biswanger
Das Jahr 2009 war die Geburtsstunde von Node.js. Dass hierbei JavaScript ebenfalls serverseitig verwendet werden kann, ist nur ein Teilaspekt für den hohen Erfolg. Viel relevanter ist die extrem hohe Performance, Skalierbarkeit und Produktivität. Nicht ohne Grund wird ASP.NET komplett neu erfunden und basiert auf den gleichen Ideen wie Node.js. Namenhafte Firmen wie Microsoft selbst, Google, PayPal, New York Times, GitHub, uvw. setzen bereits auf das leistungsstarke Node.js. Der Vortrag zeigt durch eine Reise der Node.js Architektur, woher die Vorteile kommen. Durch einen Vergleich von ähnlichen Funktionen, wird zudem der ideale Einstieg für .NET Entwickler geboten.
Kubernetes und Docker sind trotz des hohen Verbreitungsgrads noch relativ junge Technologien. Viele Menschen machen gerade gute und teilweise auch schmerzliche Erfahrungen mit beiden. Der Vortrag bietet einen Katalog an Patterns und Antipatterns bei der Entwicklung von Anwendungen auf Basis Kubernetes und Docker. Der Katalog repräsentiert dabei die Erfahrung aus mehreren Industrieprojekten, die es bis in Produktion geschafft haben.
Es geht darum, was man bei Docker-Files und Kubernetes-Deskriptoren richtig und falsch machen kann; welche Architekturbausteine man einsetzen sollte; wie die Continuous Delivery Pipeline gestaltet werden sollte und wie Anwendungen auf Cloud-Native-Plattformen gut betreibbar und diagnostizierbar gemacht werden können.
Seit der Version 6.5, die Ende 2008 erschienen ist, unterstützt die
NetBeans IDE nun neben Java, C++ und vielen weiteren Programmiersprachen auch PHP. Die in Java geschriebene Entwicklungsumgebung läuft auf jedem Rechner der das Java Runtime Environment (JRE) installiert hat und spricht somit alle
PHP Entwickler an – egal auf welcher Plattform sie zu hause sind.
Wir werden uns NetBeans aus dem Blickwinkel eines PHP-Entwicklers nähern und zeigen wie Projekte angelegt und verwaltet werden.
Mit welchen Funktionen uns NetBeans beim Code schreiben assistiert und die Zusammenarbeit im Team erleichtert. Gibt es Funktionen zum Debuggen und Dokumentieren? Gerade die neuen Features der Entwicklungsversion sind einen zweiten Blick wert!
BASTA Spring 2016: Test- und Releaseumgebungen der nächsten Generation mit TF...Marc Müller
Test- und Produktionsumgebungen gehören zum täglich Brot von Entwicklungs-, Test- und Adminteams. In der Praxis sieht man dabei sehr oft das Phänomen, dass die diversen Umgebungen immer wieder von den Beteiligten händisch angelegt und gepflegt werden. In modernen DevOps-Prozessen ist dieses Vorgehen nicht mehr zeitgemäß. Im Vortrag soll vorgestellt werden, wie Umgebungen mit modernen Deployment- und Verwaltungskonzepten automatisiert werden können. Die Grenze ist dabei nicht beim reinen Anlegen und Verwalten zu sehen, sondern umfasst auch die Anbindung und Integration an die Entwicklungs- und Testinfrastruktur (TFS-Build- und Release-Management). Als Beispiele werden exemplarisch Szenarien auf Basis von modernen Containertechnologien (Docker, Windows-Container) sowie Azure-Technologien wie Azure Dev/Test gezeigt. Unter Berücksichtigung der Szenarien werden die jeweiligen kontextbezogenen Vor-/Nachteile betrachtet und bewertet.
Make Developers Fly: Principles for Platform EngineeringQAware GmbH
Make Developers Fly – Helping developers to build better applications
Cloud Native Night, Mainz, November 2023, Alex Krause
Platform Engineering is the next stage of DevOps and accelerates software developers even more to build applications faster and bring products rapidly to the customers. In this meetup, we show you the key principles of platform engineering, as we experienced them in our projects, and additionally show you a better way to manage your internal software platforms.
PRINCIPLES FOR PLATFORM ENGINEERING, Alex Krause
How do we help our developers to fly instead of crashing miserablely? The answer is Platform Engineering, a discipline for building internal developer platforms (IDPs) to simplify software delivery for product teams. In this talk, you'll learn how Platform Engineering evolved from the DevOps movement and what principles and best practices make for a good implementation. Finally, we'll take a look at reference architectures that can support your platform.
Azure Days 2019: Master the Move to Azure (Konrad Brunner)Trivadis
Die Azure Cloud hat sich in den letzten 10 Jahren etabliert und steht heute sowohl global, als auch lokal zur Verfügung,
der Schritt in die Cloud muss aber gut geplant werden. In diesem Talk teilen wir unsere Erfahrungen aus diversen Projekten mit Ihnen. Wir zeigen, worauf Sie besonders achten müssen, damit Ihr Wechsel in die Cloud ein Erfolg wird.
This presentation will show you how to use docker-compose in a practical example, discuss some alternative approaches and teach best practices (in german).
Wie oft haben Sie schon in Foren gelesen: "Das geht nicht mit Bordmitteln; das muss man mit der C API machen". Schön und gut, aber wie geht das? Welche Tools benötige ich, und wo bekomme ich diese her? Die Session gibt einen Überblick über die Anwendungsgebiete der C / C++ API für Lotus Notes / Domino und erläutert die Installation einer Entwicklungsumgebung. Neben der Erstellung von C Programmen wird auch der direkte Aufruf von Funktionen aus Lotusscript heraus erläutert.
Praktische Beispiele sollen dem Entwickler den Einstieg in die Programmierung mit der C / C++ API für Lotus Notes / Domino erleichtern. Level: Einsteiger, die sich auch in Zeiten von XPages, JAVA und SSJS noch an das "Urgestein C" herantrauen.
Verteilte Anwendungen bei Azure mit Docker und KubernetesGregor Biswanger
Kubernetes ermöglicht eine Automatisierung der Bereitstellung, Skalierung und Verwaltung von verteilten Docker-Container. Der Einstieg, die Umsetzung und Wartung hingegen ist eine extreme Herausforderung und kostet am Ende nicht nur viel Geld, sondern auch Ihre Nerven. Microsoft Azure bietet mit den Azure Kubernetes Services (Kurz AKS) die Erlösung, der soeben genannten Schmerzen. In dieser Session zeigt Ihnen der Docker- und Azure-Experte Gregor Biswanger einen Überblick von Kubernetes und wie einfach Azure für uns eine Kuberenetes-Landschaft herbeizaubern kann.
Ähnlich wie Docker Workshop Experten Forum Stuttgart 2015, Agile Methoden GmbH (20)
2. Abstract
DevOps mit Docker - ein Workshop für Softwareentwickler und
Systemadministratoren
Docker zieht seit einiger Zeit viel Aufmerksamkeit auf sich,
hauptsächlich weil es das aktuelle sehr populäre Thema DevOps
adressiert. Bei Docker handelt es sich eine offene Plattform für
Software-Entwickler und Sysadmins, mit der sie Software annähernd
überall bauen, ausliefern und betreiben können. In diesem Workshop
werden Sie lernen wie Software-Container gebaut, ausgeliefert,
konfiguriert und betrieben werden. Der Vortragende wird sie anhand
von praktischen Beispielen an seinen Erfahrungen teilhaben lassen.
3. Christian Noack
Dipl.-Informatiker
Software-Entwicklung seit 1988
Selbstständig seit 2004
Agile Methoden
Projektmanagement
Software-Entwicklung
Gesamter Software-Lifecycle
Banken, Versicherung, Logistik, Gesundheitswesen
www.agile-methoden.de
4. Am Ende der Software-Enwicklung:
Bauen der Software
⟹ Auslieferung
⟹ Systemintegration
⟹ Ausführung
Systemintegration ist ein häufig vernachlässigtes Thema
mit unerwartet hohem Aufwand
Unsere heutige Agenda daher:
5. Am Ende der Software-Enwicklung:
Bauen der Software
⟹ Auslieferung
⟹ Systemintegration
⟹ Ausführung
Systemintegration ist ein häufig vernachlässigtes Thema
mit unerwartet hohem Aufwand
Unsere heutige Agenda daher:
BUILD, SHIP, RUN !
8. Rental King
Herbert Hitzegrad Baumaschinenverleih
10 Mitarbeiter
1 Standort
Windows-PC
Standard-SW
Trailer Rental
Stachoviak
Zick Zack
Maschinenverleih
Fusionierung
200 Mitarbeiter
40 Standorte
Gründung IT-Abteilung
9. Erste Aufgabe der IT
✤ Einführung SAP
✤ Entwicklung einer spezialisierten Software für Verleih/
Vermietung
✤ Systemhaus
10. Erste Aufgabe der IT
✤ Einführung SAP
✤ Entwicklung einer spezialisierten Software für Verleih/
Vermietung
✤ Systemhaus Peek & Poke
11. Software-Entwicklung
✤ non fuctional requirements:
✤ Java, JBoss, SAP-Anbindung, Postgresql
✤ Betrieb im Rechenzentrum „Hans Petersen“
✤ Installation, Wartung, Backup durch HaPe
✤ RHEL, SAP als Service
12. Initialisierung
✤ Neue Funktionalität getrieben durch Fachabteilung
oder Gesetzgeber
✤ Anforderungsanalyse IT/FA
✤ Priorisierung, Festlegung des Umfangs
✤ Festpreisprojekt
✤ Iterative Entwicklung mit Change-Management
13. Implementierung
✤ Test am Ende einer Iteration auf Entwicklungsserver von Peek
& Poke
✤ Debian 7, JBoss 7, Postgresql 9.4, JDK8, SAP-Testserver
✤ Nach 5 Iterationen ⟹ Release
✤ Lieferung von P&P:
✤ War-Files, Jar-Files, Konfigurationsdateien
✤ Migrationsscripts, Installationsanleitung
14. Installation in Abnahmeumgebung
✤ Abnahme bei Rental King
✤ lokaler physischer Server im Intranet
✤ PC, 16 GB, Ubuntu 14.04 LTS
✤ Postgresql 9.3, JDK 7, JBoss 6
✤ Manuelle Installation:
✤ Kopieren, Stoppen, Starten, Konfigurationsdateien anpassen
✤ Files löschen, sichern usw. einige manuelle Anpassungen wg.
Versionsinkompabilitäten
✤ Test & Abnahme durch Fachabteilung
15. Installation in
Produktionsumgebung
✤ Übertragung: war, jar, Config-Files, Migrationsscripts, modif.
Installationsdateien
✤ Manuelle Installation im RZ durch Mitarbeiter von HaPe
✤ Zielumgebung:
✤ REHL 7, JBoss 6, JDK 7, Postgresql 9.2, SAP as a Service
✤ Einige Probleme bei Installation, manuelle Korrekturen
✤ Test durch IT v. Rental King ⟹ Freigabe
✤ Online Schaltung durch HaPe
16. Weiterentwicklung
✤ Erweiterungen
✤ Neue Online-Angebote für Kunden
✤ Internes PM & Ticketing-System (Redmine)
✤ ….
✤ Teilweise entwickelt durch Peek & Poke
✤ Teilweise Open-Source
✤ Umzug in neues Rechenzentrum
17. Probleme
✤ umgebungsspez. Konfigurationen
✤ Probleme bei Deployment d. Java-Anwendungen
✤ OutOfMemory, HeapSpace, Rechte, Systemabhängigkeiten, fehlende
Bibliotheken, falsche Java-Version
✤ Eingriffe durch das RZ notwendig
✤ Rollback ≙ Neuauslieferung
✤ Unterschiedliche Installationsprozesse für verschiedene Anwendungen
(Java, RoR, …)
✤ Umzug auf neuen Server bedeutet Neuinstallation
20. „Die Systemintegration wird häufig völlig unterschätzt.“
Ursache ist die starke Trennung zwischen
Software-Entwicklung und Betrieb
Thema gewinnt in letzter Zeit deutlich an Interesse
21. „Die Systemintegration wird häufig völlig unterschätzt.“
Ursache ist die starke Trennung zwischen
Software-Entwicklung und Betrieb
Thema gewinnt in letzter Zeit deutlich an Interesse
DevOps
22. Alternative: Scripting
✤ Umgebungsspez. Scripts für autom. Installation
✤ Wo werden Scripts getestet?
✤ Scripts unterliegen kontinuierliche Anpassung
✤ Nicht trivial
✤ Nur umgebungsspezifische Reproduzierbarkeit
24. Wie kam es dazu?
✤ 1995: Konrad Zuse trifft Bill Gates auf der CeBit
✤ Zuse: Rechner über Funktion aus, Software beschreibt
Funktion. Software alleine wertlos
✤ Gates erkennt Wert von Software unabhängig von Hardware
✤ Gates betrachtet Trennung aber vor allem
betriebswirtschaftl.
✤ Techn. besteht Abhängigkeit (Intel-Prozessoren)
25. Entkopplung Software/Hardware
✤ In der Software-Entwicklung Trennung von
Applikationscode und Hardware durch virtualisierte
Ausführungsumgebung für Bytecode (Smalltalk-80,
Java 1995)
✤ Bytecode ist HW-unabhängig
✤ VM ist Prozessor und OS-spezifisch
✤ Portable Software
26. Web 2.0
✤ 2000er: Google, Facebook, Amazon (RZ, Cloud-
Services, Kindle)
✤ SW übt Funktion aus, HW annähernd beliebig
✤ HW durch Virtualisierung vollständig abstrahiert
✤ Verwendung von eigenen Virtualisierungstechniken
✤ Linux Kernel LXC
27. Entwicklung vs. Betrieb
✤ Entwicklung immer öfter virtualisiert
✤ Virtual Box, Vagrant …
✤ Betrieb i.d.R. in traditioneller Infrastruktur
✤ Standardisierten Virtualisierungsverfahren erst am Anfang
✤ Ausnahme:
✤ RZ für Privatkunden und kleinere Unternehmen (HostEurope,
Strato, Hetzer)
✤ Spezialisierte RZ (Heruko)
29. Beispiel
✤ Einführung eines Redmine-Systems bei Rental King
✤ Dazu brauchen wir:
✤ Redmine
✤ Postgresql-Datenbank
✤ Anbindung an vorhandenen SMTP-Server
31. Kapselung
✤ Redmine und Postgresql soweit kapseln, dass bereits
bei Entwicklung alles enthalten ist, was später in der
Produktion gebraucht wird
✤ bis auf: vorhandene Infrastrukturkomponenten:
✤ SMTP-Server
✤ Storage (NAS/SAN)
33. Minimale Vorraussetzungen an
Ausführungsumgebung
✤ Linux-Kernel > 3.x
✤ Docker-Installation > 1.5
✤ Minimales OS (CoreOs, TinyOs) oder vollständiges OS
(Ubuntu, Debian, RedHat …)
✤ Nicht benötigt:
✤ spezielle Bibliotheken/Systemblibliotheken
✤ Java-, PHP-, Ruby-Installationen
34. Gewünschte Entkopplung der
Container
✤ Container enthält alles was für Ausführung der
Anwendung benötigt wird
✤ Container können verbunden werden (Link)
✤ Unser Beispiel: 2 Container
35. Gewünschte Entkopplung der
Container
✤ Container enthält alles was für Ausführung der
Anwendung benötigt wird
✤ Container können verbunden werden (Link)
✤ Unser Beispiel: 2 Container
POSTGRESQL REDMINE
45. V4: Volumes
✤ Datenverlust bei Neustart des Containers, weil Daten im Container
✤ Container wächst
✤ Ziel:
✤ Daten im Container sind volatil
✤ Persistente Daten außerhalb des containers
✤ Initialisierung immer automatisch
✤ Start mit -d als Daemon
✤ Definition des VOLUME im Dockerfile
✤ start/stop Daten bleiben erhalten
46. V5: Volumes
✤ Festgelegte Volumes im Host Filesytem
✤ Starten mit -v
✤ Entfernen von Volume aus Dockerfile
✤ Einführung eines Startskripts
✤ Rechte auf Ordner setzen
✤ Daten persistent im Filesystem
47. V6: Volume Container
✤ Volume Container statt direct mounting auf Host FS
✤ Host-FS an Volume Container gebunden
✤ Postgres-Container verwendet Volume-Container
✤ Volume-Container wird nur erzeugt, muss nicht laufen
sudo docker create -v $PGDATA:/var/lib/postgresql/data …
--name docker-volume ubuntu:trusty /bin/true
docker run … volumes-from docker-volume
48. Redmine
Registry
8081
8081
805000
Mac OS X
Git
Safari
Atom
Virtual Box Server (Vagrant)
Postgres Volume
FS
FSConsole
Docker Commands
virtual box internal network
Virtual Box Target (Vagrant)
Volume
Redmine
Postgres
FSConsole
Docker Commands
8082
8081
5555
5555
5432
49. Redmine
Registry
8081
8081
805000
Mac OS X
Git
Safari
Atom
Virtual Box Server (Vagrant)
Postgres Volume
FS
FSConsole
Docker Commands
virtual box internal network
Virtual Box Target (Vagrant)
Volume
Redmine
Postgres
FSConsole
Docker Commands
8082
8081
5555
5555
5432
50. V7: Parameter
✤ Parameter f. Postgres-Container beim Run mitgeben
✤ DB-Password über Kommandozeile abfragen
docker run … -e DB_NAME_VAR='redmine' …
51. V8: Besseres Init-System
✤ Bisher Ubuntu Basis-Image:
✤ Start der Anwendung mit CMD oder ENTRYPOINT
✤ Problem: Ubuntu-Init-System (Upstart) läuft nicht
✤ Kind-Prozesse des CMD werden nicht abgeräumt
✤ Zombie-Prozesse im Container
✤ Probleme beim start/stop
✤ docker stop SIGTERM nur an obersten Prozess
52. V8: Phusion Base-Image
✤ bislang kein syslog und kein cron
✤ Umstellung von Ubuntu auf Phusion
✤ Sauberes Init-System mit SIGTERM-Behandlung
✤ Anpassung Dockerfile
✤ Neues Run-Script
FROM phusion/baseimage:0.9.16
55. Mac OS X
Git
Safari
Atom
Virtual Box Server (Vagrant)
Postgres
Redmine
Registry
Volume
FS
FSConsole
Docker Commands
virtual box internal network
Virtual Box Target (Vagrant)
Volume
Redmine
Postgres
FSConsole
Docker Commands
8082
8081
5555
5555
8081
8081
5432805000
56. Mac OS X
Git
Safari
Atom
Virtual Box Server (Vagrant)
Postgres
Redmine
Registry
Volume
FS
FSConsole
Docker Commands
virtual box internal network
Virtual Box Target (Vagrant)
Volume
Redmine
Postgres
FSConsole
Docker Commands
8082
8081
5555
5555
8081
8081
5432805000
57. Transfer Image in Target Env
✤ Zielumgebung aufbauen: Linux 64 + Docker
✤ Manuelles Kopieren der Images
✤ Anlegen der Startskripts
✤ create volume
✤ start postgres
✤ start redmine
58. Eigene Registry verwenden
✤ Statt DockerHub
✤ Registry aus Basis-Image erstellen und starten
✤ Images pushen
✤ Images auf anderer Maschine (Target) pullen
sudo docker run -d -p 5000:5000 --restart=always
--name registry registry:2
59. sudo docker tag agilemethoden/postgres:v8
localhost:5000/agilemethoden/postgres:v8
sudo docker images
Vorhandenes Image taggen, damit es später in neue Registry
übertragen werden kann:
In neues Registry pushen
sudo docker push localhost:5000/agilemethoden/postgres:v8
sudo docker pull 192.168.50.4:5000/agilemethoden/postgres:v8
Auf anderer Maschine aus dem Registry pullen
60. Mac OS X
Git
Safari
Atom
Virtual Box Server (Vagrant)
Postgres
Redmine
Registry
Volume
FS
FSConsole
Docker Commands
virtual box internal network
Virtual Box Target (Vagrant)
Volume
Redmine
Postgres
FSConsole
Docker Commands
8082
8081
5555
5555
8081
8081
5432805000