CSI-drivrutiner: Samla in loggar
Summary: Den här artikeln visar hur du samlar in grundläggande loggar för att börja felsöka problem i CSM-serien (Dell Container Storage Modules): CSI-drivrutiner (Dell Container Storage Interface) ...
Instructions
Insamling
av CSI-drivrutinsloggDetta består av att aktivera felsökning, återskapa problemet om möjligt, samla in loggar för CSI-drivrutinens styrenhet, samla in loggar från nodpodden.
kubectl Kommandon kan ersättas med "oc" i OpenShift-miljöer.
Aktivera felsökningsloggar för CSI-drivrutinens styrenhet och nodpoddar.
Se funktionen "Dynamic Logging Configuration" i dokumentationen: https://dell.github.io/csm-docs/docs/csidriver
Fastställ namnen på kontrollanten och nodpoddarna.
Använd kubectl get pods för att visa en lista över poddarna i drivrutinsnamnområ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
Samla in loggar för CSI Driver Controller.
Loggar ska samlas in för kontrollantpoddarna. Samla in loggar från alla styrenheter med hjälp av kubectl logs befallning. Se till att skicka in relevant container, till exempel driver.
kubectl logs -n <namespace> <controller> <container> > <file name>
Exempel:
kubectl logs -n isilon isilon-controller-66d7d9d7c-6j6f4 driver > isilon-controller-66d7d9d7c-6j6f4_driver.log
Upprepa för alla nödvändiga behållare som är relaterade till problemet (bifogare, snapshotter, provisioner, drivrutin, storleksändring och så vidare). Se till att ändra filnamnet på utdatafilen så att det matchar kontrollantens namn och container.
Samla in poddloggar för CSI-drivrutinsnoden.
Loggarna ska också samlas in för arbetsnoderna. Detta kan inkludera en nod, eller så kan den innehålla flera noder om en problempodd flyttades från en nod till en annan. Detta samlar in loggarna för var och en av containrarna på CSI-drivrutinsnodpodden (drivrutin, registrator och så vidare):
kubectl logs -n <namespace> <worker node> > <filename>.txt
Exempel:
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
Alternativ
Skript
: Detta genererar alla styrenhetsloggar individuellt (ändra "isilon"-namnområde 2 platser om det behövs) och lägg till behållare efter 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
Den samlar in nodloggar (ändra namnrymden "isilon" på två ställen om det behövs) och lägger till behållare efter 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
Eftersom alternativet
Att samla in alla loggar kan ge mer data än vad som krävs. Metoden "--since" kan användas för att samla in under en känd tid. Det här alternativet följs av "5 s", "5 m" eller "5 h" för sekunder, minuter, timmar beroende på hur långt tillbaka logginsamlingen ska gå. Detta är också användbart om problemet återskapades, samla in de senaste 5 minuterna loggar (eller hur lång tid det tog att återskapa):
Exempel:
kubectl logs -n isilon isilon-node-xxx driver --since 5m > isilon-node-xxx_driver.txt
Alla containrar
Det är bra vid felsökning att samla in loggarna separat enligt beskrivningen ovan. Ibland kan containernamnet ersättas med "--all-containers" Att samla in alla poddens containrars loggar kan vara användbart.
Exempel:
kubectl logs -n isilon isilon-node-xxx --all-containers> isilon-node_driver.txt
Övrig information som krävs:
Container Orchestrator (K8s, OpenShift osv.) och version
Kubernetes-version och -variant
Drivrutinsversion
Matrisversion eller mikrokod
K8-nodernas operativsystem och version
Additional Information
Så här listar du distributionerna:
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 47d
vxflexos vxflexos-controller 2/2 2 107d
-Namn:
X_CSI_DEBUG värde: "true"
För Isilon ska innehållet i OneFS REST API också loggas i felsökningen genom inställning 0 (true):
-Namn:
X_CSI_VERBOSE värde: "0"
Enable CSI Driver node debug logs by editing the daemonset.
Felsökning aktiveras genom redigering av daemonset.
Så här visar 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 2 26d
unity unity-node 2 2 2 2 2 47d
vxflexos vxflexos-node 2 2 2 2 2 107d
-Namn:
X_CSI_DEBUG värde: "sant"
För Isilon ska innehållet i OneFS REST API också loggas i felsökningen genom inställning 0 (true):
-Namn:
X_CSI_VERBOSE värde: "0"
Eftersom felsökningsloggar inte är retroaktiva återskapar du problemet om möjligt innan du samlar in loggar.