CSI-drivere: Slik samler du inn logger
Summary: Denne artikkelen viser hvordan du samler inn de grunnleggende loggene for å begynne å feilsøke et problem for Dell-serien med lagringsmoduler (CSM): Drivere for Dell Container Storage Interface (CSI) ...
Instructions
Innsamling
av CSI-driverloggDette består i å aktivere feilsøking, reprodusere problemet hvis mulig, samle logger for CSI-driverkontrolleren, samle logger fra nodepod.
kubectl Kommandoer kan erstattes med "oc" i OpenShift-miljøer.
Aktiver feilsøkingslogger for CSI-driverkontrolleren og nodepodene.
Se funksjonen "Konfigurasjon av dynamisk logging" i dokumentasjonen: https://dell.github.io/csm-docs/docs/csidriver
Bestem navnene på kontrolleren og nodepodene.
Bruk kubectl get pods Kommando for å liste podene i drivernavneområdet.
# kubectl get pods -n isilon NAME READY STATUS RESTARTS AGE isilon-controller-66d7d9d7c-6j6f4 6/6 Running 0 11m isilon-node-9wngk 2/2 Running 0 27d
Samle inn CSI-driverkontrollerlogger.
Logger skal samles inn for kontrollerbøttene. Samle inn logger fra alle kontrollere ved hjelp av kubectl logs kommando. Sørg for å passere i den aktuelle beholderen, for eksempel sjåfør.
kubectl logs -n <namespace> <controller> <container> > <file name>
Eksempel:
kubectl logs -n isilon isilon-controller-66d7d9d7c-6j6f4 driver > isilon-controller-66d7d9d7c-6j6f4_driver.log
Gjenta prosessen for alle nødvendige beholdere som er relatert til problemet (tilkoblet, øyeblikksbilde, klargjører, driver, skalerer og så videre). Sørg for å endre filnavnet på utdatafilen slik at det samsvarer med kontrollernavnet og beholderen.
Samle inn CSI-drivernodepod-logger.
Loggene skal også samles inn for arbeidsnodene. Dette kan inkludere en node, eller den kan inkludere flere noder hvis en problempod flyttet fra en node til en annen. Dette samler inn loggene for hver av beholderne på CSI Driver node pod (driver, registrar, og så videre):
kubectl logs -n <namespace> <worker node> > <filename>.txt
Eksempel:
kubectl logs -n isilon isilon-node-9wngk driver > isilon-node-9wngk_driver.txt kubectl logs -n isilon isilon-node-9wngk registrar > isilon-node-9wngk_registrar.txt
Alternativer
Skript
: Dette genererer alle kontrollerlogger individuelt (endre "isilon"-navneområde, 2 steder om nødvendig), og legger til beholdere etter behov.
for x in $(kubectl get pods -n isilon | grep controller | awk '{print $1}'); do for i in attacher provisioner driver snapshotter;do kubectl logs -n isilon $x -c $i > $x-$i.txt;done;done
Dette samler nodelogger (endre "isilon"-navneområdet på to steder om nødvendig) og legger til beholdere etter behov.
for x in $(kubectl get pods -n isilon | grep node | awk '{print $1}'); do for i in driver registrar;do kubectl logs -n isilon $x -c $i > $x-$i.txt;done;done
Siden alternativet
Innsamling av alle loggene kan gi mer data enn nødvendig. Den "--since" alternativet kan brukes til å samle inn for en kjent tidsperiode. Dette alternativet etterfølges av "5 s", "5 m" eller "5 h" i sekunder, minutter og timer, avhengig av hvor langt tilbake logginnsamlingen skal gå. Dette er også nyttig hvis problemet ble gjenskapt, samle inn de siste 5 minuttene av loggene (eller hvor lang tid det tok å reprodusere):
Eksempel:
kubectl logs -n isilon isilon-node-xxx driver --since 5m > isilon-node-xxx_driver.txt
Alle containere
Det er nyttig i feilsøking å samle inn loggene separat som beskrevet ovenfor. Noen ganger kan du erstatte beholdernavnet med "--all-containers" For å samle alle podens beholderes logger kan være nyttig.
Eksempel:
kubectl logs -n isilon isilon-node-xxx --all-containers> isilon-node_driver.txt
Annen nødvendig informasjon:
Beholderorkestrering (K8-er, OpenShift og så videre) og versjon
Kubernetes' versjon og smak
Driverversjon
Arrayversjon eller mikrokode K8-noder
operativsystem og versjon
Additional Information
Slik viser du implementeringene:
NAMESPACE NAME READY UP-TO-DATE AVAILABLE AGE
csi-powerscale isilon-controller 1/1 1 1 14d
powermax powermax-controller 1/1 1 26d
unity-controller 1/1 1 1 47d
vxflexos vxflexos-controller 2/2 2 2 107d
-navn:
X_CSI_DEBUG verdi: "True"
For Isilon skal innholdet i OneFS REST-API-en også logges i feilsøking ved å angi 0 (sann):
-navn:
X_CSI_VERBOSE verdi: "0"
Enable CSI Driver node debug logs by editing the daemonset (Aktiver feilsøkingslogger for CSI-drivernode) ved å redigere daemonset.
Feilsøking aktiveres ved å redigere daemonset.
Slik viser du daemonsets:
NAMESPACE NAME DESIRED CURRENT READY UP-TO-DATE AVAILABLE NODE SELECTOR AGE
csi-powerscale isilon-node 2 2 2 2 2 14d
powermax powermax-node 2 2 2 2 26d
unity unity-node 2 2 2 2 2 47d
vxflexos vxflexos-node 2 2 2 2 107d
-navn:
X_CSI_DEBUG verdi: "True" (Sann)
For Isilon bør innholdet i OneFS REST-API-en også logges i feilsøking ved å angi 0 (sann):
-navn:
X_CSI_VERBOSE verdi: "0" (0)
Fordi feilsøkingslogger ikke er tilbakevirkende, reproduserer du problemet hvis det er mulig før du samler inn logger.