Esta página inclui etapas de solução de problemas para erros e problemas comuns ao usar o driver CSI do Google Cloud Managed Lustre no Google Kubernetes Engine.
Antes de seguir as etapas de solução de problemas nesta seção, consulte as limitações ao se conectar ao Managed Lustre do GKE.
Capacidade mínima de instância atualizada
A capacidade mínima das instâncias do Managed Lustre foi atualizada para 9.000 GiB. Para criar instâncias de 9.000 GiB usando o
driver CSI do Managed Lustre, faça upgrade da versão do cluster para
1.34.0-gke.2285000 ou mais recente.
Nível de desempenho incorreto para instâncias do Lustre provisionadas dinamicamente
Ao provisionar dinamicamente uma instância do Lustre, a criação da instância falha
com um erro InvalidArgument para PerUnitStorageThroughput,
independente do valor perUnitStorageThroughput especificado na solicitação de API.
Isso afeta as versões do GKE 1.33 anteriores à 1.33.4-gke.1036000.
Alternativa:
Faça upgrade do cluster do GKE para a versão 1.33.4-gke.1036000 ou mais recente. Se você estiver usando o canal estável, talvez uma versão mais recente ainda não esteja disponível. Nesse caso, selecione manualmente uma versão dos canais Regular ou Rápido que inclua a correção.
Portas de comunicação do Managed Lustre
O driver CSI do Managed Lustre usa portas diferentes para comunicação com instâncias do Managed Lustre, dependendo da versão do cluster do GKE e das configurações do Managed Lustre existentes.
Porta padrão (
988): para novos clusters do GKE que executam a versão1.33.2-gke.4780000ou mais recente, o driver usa a porta988para comunicação do Lustre por padrão.Porta legada (
6988): o driver usa a porta6988nos seguintes cenários:- Versões anteriores do GKE:se o cluster do GKE
executar uma versão anterior a
1.33.2-gke.4780000, a flag--enable-legacy-lustre-portserá necessária ao ativar o driver CSI. Ativar essa flag contorna um conflito de porta com ogke-metadata-serverem nós do GKE. - Instâncias do Managed Lustre com suporte do GKE:se você estiver se conectando a uma instância do Managed Lustre criada com a flag
--gke-support-enabled, inclua--enable-legacy-lustre-portao ativar o driver CSI, independente da versão do cluster. Sem essa flag, o cluster do GKE não vai montar a instância do Lustre.
Para mais informações sobre como ativar o driver CSI com a porta legada, consulte Portas de comunicação do Lustre.
- Versões anteriores do GKE:se o cluster do GKE
executar uma versão anterior a
Consultas de registros
Para verificar os registros, execute a seguinte consulta no Análise de registros.
Para retornar os registros do servidor de nós do driver CSI do Managed Lustre:
resource.type="k8s_container"
resource.labels.pod_name=~"lustre-csi-node*"
Resolver problemas de provisionamento de volume
Se o PersistentVolumeClaim (PVC) permanecer no estado Pending e nenhum PersistentVolume (PV) for criado após 20 a 30 minutos, talvez tenha ocorrido um erro.
Verifique os eventos do PVC:
kubectl describe pvc PVC_NAMESe o erro indicar problemas de configuração ou argumentos inválidos, verifique os parâmetros StorageClass.
Recrie a PVC.
Se o problema persistir, entre em contato com o Cloud Customer Care.
Resolver problemas de montagem de volume
Depois que o pod é programado para um nó, o volume é montado. Se isso falhar, confira os eventos do pod e os registros do kubelet.
kubectl describe pod POD_NAME
Problemas de ativação do driver CSI
Sintoma:
MountVolume.MountDevice failed for volume "yyy" : kubernetes.io/csi: attacher.MountDevice failed to create newCsiDriverClient: driver name lustre.csi.storage.gke.io not found in the list of registered CSI drivers
ou
MountVolume.SetUp failed for volume "yyy" : kubernetes.io/csi: mounter.SetUpAt failed to get CSI client: driver name lustre.csi.storage.gke.io not found in the list of registered CSI drivers
Causa:o driver CSI não está ativado ou ainda não está em execução.
Resolução:
- Verifique se o driver CSI está ativado.
- Se o cluster foi escalonado ou atualizado recentemente, aguarde alguns minutos para que o driver fique funcional.
- Se o erro persistir, verifique os registros de
lustre-csi-nodepara "Operation not permitted". Isso indica que a versão do nó é muito antiga para oferecer suporte ao Managed Lustre. Para resolver isso, faça upgrade do pool de nós para a versão1.33.2-gke.1111000ou mais recente. - Se os registros mostrarem "LNET_PORT mismatch", faça upgrade do pool de nós para garantir que os módulos do kernel Lustre compatíveis estejam instalados.
O ponto de montagem já existe
Sintoma:
MountVolume.MountDevice failed for volume "yyy" : rpc error: code = AlreadyExists
desc = A mountpoint with the same lustre filesystem name "yyy" already exists on
node "yyy". Please mount different lustre filesystems
Causa:não é possível montar vários volumes de diferentes instâncias gerenciadas do Lustre com o mesmo nome de sistema de arquivos em um único nó.
Resolução:use um nome de sistema de arquivos exclusivo para cada instância do Managed Lustre.
Falha na montagem: arquivo ou diretório não encontrado
Sintoma:
MountVolume.MountDevice failed for volume "yyy" : rpc error: code = Internal desc = Could not mount ... failed: No such file or directory
Causa:o nome do sistema de arquivos especificado está incorreto ou não existe.
Resolução:verifique se o fs_name na configuração da StorageClass ou do PV
corresponde à instância do Managed Lustre.
Falha na montagem: erro de entrada/saída
Sintoma:
MountVolume.MountDevice failed for volume "yyy" : rpc error: code = Internal desc = Could not mount ... failed: Input/output error
Causa:o cluster não consegue se conectar à instância do Managed Lustre.
Resolução:
- Verifique o endereço IP da instância do Managed Lustre.
- Verifique se o cluster do GKE e a instância do Managed Lustre estão na mesma rede VPC ou se têm peering correto.
Erros internos
Sintoma:rpc error: code = Internal desc = ...
Resolução:se o erro persistir, entre em contato com o Cloud Customer Care.
Resolver problemas de desmontagem de volume
Sintoma:
UnmountVolume.TearDown failed for volume "yyy" : rpc error: code = Internal desc = ...
Resolução:
Forçar a exclusão do pod:
kubectl delete pod POD_NAME --forceSe o problema persistir, entre em contato com o Cloud Customer Care.
Resolver problemas na exclusão de volumes
Se o PV permanecer no estado "Liberado" por um período prolongado (por exemplo, mais de uma hora) após a exclusão do PVC, entre em contato com o Cloud Customer Care.
Resolver problemas de expansão de volume
PVC preso em ExternalExpanding
Sintoma:o status do PVC não muda para Resizing, e os eventos mostram
ExternalExpanding.
Causa:o campo allowVolumeExpansion pode estar ausente ou definido como false.
Resolução:verifique se o StorageClass tem allowVolumeExpansion: true.
kubectl get storageclass STORAGE_CLASS_NAME -o yaml
Falha na expansão: argumento inválido
Sintoma:VolumeResizeFailed: rpc error: code = InvalidArgument ...
Causa:o tamanho solicitado é inválido (por exemplo, não é um múltiplo da taxa de aprendizado ou está fora dos limites).
Resolução:verifique os intervalos de capacidade válidos e atualize o PVC com um tamanho válido.
Falha na expansão: erro interno
Sintoma:VolumeResizeFailed ... rpc error: code = Internal
Resolução:repita a expansão reaplicando o PVC. Se ele falhar repetidamente, entre em contato com o Cloud Customer Care.
Prazo excedido
Sintoma:VolumeResizeFailed com DEADLINE_EXCEEDED.
Causa:a operação está demorando mais do que o esperado, mas ainda pode estar em andamento.
Resolução:Aguarde a conclusão da operação. O redimensionador vai tentar de novo automaticamente. Se ele ficar travado por muito tempo (por exemplo, mais de 90 minutos), entre em contato com o suporte.
Cota excedida
Sintoma:a expansão falha devido a limites de cota.
Resolução:solicite um aumento de cota ou peça um aumento de capacidade menor.