Inleiding
Dit document beschrijft de procedure voor probleemoplossing Kubernetes Pod niet klaar gezien in de Policy Control Functie (PCF).
Voorwaarden
Vereisten
Cisco raadt kennis van de volgende onderwerpen aan:
- PCF
- 5G Cloud-native implementatieplatform (CNDP)
- Dockers en Kubernetes
Gebruikte componenten
De informatie in dit document is gebaseerd op de volgende software- en hardware-versies:
- REL_2023.01.2
- Kubernetes v1.24.6
De informatie in dit document is gebaseerd op de apparaten in een specifieke laboratoriumomgeving. Alle apparaten die in dit document worden beschreven, hadden een opgeschoonde (standaard)configuratie. Als uw netwerk live is, moet u zorgen dat u de potentiële impact van elke opdracht begrijpt.
Achtergrondinformatie
In deze installatie wordt de PCF door de CNDP gehost.
Wanneer een Kubernetes Pod in een 'niet gereed' staat, betekent dit dat de Pod momenteel niet in staat is om verkeer te bedienen omdat een of meer van zijn containers niet klaar zijn. Dit kan te wijten zijn aan verschillende redenen, zoals containers die nog in gebruik zijn, gebrekkige gezondheidscontroles, of het tegenkomen van fouten.
Probleem
Je ziet waarschuwingen op de gemeenschappelijke executie omgeving (CEE) voor Kubernetes (K8s) pods, niet klaar staat.
Command:
cee# show alerts active summary summary
Example:
[pcf01/pcfapp] cee# show alerts active summary
NAME UID SEVERITY STARTS AT DURATION SOURCE SUMMARY
----------------------------------------------------------------------------------------------------------
k8s-pod-not-ready 35b143f885ec critical 06-13T08:22:05 mirror-maker-0 Pod pcf-pcf/mirror-maker-0 has been in a non-ready state for longer than 1 minute
k8s-pod-crashing-loop 990b651ad5f5 critical 04-19T22:51:08 pcf01-master-2 Pod cee-irv1bmpcf/pgpool-65fc8b8d5f-2w9nq (pgpool) is restarting 2.03 times / 10 minutes.
k8s-pod-restarting a44d31701faf minor 04-19T01:55:38 pcf01-master-2 Pod cee-irv1bmpcf/pgpool-65fc8b8d5f-2w9nq (pgpool) is restarting 2.03 times / 10 minutes.
k8s-deployment-replic b8f04c540905 critical 04-06T01:53:48 pcf01-master-2 Deployment cee-irv1bmpcf/pgpool has not matched the expected number of replicas for longer th...
k8s-pod-not-ready cb2c8ee4a9c9 critical 04-06T01:53:48 pgpool-65fc8b8d5f-2w9 Pod cee-pcf/pgpool-65fc8b8d5f-2w9nq has been in a non-ready state for longer than 5 min...
Analyse
Benadering 1
Na het inloggen op een Kubernetes (K8s) knooppunt, controleer de waarschuwingen voor een knooppunt dat momenteel een 'niet gereed' status heeft.
Aanbevolen wordt om elk upgrade- of onderhoudsproces te controleren. Op dat moment kan de peul offline worden gezet om updates toe te passen, nieuwe software te installeren of andere noodzakelijke taken uit te voeren. of lopende onderhoudsactiviteiten die de beschikbaarheid van de peul kunnen beïnvloeden.
Verwacht wordt dat de spiegelpeulen zich in de genoemde staat bevinden tijdens de Site upgrade-activiteit op de peer site (GR).
Verbind met de hoofdknoop en verifieer de status van de spiegelpeul.
cloud-user@pcf01-master-1:~$ kubectl get pods -A -o wide | grep mirror
NAMESPACE NAME READY STATUS RESTARTS AGE
pcf-pcf01 mirror-maker-0 0/1 Running 1 5d23h
#Post upgrade Activity mirror-maker pod status
cloud-user@pcf01-master-1:~$ kubectl get pods -A|grep mirror
pcf-pcf01 mirror-maker-0 1/1 Running 1 6d.
Benadering 2
Als u waarschuwingen ontvangt die aangeven dat een Kubernetes (K8s)-capuchon niet klaar is binnen de CEE, suggereert dit dat de capuchon problemen ondervindt en niet als volledig operationeel kan worden beschouwd. Deze staat impliceert typisch dat de peul niet het verkeer kan goedkeuren of zijn voorgenomen functie vervullen.
Analyseer de waarschuwingen en bijbehorende informatie om de oorzaak van de status 'niet gereed' te begrijpen. De waarschuwingen kunnen details geven over het specifieke probleem of de trigger die heeft geleid tot de statuswijziging van het knooppunt. De meest voorkomende redenen voor een knooppunt met de status 'niet klaar' zijn onder meer beperkingen van bronnen, problemen met netwerkconnectiviteit, hardwarestoringen of configuratieproblemen.
Stap 1. Controleer de pod status met behulp van dekubectl get pods
opdracht om de status van de pod te controleren en op zoek naar de pod status. Als de peul niet klaar is, kan het een status zoals "Hangende", "CrashLoopBackOff", of "Fout"tonen.
cloud-user@pcf01-master-1:~$ kubectl get pods -A -o wide | grep -v Running
NAMESPACE NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES
cee-pcf pgpool-65fc8b8d5f-2w9nq 0/1 CrashLoopBackOff 147 (117s ago) 8d xxx.xxx.xxx.xx pcf01-master-2 <none> <none>
All nodes including master-2 are in Ready state
cloud-user@pcf01-master-1:~$ kubectl get nodes
NAME STATUS ROLES AGE VERSION
Pcf01-master-1 Ready control-plane 667d v1.24.6
Pcf01-master-2 Ready control-plane 9d v1.24.6
Pcf01-master-3 Ready control-plane 9d v1.24.6
Pcf01-worker-1 Ready <none> 9d v1.24.6
Pcf01-worker-10 Ready <none> 9d v1.24.6
Pcf01-worker-11 Ready <none> 9d v1.24.6
Pcf01-worker-12 Ready <none> 9d v1.24.6
Pcf01-worker-13 Ready <none> 9d v1.24.6
Pcf01-worker-14 Ready <none> 9d v1.24.6
Pcf01-worker-15 Ready <none> 9d v1.24.6
Pcf01-worker-16 Ready <none> 9d v1.24.6
Pcf01-worker-17 Ready <none> 9d v1.24.6
Pcf01-worker-18 Ready <none> 9d v1.24.6
Pcf01-worker-19 Ready <none> 9d v1.24.6
Pcf01-worker-2 Ready <none> 9d v1.24.6
Pcf01-worker-20 Ready <none> 9d v1.24.6
Pcf01-worker-21 Ready <none> 9d v1.24.6
Pcf01-worker-22 Ready <none> 9d v1.24.6
Pcf01-worker-23 Ready <none> 9d v1.24.6
Pcf01-worker-3 Ready <none> 9d v1.24.6
Pcf01-worker-4 Ready <none> 9d v1.24.6
Pcf01-worker-5 Ready <none> 9d v1.24.6
pcf01-worker-6 Ready <none> 9d v1.24.6
pcf01-worker-7 Ready <none> 9d v1.24.6
pcf01-worker-8 Ready <none> 9d v1.24.6
pcf01-worker-9 Ready <none> 9d v1.24.6
Stap 2. Log in om VIP te beheersen en de pgpool peul te halen.
cloud-user@pcf01-master-1:~$ kubectl get pods -A -o wide | grep -i pgpool
cee-pcf01 pgpool-65fc8b8d5f-2w9nq 0/1 Running 3173 (3m58s ago) 22d xxx.xxx.xxx.xx pcf01-master-2 <none> <n
cloud-user@pcf01-master-1:~$
Stap 3. Verwijdert de peul van de peul.
cloud-user@pcf01-master-1:~$ kubectl delete pod <pgpool pod name> -n cee-pcf
Stap 4. Controleer of de nieuwe pgpoolbuis goed werkt.
cloud-user@pcf01-master-1:~$ kubectl get pods -A -o wide | grep -i pgpool
Stap 5. Controleer of de waarschuwingen met betrekking tot de pgpoolpool in het CEE ops center zijn gewist.
[pcf01/pcfapp] cee# show alerts active summary