Portainer

Übersicht für Docker

Docker ist eine Open Source Lösung, welche eine sehr effiziente und einfache Möglichkeit bietet, deine App als Container problemlos zum Laufen zu bringen bei verschiedenen Umgebungen. Wer mehr über Docker erfahren will, kann den vorherigen Artikel durchlesen. Wir als Netways GmbH arbeiten seit langem mit Docker und bieten Hostings für Ihre gewünschte Umgebung. Als erfolgreiches Beispiel für Docker sind die Apps, die wir durch NWS anbieten.

Eine kleine Wissensrunde über Portainer

Portainer ist ein Container von Docker-Hub, welcher eine Web-Management-Schnittstelle darstellt, die es uns ermöglicht, Docker grafisch zu betreiben.

docker run -d -p 9000:9000 --name=portainer --restart always -v /var/run/docker.sock:/var/run/docker.sock portainer/portainer

Was kann man mit Portainer zaubern ?

  • Container starten, stoppen, killen, neustarten, löschen, addieren etc…
  • Images aufbauen, löschen, an eigens Konto auf Docker Hub oder an selber konfigurierte Registry exportieren und importieren.
  • Services auf einem Cluster “Swarm” als Hochverfügbarkeit hinzufügen oder löschen. Wir werden mehr über Swarm im nächsten Abschnitt erfahren!
  • Stacks addieren und löschen. Stacks sind Gruppen von Services, die mit einander kommunizieren und am Ende eine App liefern wie zum Beispiel wordpress mit Datenbank.
  •  Administrator oder normale User hinzufügen und zu einem bereitgestelltem Team zuweisen.
  • Zugreifen und managen von Docker-Endpoints. Dazu gibt es zwei Möglichkeiten, entweder erstellen Sie eine Gruppe, weisen Docker-Endpoint/s zu ihr zu und geben Zugriffsrechte für Benutzer oder Team/s auf diese Gruppe, oder Sie geben Rechte direkt im Endpoint-Menü für Benutzer oder Team/s für jeden einzigen Docker-Endpoint .
  •  Eigne Registry anbinden und Zugriffe nach Benutzer oder Team vergeben. Allerdings können Sie Ihre Images nicht durchsuchen. Das heißt der Name des Images muss bekannt sein, bevor ein Container gestartet werden kann.
  • Authentifizierung lokal konfigurieren oder vom LDAP Server ziehen.
  • Einen Überblick über die Swarm “Cluster” Umgebung verschaffen z.B wie viel Leistung bietet das Cluster und welche Container laufen auf welcher Docker Engine. Außerdem können Sie die Availability von einer Docker-Instance auf active, pause oder drain setzen. Dies ist sehr hilfreich bei einem Update oder Backup. Bei active ist Docker immer bereit Tasks von einem Service anzunehmen. Bei Pause akzeptiert Docker keine Tasks mehr. Bei drain werden alle Tasks gestoppt und von anderen Nodes im Swarm übernommen.
Portainer kann auch Infos von einem Swarm visualisieren.

Was ist Swarm ?

Swarm oder Cluster entstehen einfach aus Manager/n und Worker/n, auf denen Docker läuft. Das Hauptziel von Swarm ist die Hochverfügbarkeit und Lastverteilung. Manager können alles konfigurieren und  managen, allerdings sind Worker nur dafür da, die Last zu vermindern und Tasks zum laufen zu bringen. Wenn ein Service bei Default auf dem ganzen Swarm verteilt wird,  können Sie entweder im docker-compose.yml einen Key definieren auf welchen Nodes die Services laufen sollen, oder den Service auf dem ganzen Swarm verteilt lassen. Von einem Swarm dürfen maximal (N-1)/2 Manager ausfallen, ansonsten funktioniert kein Swarm-Befehl bis die fehlenden Manager wieder up sind oder ein neuer Cluster erzwungen wird.

docker swarm init --force-new-cluster --advertise-addr "IP-Adresse von manager"

Trotz des neuen Cluster-Aufbaus synchronisieren sich die wieder up Server mit dem Swarm ganz normal. Ich würde gerne ein Beispiel von einer Swarm-Konfiguration von zwei Managern und einem Worker vorstellen.

Wie kann portainer swarm managen ?

Portainer kann andere Manger in Swarm als Endpoint betreiben, wenn ein overlay Network eingerichtet ist, auf dem portainer_agent als Service läuft.

docker network create --driver overlay --attachable portainer_agent_network
docker service create \
--name portainer_agent \
--network portainer_agent_network \
--publish mode=host,target=9001,published=9001 \
-e AGENT_CLUSTER_ADDR=192.168.56.150 \
--mode global \
--mount type=bind,src=//var/run/docker.sock,dst=/var/run/docker.sock \
--mount type=bind,src=//var/lib/docker/volumes,dst=/var/lib/docker/volumes \
portainer/agent

Für jeden neuen Agent muss ein neuer Service auf dem Overlay Netwok zum laufen gebracht werden mit neuem Namen, veröffentlichen Port und Adresse. Ansonsten bekommt man einen Duplikatfehler.

Für Leser, die sich für Portainer begeistert haben, gibt es eine Demo auf http://demo.portainer.io

Benutzername : admin

Passwort : tryportainer

Hinweis: Das Cluster wird alle 15 Minuten zurückgesetzt.

Ich hoffe der Artikel hat Ihnen weiter geholfen 🙂

Afeef Ghannam

Autor: Afeef Ghannam

Afeef macht seit September 2017 eine Ausbildung zum Fachinformatiker für Systemintegration bei NETWAYS. Nachdem der gebürtige Syrer erfolgreich Deutsch gelernt hat, stellt er sich jetzt der Herausforderung Programmiersprache. Neben der IT schätzt er vielfältiges Essen. Sein Motto lautet يد واحدة لا تصفق لوحدها , was so viel bedeutet wie „Eine Hand wird nie allein klatschen“.

NETWAYS stellt sich vor – Afeef Ghannam

This entry is part 1 of 34 in the series Mitarbeitervorstellung

Name: Afeef Ghannam
Alter: 29
Position bei NETWAYS:
Junior Consultant

Ausbildung: Fachinformatiker, Richtung System-Integration
Bei NETWAYS seit: September 2017

Wie bist du zu NETWAYS gekommen und was genau gehört zu Deinem Aufgabenbereich?

Vor dreieinhalb Jahren hatte ich als Syrer die Gelegenheit, mir ein neues Leben in Deutschland aufzubauen. Zunächst habe ich Deutsch gelernt, da Sprache der Schlüssel zu fast allem ist. Im September 2017 habe ich mich dann dazu entschlossen, eine Ausbildung bei NETWAYS als Fachinformatiker, Richtung System-Integration, anzutreten. Wir arbeiten daran, neue Projekte auf den Weg zu bringen und lernen in Schulungen Programme kennen wie beispielsweise Puppet oder Iciniga 2.

Was macht Dir an Deiner Arbeit am meisten Spaß?

Meiner Meinung nach gibt es im Leben immer wieder neue Herausforderungen, aktuell etwa das Lernen der Programmiersprache. Die Umgebung spielt eine große Rolle, wenn es darum geht, diese zu meistern. Bei NETWAYS motivieren mich das lockere Ambiente und die ständige Unterstützung meiner Kollegen. Sie motivieren mich, Gas zu geben und nie aufzugeben.

Welche größeren, besonders interessanten Projekte stehen künftig an?

Wir konfigurieren derzeit eine Box. Die ist wie ein kleiner Computer, auf dem ein Linux-Betriebssystem läuft, das mit Web Admin zu betreiben ist. Auf dieser Box soll auch Icinga zum Laufen gebracht werden, um Server zu überwachen. Wir sind gerade mittendrin in diesem Projekt und ich bin sehr gespannt, wie es weiter geht.

Was machst Du, wenn Du mal nicht bei NETWAYS bist?

Neben der IT schätze ich vielfältiges Essen. Ich mag es sehr gern, gemeinsam zu kochen. Mein Motto ist يد واحدة لا تصفق لوحدها. Wörtlich übersetzt heißt das: „Eine Hand wird nie allein klatschen“.

Wie geht es in Zukunft bei Dir weiter?

Ich freue mich, wenn ich weiter bei NETWAYS arbeiten und noch mehr lernen kann.

Afeef Ghannam

Autor: Afeef Ghannam

Afeef macht seit September 2017 eine Ausbildung zum Fachinformatiker für Systemintegration bei NETWAYS. Nachdem der gebürtige Syrer erfolgreich Deutsch gelernt hat, stellt er sich jetzt der Herausforderung Programmiersprache. Neben der IT schätzt er vielfältiges Essen. Sein Motto lautet يد واحدة لا تصفق لوحدها , was so viel bedeutet wie „Eine Hand wird nie allein klatschen“.

Azubiprojektwoche 2018

This entry is part 16 of 17 in the series Azubis erzählen

Wir, die 8 NETWAYS Azubis, haben wie jedes Jahr ein kleines Projekt umgesetzt. Und zwar in einer Woche und mit einem bestimmten Budget. Zuerst haben wir uns überlegt, welches Projekt Spaß macht und für uns nützlich sein kann.

Wir haben uns dann für ein Online-Spiel mit Fragen zur Allgemeinbildung entschieden. Über den Nutzen lässt sich streiten, aber das es Spass macht war klar. Anschließend haben wir uns in drei Gruppen geteilt.

  • In der erster Gruppe  (Die Techniker) waren Noah und Philipp mit der Programmierung ( Node.js, socket.io beschäftigt
  • In der Zweiter Gruppe (Content-Gruppe) , waren Nicole, Feu, Lukas, Killian und ich. Wir haben die Fragen und Antworten vorbereitet
  • Ufuk hat sich um Media und Präsentation gekümmert 

Damit die Präsentation vor dem Rest der Firma etwas unterhaltsamer ist, haben wir uns dafür entschieden, eine kleine Party und Präsentation am Ende des Projektes zu machen. Lukas und ich sorgten für Catering und haben für die Kolleginnen und Kollegen gekocht.

Darüber hinaus hat Nicole das Projekt vor den NETWAYS Mitarbeitern präsentiert. Da wir Open Source mögen und damit arbeiten, hat Noah den Quelltext unter diesem Link zur Verfügung gestellt https://github.com/N-o-X/GraddlerWars .

Ein Paar Fotos und eine Video lassen diese schöne und gemeinsame Zeiten nicht vergessen.

 

Afeef Ghannam

Autor: Afeef Ghannam

Afeef macht seit September 2017 eine Ausbildung zum Fachinformatiker für Systemintegration bei NETWAYS. Nachdem der gebürtige Syrer erfolgreich Deutsch gelernt hat, stellt er sich jetzt der Herausforderung Programmiersprache. Neben der IT schätzt er vielfältiges Essen. Sein Motto lautet يد واحدة لا تصفق لوحدها , was so viel bedeutet wie „Eine Hand wird nie allein klatschen“.