Openshift: OCP-päivityksen esitarkistus epäonnistui kuivajuoksun tyhjennyssolmuvirheen vuoksi
Summary: OCP-päivityksen esitarkistus epäonnistui kuivarun tyhjennyssolmun virheen vuoksi, koska jotakin virtuaalikonetta ei voi siirtää reaaliaikaisesti tai jotakin podia ei voi häätää.
Acest articol se aplică pentru
Acest articol nu se aplică pentru
Acest articol nu este legat de un produs specific.
Acest articol nu acoperă toate versiunile de produs existente.
Symptoms
LCM-esitarkistuksen aikana voi ilmetä kuivakäyttöisen tyhjennyssolmun vika, joka estää LCM-prosessin.
Virhesanoma voi sisältää muun muassa seuraavat tilanteet:
Virhesanoma voi sisältää muun muassa seuraavat tilanteet:
- Tilanne 1: "VMI XXXXXX on konfiguroitu häätöstrategialla, mutta se ei ole elävä siirtokelpoinen."
- Tilanne 2: "Ei voi häätää podia, koska se rikkoisi podin häiriöbudjettia."
- Tilanne 3: "Pods xxx" ei löydy tuotteelle pod:xxxxxxxxxxxx
Cause
Skenaarion 1 perimmäinen syy: Virtuaalikoneeseen on määritetty ReadWriteOnce (RWO) -tallennustaltio, jota ei voi siirtää reaaliaikaisesti virheraportointisolmuun.
Skenaarion 2 perimmäinen syy: Podin "PodDistruptionBudget" -asetus on "minAvailable: 1", Se estää podin häätöprosessin.
Senario 3: n perimmäinen syy: Openshift-ajoitettu työ käynnistää podin ja pod lopetetaan, kun työ on valmis. Joten on mahdollista, että podia ei löydy esitarkistuksen kuiva-ajon tyhjennyssolmuvaiheen aikana.
Skenaarion 2 perimmäinen syy: Podin "PodDistruptionBudget" -asetus on "minAvailable: 1", Se estää podin häätöprosessin.
Senario 3: n perimmäinen syy: Openshift-ajoitettu työ käynnistää podin ja pod lopetetaan, kun työ on valmis. Joten on mahdollista, että podia ei löydy esitarkistuksen kuiva-ajon tyhjennyssolmuvaiheen aikana.
Resolution
Skenaarion 1 tarkkuus
1. Pysäytä virtuaalikoneilmentymä ennen kuin muutat sen PV-asetuksia.
2. Napsauta virtuaalikonetta ja vaihda YAML-välilehteen.
3. Vaihda accessMode-tila "ReadWriteOnce" -tilasta "ReadWriteMany" -tilaan.
4. Jos PV:tä ei voi määrittää arvoon ReadWriteMany (virtuaalikone ei voi alkaa käyttää ReadWriteManya), aseta häätöstrategia arvosta "LiveMigrate" arvoon "Ei mitään".
Huomautus: Tee joko ympäristöösi liittyvä vaihe 3 tai 4, sinun ei tarvitse tehdä molempia vaiheita.
5. Valitse Save ja käynnistä virtuaalikone uudelleen.
6. Yritä LCM-esitarkistusta uudelleen ja jatka päivitystä.
Skenaarion 2 tarkkuus
Tee jokin seuraavista ympäristöä koskevista toimenpiteistä.
Menettely 1: Poista manuaalisesti podit/podit, joita ei voi häätää.
- Suorita alla oleva komento poistaaksesi podit/podit, joita ei voi häätää, ja anna niiden luoda uudelleen eri solmuissa.
$ oc delete pod <pod_name> -n <pod_namespace>
- Yritä LCM-esitarkistusta uudelleen ja jatka päivitystä.
Menettely 2: Jos podia ei voi poistaa manuaalisesti, korjaa se pod, jonka "PodDisruptionBudget" on määritetty "minAvailable: 1"
- Tarkista podin "PodDisruptionBudget" arvo suorittamalla alla oleva komento
Esimerkki:
$ oc get pdb <pdb_name> -n <pod_namespace> NAME MIN AVAILABLE MAX UNAVAILABLE ALLOWED DISRUPTIONS AGE <pdb_name> 1 N/A 0 18h
- Jos komennon tulos näyttää "MIN AVAILABLE" on "1", korjaa PodDisruptionBudget minAvailable -arvoksi "0" alla olevalla komennolla.
$ oc patch pdb <pdb_name> -n <pod_namespace> --type=merge -p '{"spec":{"minAvailable":0}}'
- Yritä LCM-esitarkistusta uudelleen ja jatka päivitystä.
- Odota, kunnes päivitys on valmis ja MCO on käytettävissä, tarkista alla olevalla komennolla, että kaikki on kunnossa.
$ watch -n10 "oc get clusterversion; echo; oc get mcp; echo; oc get nodes -o wide; echo; oc get co"
Esimerkki:
- Kun OCP-päivitys on valmis, palauta PodDisruptionBudget minAvailable -arvoksi 1
$ oc patch pdb <pdb_name> -n <pod_namespace> --type=merge -p '{"spec":{"minAvailable":1}}'
Menettely 3: Jos podin korjausvirhe "PodDisruptionBudget.policy "<pdb_name>" ei kelpaa: spec: Käyttö estetty: poddisruptionbudget-tietojen päivittäminen on kielletty.", voit kiertää ongelman noudattamalla alla olevia ohjeita.
- Varmuuskopioi PodDisruptionBudget, jonka määrityksenä on "minAvailable: 1"
$ oc get pdb <pdb_name> -n <pod_namespace> -o yaml > <pdb_name>_backup.yaml
- Irrota PodDisruptionBudget, jonka määrityksenä on "minAvailable: 1"
$ oc delete pdb <pdb_name> -n <pod_namespace>
- Yritä LCM-esitarkistusta uudelleen ja jatka päivitystä.
- Odota, kunnes päivitys on valmis ja MCO on käytettävissä, tarkista alla olevalla komennolla, että kaikki on kunnossa.
$ watch -n10 "oc get clusterversion; echo; oc get mcp; echo; oc get nodes -o wide; echo; oc get co"
Esimerkki:
- Kun OCP-päivitys on valmis, palauta yaml-varmuuskopiotiedosto.
$ oc create -f <pdb_name>_backup.yaml -n <pod_namespace>
Skenaarion 3 tarkkuus
Yritä vain LCM-esitarkistusta uudelleen, sen pitäisi läpäistä tällä kertaa.
Additional Information
Katso Openshift-asiakirjan alta lisätietoja virtuaalikonelevyjen tallennusasemista.
Produse afectate
APEX Cloud Platform for Red Hat OpenShiftProprietăți articol
Article Number: 000216907
Article Type: Solution
Ultima modificare: 18 sept. 2026
Version: 4
Găsiți răspunsuri la întrebările dvs. de la alți utilizatori Dell
Servicii de asistență
Verificați dacă dispozitivul dvs. este acoperit de serviciile de asistență.