Scalabilità e rolling update in Swarm
Ridimensioni i servizi nell'intero swarm, esegua rolling update senza downtime e ripristini automaticamente la versione precedente quando un aggiornamento non va a buon fine.
Scalabilità e rolling update in Swarm è una lezione DevOps Bootcamp gratuita su CoddyKit. Questa è la lezione 4 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento DevOps Bootcamp, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso DevOps Bootcamp include 4 lezioni in totale.
I servizi sono scalabili
In Swarm un service descrive un numero desiderato di repliche identiche del container. Il manager dello swarm lavora costantemente per mantenerne in esecuzione quel numero tra i vari nodi.
Scalare un servizio
Modificare in qualsiasi momento il numero di repliche con docker service scale. Lo scheduler distribuisce i nuovi task tra i nodi disponibili.
docker service scale web=5Impostare la scalabilità al momento della creazione
È possibile impostare le repliche anche durante la creazione del servizio con --replicas.
docker service create --name web --replicas 3 -p 80:80 nginxControllare lo stato delle repliche
Usare docker service ls per un riepilogo e docker service ps per vedere ogni task e il nodo su cui viene eseguito.
docker service ps webChe cos'è un aggiornamento progressivo?
Un aggiornamento progressivo sostituisce le repliche poche alla volta, così il servizio rimane disponibile per tutta la durata dell'operazione. Swarm offre questa funzionalità integrata.
Attivare un aggiornamento
Indicare una nuova immagine per un servizio con docker service update --image. Swarm sostituisce gradualmente i task secondo la policy di aggiornamento.
docker service update --image nginx:1.27 webControllare il rollout
Regolare il rollout con il parallelismo e il ritardo: indicano quanti task modificare contemporaneamente e quanto attendere tra un gruppo e l'altro.
docker service update \
--update-parallelism 2 \
--update-delay 10s \
--image nginx:1.27 webAzione in caso di errore dell'aggiornamento
Impostare --update-failure-action su rollback affinché un aggiornamento che fallisce venga annullato automaticamente, invece di lasciare il servizio non funzionante.
docker service update \
--update-failure-action rollback \
--image nginx:1.27 webRollback manuale
Se un aggiornamento presenta problemi, docker service rollback riporta immediatamente il servizio alla specifica precedente.
docker service rollback webI controlli di salute guidano gli aggiornamenti
Un HEALTHCHECK del container permette a Swarm di sapere se una nuova replica è veramente pronta. Insieme alla policy di aggiornamento, impedisce di indirizzare il traffico verso task non funzionanti.
HEALTHCHECK --interval=10s CMD curl -f http://localhost/ || exit 1Globale e replicato
I servizi replicati eseguono un numero fisso di task; i servizi globali ne eseguono esattamente uno per nodo, una soluzione ideale per agent come i raccoglitori di log. La scalabilità non si applica alla modalità globale.
docker service create --mode global --name agent myagentVerifica rapida
In che modo un aggiornamento progressivo mantiene disponibile il servizio?
Riepilogo
Ora è possibile gestire con sicurezza i servizi Swarm:
docker service scalemodifica il numero di replicheservice update --imageattiva gli aggiornamenti progressivi- Parallelismo, ritardo e
--update-failure-action rollbackcontrollano la sicurezza service rollbackannulla le modifiche; i controlli di salute regolano la disponibilità
Insieme, queste funzionalità consentono distribuzioni senza downtime su uno swarm.
Impara DevOps Bootcamp con un tutor IA — gratis
Scrivi ed esegui vero codice nel tuo browser, ricevi aiuto istantaneo da un tutor IA disponibile 24/7, e riprendi da dove hai lasciato sul web o nell'app.
- Corsi
- 142
- Lezioni
- 568
Domande Frequenti
La lezione «Scalabilità e rolling update in Swarm» è gratuita?
Sì — il testo completo di «Scalabilità e rolling update in Swarm» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso DevOps Bootcamp, passa a CoddyKit PRO. Il corso DevOps Bootcamp include 4 lezioni in totale.
Cosa imparerò in «Scalabilità e rolling update in Swarm»?
Ridimensioni i servizi nell'intero swarm, esegua rolling update senza downtime e ripristini automaticamente la versione precedente quando un aggiornamento non va a buon fine. Eserciti DevOps Bootcamp con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.
Ho bisogno di esperienza per iniziare DevOps Bootcamp?
Non è richiesta alcuna esperienza precedente. DevOps Bootcamp su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 4 di 4.
Quanto tempo richiede la lezione «Scalabilità e rolling update in Swarm»?
La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.
Posso scrivere ed eseguire codice in questa lezione DevOps Bootcamp?
Sì. Ogni lezione DevOps Bootcamp include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.
Tutte le lezioni di questo corso
- Introduzione a Docker Swarm
- Configurazione di un cluster Swarm
- Distribuzione di servizi su Swarm
- Scalabilità e rolling update in Swarm