Jag har sagt det här många gånger förut, och jag kommer att säga det många gånger i framtiden: Portainer är min bästa plattform för containerhantering. Med Portainer kan jag utföra alla uppgifter som krävs för att hantera och övervaka containerdistributioner. Jag kan använda Portainer på en isolerad docker-utvecklingsmaskin eller en multi-nod Swarm Cluster.
Vänta. Sa jag precis multi-nod Swarm Cluster? Jag gjorde.
Om dina Docker-installationer är av storskalig karaktär, är chansen ganska god att du har att göra med en Docker Swarm. För de som inte vet är Swarm-läget inbyggt i Docker Engine och låter dig hantera ett kluster av Docker-noder för mer skalbarhet, decentraliserade distributioner, önskade tillståndsavstämningar, nätverk med flera värdar, lastbalansering och rullande uppdateringar.
Med andra ord, om dina containerdistributioner behöver möta högre krav, använder du förmodligen Docker Swarm. Och den goda nyheten är att du kan hantera din Swarm direkt från Portainer.
SE: Anställningskit: Backend-utvecklare (TechRepublic Premium)
Nu, om du inte redan har distribuerat Portainer, se till att kolla in Hur man distribuerar Portainer containerhanteringsverktyg med beständig lagring innan du fortsätter. Du vill se till att distribuera Portainer på din kontrollerande nod och se till att använda alternativet Agent när du skapar en ny Docker-miljö (Bild A).
Bild A

När du har skapat din nya miljö bör den dyka upp i din miljölista (Bild B).
Bild B

Hur du hanterar din Docker Swarm från Portainer
Med din Docker Swarm Environment igång, välj den och du bör se Swarm-posten i det vänstra sidofältet (Bild C).
Bild C

Klicka på den posten och du kommer att se två avsnitt: Klusterstatus och Noder (Bild D).
Bild D

Låt oss ta en titt på vår dockercontroller-nod. Klicka på den posten för att avslöja detaljerna (Bild E).
Bild E

Som du kan se finns det inte så mycket saker du kan kontrollera. Det du kan göra är att ställa in tillgängligheten för noden (från Active, Pause, Drain) och lägga till etiketter, som är metadata som beskriver noden.
Måste läsa utvecklarbevakning
När det gäller tillgänglighet, här är beskrivningarna:
- Aktiv: En nod är aktiv och tillgänglig för schemaläggaren att tilldela uppgifter.
- Paus: En nod är uppe men schemaläggaren kan inte tilldela nya uppgifter till denna nod även om befintliga uppgifter kommer att köras.
- Dränering: En nod är uppe men schemaläggaren kan inte tilldela nya uppgifter och kommer att stänga av alla befintliga uppgifter och tilldela dem till andra noder.
Alternativet Tillgänglighet är ett mycket praktiskt sätt att hantera enskilda noder. Du kan behöva byta ut en nod. Istället för att bara stoppa det bör du tömma det så att alla uppgifter omfördelas. Du kan sedan distribuera den nya noden och ställa in den som aktiv.
Använd etiketter som en praktisk metod för att organisera din svärm. Säg till exempel att nod 1 är en Ubuntu-server och nod 2 är en AlmaLinux-server. Gå över till den första noden (som, till exempel, finns på Ubuntu Server) och klicka på + Label. I det resulterande fönstret skriver du os för namn och Ubuntu Server för värde (Bild F).
Bild F

Du kan lägga till så många etiketter du vill.
Löser ett förvirrande fel
När jag först började arbeta med Docker Swarm och Portainer upptäckte jag ett förvirrande fel som tog mig lite tid att lösa. När jag skulle försöka göra någon ändring i en svärmnod skulle jag få felet:
rpc error: code = Okänd beskrivning
Även efter att ha startat om varje nod i svärmen, slutade jag med samma fel. På ett infall kontrollerade jag tiden på varje server, bara för att upptäcka att nod1 och nod2 var konfigurerade för olika tidszoner. På grund av det hade svärmnoderna problem med att kommunicera med varandra. För att åtgärda det problemet loggade jag in på noderna och körde kommandot:
sudo timedatectl ställ in tidszon ZONE
Där ZONE är rätt tidszon för mitt område som kan hittas med kommandot:
cat /etc/timezone
När du har sett till att tidszonerna är korrekta för varje nod bör det felet försvinna och du kan märka dina noder efter behov och ställa in deras tillgänglighet.
Naturligtvis kan du även skala dina distributioner inom din Swarm med Portainer. För att ta reda på hur detta görs, kolla in min handledning Hur man skalar servicedistributioner med Portainer.
Och det är allt som finns för att hantera din Docker Swarm med Portainer. Denna plattform är en anmärkningsvärd lösning för alla som vill göra hanteringen av Docker-containerinstallationer till en mycket enklare och effektivare process.
Prenumerera på TechRepublics How To Make Tech Work på YouTube för alla de senaste tekniska råden för affärsproffs från Jack Wallen.
Håll kontakten med oss på sociala medieplattformar för omedelbar uppdatering klicka här för att gå med i vår Twitter och Facebook