DevOps-bootcamp · leksjon

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.

Leksjon 4 av 413 trinn

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=5

Skaler ved opprettelse

De kan også angi antallet replikaer når tjenesten opprettes, med --replicas.

docker service create --name web --replicas 3 -p 80:80 nginx

Kontrollere 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 web

Hva 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 web

Styre 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 web

Handling 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 web

Manuell tilbakerulling

Hvis en oppdatering oppfører seg uventet, returnerer docker service rollback tjenesten umiddelbart til den forrige spesifikasjonen.

docker service rollback web

Helsesjekker 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 1

Globalt 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 myagent

Hurtigsjekk

Hvordan holder en rullerende oppdatering tjenesten tilgjengelig?

Oppsummering

De kan nå drifte Swarm-tjenester med trygghet:

  • docker service scale endrer antallet replikaer
  • service update --image utløser rullerende oppdateringer
  • Parallellisme, forsinkelse og --update-failure-action rollback styrer sikkerheten
  • service rollback ruller tilbake, mens helsesjekker avgjør når en tjeneste er klar

Tilsammen gir dette distribusjoner uten nedetid i en swarm.

Gratis å komme i gang

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

  1. Introduksjon til Docker Swarm
  2. Sette opp en Swarm-klynge
  3. Distribuere tjenester til Swarm
  4. Skalering og rullerende oppdateringer i Swarm
← Tilbake til DevOps-bootcamp