Drivers CSI: Como coletar registros

Summary: Este artigo mostra como coletar os logs básicos para começar a solucionar um problema da família de módulos de armazenamento de contêineres (CSM) da Dell: Drivers da interface de armazenamento de contêineres (CSI) da Dell ...

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Instructions

Coleta de logs do driver CSI
Isso consiste em habilitar a depuração, reproduzir o problema, se possível, coletar logs para o controlador do driver CSI e coletar logs do pod do nó.

Nota: A coluna kubectl comandos podem ser substituídos por "oc" em ambientes OpenShift.

Habilite os logs de depuração para o controlador do driver CSI e os pods de nó.
Consulte o recurso "Configuração dinâmica de log" na documentação: https://dell.github.io/csm-docs/docs/csidriver

Nota: Como habilitar registros de depuração não é retroativo, reproduza o problema, se possível, antes de coletar logs.

Determine os nomes dos pods do controlador e dos nós.
Use o botão kubectl get pods Comando para listar os pods no namespace do driver.

# 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
Nota: A implementação do controlador é definida como "réplicas: 1" neste ambiente de teste. Essa não é uma configuração de produção compatível, mas é útil para fins de teste. Um ambiente compatível mostra dois ou mais controladores.

Coletar logs do controlador do driver CSI.
Os registros devem ser coletados para os pods do controlador. Colete logs de todos os controladores usando o kubectl logs . Certifique-se de ser aprovado no contêiner relevante, como o driver.

kubectl logs -n <namespace> <controller> <container> > <file name>

Exemplo:

kubectl logs -n isilon isilon-controller-66d7d9d7c-6j6f4 driver > isilon-controller-66d7d9d7c-6j6f4_driver.log

Repita para todos os contêineres necessários relacionados ao seu problema (afixador, snapshotter, provisionador, driver, redimensionador e assim por diante). Certifique-se de alterar o nome do arquivo de saída para corresponder ao nome do controlador e ao contêiner.

Coletar logs do pod do nó do driver CSI.
Os logs também devem ser coletados para os nós de trabalho. Isso poderia incluir um nó ou vários nós se um pod com problema estivesse se movendo de um nó para outro. Isso coleta os logs de cada um dos contêineres no pod de nós do driver CSI (driver, registrador e assim por diante):

kubectl logs -n <namespace> <worker node> > <filename>.txt

Exemplo:

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

Alternativas
Script

: gera todos os logs do controlador individualmente (altere o namespace "isilon" em 2 lugares, se necessário) e adiciona contêineres conforme necessário.

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

Isso coleta logs de nó (altere o namespace "isilon" em dois lugares, se necessário) e adiciona contêineres conforme necessário.

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

Opção
DesdeA coleta de todos os registros pode gerar mais dados do que o necessário. O "--since" pode ser usada para coletar por um período de tempo conhecido. Essa opção é seguida por "5 s", "5 m" ou "5 h" por segundos, minutos e horas, dependendo de até onde a coleta de logs deve ir. Isso também é útil se o problema foi reproduzido, colete os últimos 5 minutos de logs (ou a quantidade de tempo que levou para reproduzir):

Exemplo:

kubectl logs -n isilon isilon-node-xxx driver --since 5m > isilon-node-xxx_driver.txt

Todos os contêineres
Na solução de problemas, colete os logs separadamente, conforme descrito acima. Às vezes, substituindo o nome do contêiner por "--all-containers" para coletar todos os registros dos contêineres do pod pode ser útil.

Nota: Isso pode dificultar a solução de um problema, pois reúne todos os registros no mesmo arquivo.

Exemplo:

kubectl logs -n isilon isilon-node-xxx --all-containers> isilon-node_driver.txt

Outras informações obrigatórias:
Container Orchestrator (K8s, OpenShift etc.) e versão
versão do Kubernetes e versão
do driver tipo
Versão do array ou microcódigo
Sistema operacional e versão dos nós K8

 

Additional Information

Para versões anteriores, a depuração é habilitada editando o conjunto de implementação/daemon.

Para listar as implementações:
# kubectl get deployment -A
NAMESPACE NAME READY UP-TO-DATE AVAILABLE AGE
csi-powerscale isilon-controller 1/1 1 1 14d powermax-controller 1/1 1 1 26d
unity-controller 1/1 1 1 47d

vxflexos-controller 2/2 2 107d
Edite a implementação:
kubectl edit deployment -n
Exemplo:
# kubectl edit deployment -n csi-powerscale isilon-controller
Isso abre um editor vi. Altere o parâmetro X_CSI_DEBUG para "true" (i para insert) e salve (:wq):
        -Nome:
X_CSI_DEBUG valor: "true"
Para o Isilon, o conteúdo da API REST do OneFS também deve ser registrado na depuração definindo como 0 (true):
        -Nome:
X_CSI_VERBOSE valor: "0"Habilitar

registros de depuração do nó do driver CSI editando o conjunto de daemons.
A depuração é habilitada editando o daemonset. 

Para listar os daemonsets:
# kubectl get daemonset -A
NAMESPACE NAME DESIRED CURRENT READY UP-TO-DATE AVAILABLE NODE SELECTOR AGE
csi-powerscale isilon-node 2 2 2 2 14d
powermax-node 2 2 2 2 26d
unity unity-node 2 2 2 2 47d
vxflexos-node 2 2 2 2 107d
Edite o daemonset:
# kubectl edit daemonset -n csi-powerscale isilon-node
Isso abre um editor vi. Altere o parâmetro X_CSI_DEBUG para "true" e salve.
        -Nome:
X_CSI_DEBUG valor: "verdadeiro"

Para o Isilon, o conteúdo da API REST do OneFS também deve ser registrado na depuração definindo como 0 (true):
        -Nome:
X_CSI_VERBOSE valor: "0"


Como os registros de depuração não são retroativos, reproduza o problema, se possível, antes de coletar registros.
Article Properties
Article Number: 000188057
Article Type: How To
Last Modified: 12 Nov 2025
Version:  9
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.