Ovladače CSI: Postup shromažďování protokolů
Summary: Tento článek ukazuje, jak shromáždit základní protokoly pro zahájení odstraňování problémů s moduly Dell řady CSM (Container Storage Modules): Ovladače Dell CSI (Container Storage Interface) ...
Instructions
Shromažďování
protokolů ovladačů CSITo se skládá z povolení ladění, reprodukování problému, pokud je to možné, shromažďování protokolů pro řadič ovladače CSI a shromažďování protokolů z podu uzlu.
kubectl Příkazy lze v prostředích OpenShift nahradit příkazem "oc".
Povolte protokoly ladění pro řadič ovladače CSI a pody uzlu.
Viz funkce "Konfigurace dynamického protokolování" v dokumentaci: https://dell.github.io/csm-docs/docs/csidriver
Určete názvy podů řadiče a uzlu.
Pomocí tlačítek kubectl get pods příkaz k vypsání podů v oboru názvů ovladače.
# 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
Shromážděte protokoly řadiče ovladače CSI.
Pro pody řadiče by se měly shromažďovat protokoly. Shromážděte protokoly ze všech řadičů pomocí kubectl logs . Ujistěte se, že projedete příslušný kontejner, například řidič.
kubectl logs -n <namespace> <controller> <container> > <file name>
Příklad:
kubectl logs -n isilon isilon-controller-66d7d9d7c-6j6f4 driver > isilon-controller-66d7d9d7c-6j6f4_driver.log
Tento postup opakujte pro všechny požadované kontejnery související s vaším problémem (připojovač, snapshotter, zřizovatel, ovladač, změna velikosti atd.). Nezapomeňte změnit název výstupního souboru tak, aby odpovídal názvu kontroleru a kontejneru.
Shromážděte protokoly podů uzlu ovladače CSI.
Protokoly by se měly shromažďovat také pro pracovní uzly. To může zahrnovat jeden uzel nebo může zahrnovat více uzlů, pokud se problémový pod přesouvá z jednoho uzlu do druhého. Tím se shromáždí protokoly pro každý z kontejnerů v uzlu ovladače CSI (ovladač, registrátor atd.):
kubectl logs -n <namespace> <worker node> > <filename>.txt
Příklad:
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
Alternativy
Skript
: Toto vygeneruje všechny protokoly řadiče jednotlivě (v případě potřeby změňte jmenný prostor "isilon" na 2 místa) a podle potřeby přidáte kontejnery.
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
To shromažďuje protokoly uzlů (v případě potřeby změňte obor názvů "isilon" na dvou místech) a podle potřeby přidává kontejnery.
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
Vzhledem k tomu, že možnost
Shromáždění všech protokolů může přinést více dat, než je potřeba. Značka "--since" lze použít ke shromažďování dat po známou dobu. Po této možnosti následuje "5 s", "5 m" nebo "5 h" pro sekundy, minuty a hodiny v závislosti na tom, jak daleko do minulosti má shromážděný protokol sahat. To je užitečné také v případě, že byl problém reprodukován, shromážděte protokoly za posledních 5 minut (nebo dobu potřebnou k reprodukci):
Příklad:
kubectl logs -n isilon isilon-node-xxx driver --since 5m > isilon-node-xxx_driver.txt
Všechny kontejnery
Při odstraňování problémů je užitečné shromažďovat protokoly samostatně, jak je uvedeno výše. V některých případech je nahrazení názvu kontejneru znakem "--all-containers"Užitečné může být shromažďování protokolů všech kontejnerů podu.
Příklad:
kubectl logs -n isilon isilon-node-xxx --all-containers> isilon-node_driver.txt
Další požadované informace:
Container Orchestrator (K8s, OpenShift atd.) a verze
Kubernetes verze a příchuť
Verze ovladače Verze pole
nebo mikrokód
Operační systém a verze uzlů K8
Additional Information
Seznam nasazení:
NAMESPACE NAME READY UP-TO-DATE AVAILABLE AGE
csi-powerscale isilon-controller 1/1 1 14d
powermax powermax-controller 1/1 1 1 26d
unity unity-controller 1/1 1 1 47d
vxflexos vxflexos-controller 2/2 2 2 107d
-Jméno:
X_CSI_DEBUG hodnota:
U řešení Isilon by měl být obsah rozhraní OneFS REST API zaznamenán také do ladění nastavením na hodnotu 0 (true):
-Jméno:
X_CSI_VERBOSE hodnota: "0"
Enable CSI Driver node debug logs by edit the daemonset.
Ladění je povoleno úpravou démonset.
Zobrazení seznamu démonsetů:
NAMESPACE NAME DESIRED CURRENT READY UP-TO-DATE AVAILABLE NODE SELECTOR AGE
csi-powerscale isilon-node 2 2 2 2 14d
powermax powermax-node 2 2 2 2 26d
uzel unity 2 2 2 2 47d
uzel vxflexos vxflexos 2 2 2 2 2 107d
-Jméno:
X_CSI_DEBUG hodnota: "true"
U řešení Isilon by měl být obsah rozhraní OneFS REST API zaznamenán také do ladění nastavením na hodnotu 0 (true):
-Jméno:
X_CSI_VERBOSE hodnota: "0"
Jelikož protokoly ladění nejsou zpětně aktivní, reprodukujte problém, je-li to možné, před shromažďováním protokolů.