DevOps-bootcamp · leksjon

Komme ut av pending-upgrade og fastlåste tilstander

Gjenopprette en release som har satt seg fast midt i en operasjon

Leksjon 3 av 413 trinn

Komme ut av pending-upgrade og fastlåste tilstander er en gratis leksjon i DevOps-bootcamp på CoddyKit. Dette er leksjon 3 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.

Når en release låser seg

Hvis en oppgradering blir avbrutt, kan en release bli stående i pending-upgrade og avvise alle nye operasjoner. Ikke få panikk. 🛑

Finn statusen

Kjør helm list. En fastlåst release viser en status som pending-upgrade eller pending-install i stedet for den friske statusen deployed.

helm list --all --namespace web

Hvorfor det skjer

Statusen pending betyr at Helm begynte å skrive en revisjon, men aldri ble ferdig. Det skyldes ofte at en prosess ble avsluttet eller at en tidsavbruddsgrense ble nådd midt i oppgraderingen.

Den ryddigste løsningen

Den sikreste utveien er å rulle tilbake til den siste fungerende revisjonen. helm rollback setter releasen tilbake til en kjent, frisk tilstand.

helm rollback my-app 0

Velg målet

Kontroller helm history først for å se hvilken revisjon som sist ble distribuert uten feil, og rull deretter tilbake til akkurat dette nummeret.

helm history my-app

Rull tilbake til null

Det er praktisk å angi revisjon 0: Da ber du Helm rulle tilbake til den forrige releasen uten at du trenger å oppgi nummeret.

helm rollback my-app

Releaser lagres som Secrets

Helm 3 lagrer hver revisjon i en Kubernetes-Secret i release-navnerommet. Denne posten holder oversikt over pending-statusen.

Gjennomgå postene

List opp disse Secrets for å se revisjonshistorikken direkte. Den nyeste har pending-tilstanden som hindrer videre fremdrift.

kubectl get secret -l owner=helm,name=my-app -n web

Opprydding som siste utvei

Hvis rollback ikke hjelper, slett det mislykkede pending Secret-objektet for revisjonen. Helm bruker deretter den forrige revisjonen som den nyeste.

kubectl delete secret sh.helm.release.v1.my-app.v5 -n web

Prøv oppgraderingen på nytt

Når den fastlåste posten er fjernet, kjør helm upgrade på nytt. Med en ren tilstand fortsetter oppgraderingen normalt denne gangen.

helm upgrade my-app ./my-app

Unngå dette neste gang

Ved å legge til --atomic i oppgraderinger unngås fastlåste tilstander helt: En mislykket kjøring rulles automatisk tilbake i stedet for å etterlate systemet i en fastlåst tilstand.

helm upgrade my-app ./my-app --atomic --timeout 5m

Rask kontroll

En release sitter fast i pending-upgrade. Hva er den tryggeste første handlingen for å gjenopprette den?

Oppsummering

Nå kan De gjenopprette fastlåste releaser ved å identifisere pending-status, kjøre helm rollback til en fungerende revisjon eller slette Secret-objektet for den mislykkede releasen. Bruk --atomic for å forhindre dette. 🚀

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 «Komme ut av pending-upgrade og fastlåste tilstander» gratis?

Ja – du kan lese valgfritt 3 av leksjonene i læringsstien DevOps-bootcamp, inkludert «Komme ut av pending-upgrade og fastlåste tilstander», 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 «Komme ut av pending-upgrade og fastlåste tilstander»?

Gjenopprette en release som har satt seg fast midt i en operasjon 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 3 av 4.

Hvor lang tid tar leksjonen «Komme ut av pending-upgrade og fastlåste tilstander»?

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. Spore rendering med --debug og --dry-run
  2. Lese manifests med helm get all
  3. Komme ut av pending-upgrade og fastlåste tilstander
  4. Bygge et production application chart fra start til slutt
← Tilbake til DevOps-bootcamp