Skalering og rullerende oppdateringer i Swarm
Skaler tjenester på tvers av swarmet, utfør rullerende oppdateringer uten nedetid, og rull automatisk tilbake når en oppdatering går galt.
Skalering og rullerende oppdateringer i Swarm er en gratis leksjon i DevOps-bootcamp på CoddyKit. Dette er leksjon 4 av 4. Du kan lese valgfritt 3 leksjoner fra denne læringsstien gratis i sin helhet – deretter låser CoddyKit PRO opp alle leksjoner, samt praktisk øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i DevOps-bootcamp, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i DevOps-bootcamp inneholder totalt 4 leksjoner.
Tjenester kan skaleres
I Swarm beskriver en service ønsket antall identiske container-replicas. Swarm-manageren arbeider kontinuerlig for å holde dette antallet kjørende på tvers av noder.
Skalere en tjeneste
Endre antallet replikaer når som helst med docker service scale. Planleggeren fordeler nye tasks på de tilgjengelige nodene.
docker service scale web=5Skaler ved opprettelse
De kan også angi antallet replikaer når tjenesten opprettes, med --replicas.
docker service create --name web --replicas 3 -p 80:80 nginxKontrollere replikaenes status
Bruk docker service ls for en oversikt og docker service ps for å se hver task og hvilken node den kjører på.
docker service ps webHva er en rullerende oppdatering?
En rullerende oppdatering erstatter replikaene noen få om gangen, slik at tjenesten forblir tilgjengelig hele tiden. Swarm har denne funksjonen innebygd.
Utløse en oppdatering
Knytt en tjeneste til et nytt image med docker service update --image. Swarm erstatter tasks gradvis i henhold til oppdateringspolicyen.
docker service update --image nginx:1.27 webStyre utrullingen
Finjuster utrullingen med parallellisme og forsinkelse: hvor mange tasks som endres samtidig, og hvor lenge det skal ventes mellom puljene.
docker service update \
--update-parallelism 2 \
--update-delay 10s \
--image nginx:1.27 webHandling ved oppdateringsfeil
Sett --update-failure-action til rollback, slik at en mislykket oppdatering automatisk rulles tilbake i stedet for å etterlate tjenesten i en ødelagt tilstand.
docker service update \
--update-failure-action rollback \
--image nginx:1.27 webManuell tilbakerulling
Hvis en oppdatering oppfører seg uventet, returnerer docker service rollback tjenesten umiddelbart til den forrige spesifikasjonen.
docker service rollback webHelsesjekker styrer oppdateringer
En containers HEALTHCHECK lar Swarm vite om en ny replika faktisk er klar. Sammen med oppdateringspolicyen hindrer dette at trafikk flyttes til ødelagte tasks.
HEALTHCHECK --interval=10s CMD curl -f http://localhost/ || exit 1Globalt vs. replisert
Replikerte tjenester kjører et fast antall tasks, mens global-tjenester kjører nøyaktig én task per node – ideelt for agenter som loggsamlere. Skalering gjelder ikke for global modus.
docker service create --mode global --name agent myagentHurtigsjekk
Hvordan holder en rullerende oppdatering tjenesten tilgjengelig?
Oppsummering
De kan nå drifte Swarm-tjenester med trygghet:
docker service scaleendrer antallet replikaerservice update --imageutløser rullerende oppdateringer- Parallellisme, forsinkelse og
--update-failure-action rollbackstyrer sikkerheten service rollbackruller tilbake, mens helsesjekker avgjør når en tjeneste er klar
Tilsammen gir dette distribusjoner uten nedetid i en swarm.
Lær deg DevOps-bootcamp med en AI-veileder – gratis
Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.
- Kurs
- 142
- Leksjoner
- 568
Ofte stilte spørsmål
Er leksjonen «Skalering og rullerende oppdateringer i Swarm» gratis?
Ja – du kan lese valgfritt 3 av leksjonene i læringsstien DevOps-bootcamp, inkludert «Skalering og rullerende oppdateringer i Swarm», gratis i sin helhet her på nettet. Deretter låser CoddyKit PRO opp alle leksjoner, samt interaktiv øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Kurset i DevOps-bootcamp inneholder totalt 4 leksjoner.
Hva lærer jeg i «Skalering og rullerende oppdateringer i Swarm»?
Skaler tjenester på tvers av swarmet, utfør rullerende oppdateringer uten nedetid, og rull automatisk tilbake når en oppdatering går galt. Du øver på DevOps-bootcamp med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.
Trenger jeg erfaring for å begynne med DevOps-bootcamp?
Ingen tidligere erfaring er nødvendig. DevOps-bootcamp på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 4 av 4.
Hvor lang tid tar leksjonen «Skalering og rullerende oppdateringer i Swarm»?
De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.
Kan jeg skrive og kjøre kode i denne DevOps-bootcamp-leksjonen?
Ja. Alle DevOps-bootcamp-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.
Alle leksjonene i dette kurset
- Introduksjon til Docker Swarm
- Sette opp en Swarm-klynge
- Distribuere tjenester til Swarm
- Skalering og rullerende oppdateringer i Swarm