¿Cómo puedo saber qué está usando el disco de mi nodo en Kubernetes?

¿Cómo puedo saber qué está usando el disco de mi nodo en Kubernetes?

Tengo un clúster de Kubernetes de un solo nodo y recibí una notificación de que el uso del disco superaba el 70 %. Cuando obtengo un shell en el nodo y lo ejecuto, dfveo que /está usando el 75% de los bloques disponibles. También veo varias entradas como esta:

overlay         51432064 36953456  12350764  75% /run/containerd/io.containerd.runtime.v2.task/k8s.io/47d405a81214ec9b81ccdffae3674260fa2946d30bdd3b398aa1c2d283c8577e/rootfs
overlay         51432064 36953456  12350764  75% /run/containerd/io.containerd.runtime.v2.task/k8s.io/569d1fe262f6bf1a59ca99163f231a426d2251ac1beabc47a0393066f48b3e0e/rootfs
overlay         51432064 36953456  12350764  75% /run/containerd/io.containerd.runtime.v2.task/k8s.io/32d14863f46e922b7e0b2bbee8a5321c5fabb5811352449d90e486b94161a8cb/rootfs
overlay         51432064 36953456  12350764  75% /run/containerd/io.containerd.runtime.v2.task/k8s.io/8c3fa2f9467e792036782e9587f748f846d61fdc23d9afaecc7e7835e6db4f2b/rootfs
overlay         51432064 36953456  12350764  75% /run/containerd/io.containerd.runtime.v2.task/k8s.io/626b21093218edcda466ce6d4f31e7b975a0c0473d233fc062ed657499541fc9/rootfs
overlay         51432064 36953456  12350764  75% /run/containerd/io.containerd.runtime.v2.task/k8s.io/c1a7484e1beca4ec1299fc5017002d6fecc9890c86e3246a8bdf53fcc45cf576/rootfs

Tengo dos servicios que usan volúmenes persistentes (no volúmenes de host) y no se me ocurre nada más que imágenes de la ventana acoplable que podrían estar consumiendo todo este almacenamiento.

¿Cómo puedo averiguar qué está utilizando tanto almacenamiento en mi clúster de Kubernetes?

Respuesta1

Para saber qué está usando el disco de tu Nodo en Kubernetes, puedes seguir estos pasos:

  1. SSH en su Node.

  2. Instale el ncdupaquete en su Node usando el siguiente comando:

    sudo apt-get install ncdu
    
  3. Ejecute ncduen el directorio raíz de su Nodo usando el comando:

    sudo ncdu /
    
  4. Espere a ncduque termine de escanear el disco de su Node. Mostrará una lista de directorios y sus respectivos tamaños.

  5. Utilice las teclas de flecha para navegar por los directorios y subdirectorios y descubrir cuál ocupa más espacio en el disco.

  6. Una vez que haya identificado el directorio que ocupa más espacio, puede utilizarlo kubectlpara averiguar qué pod lo está utilizando ejecutando el siguiente comando:

    kubectl describe pod <pod-name>
    

    Reemplace <pod-name>con el nombre del pod que desea verificar.

  7. Busque la Volumesección en el resultado del kubectl describe podcomando. Le mostrará el PVC (reclamo de volumen persistente) que está montado en el módulo.

  8. Úselo kubectlpara describir el PVC usando el siguiente comando:

    kubectl describe pvc <pvc-name>
    

    Reemplace <pvc-name>con el nombre del PVC que se montó en la cápsula.

  9. Busque las secciones StorageClassy Access Modesen el resultado del kubectl describe pvccomando. Le indicará qué StorageClass está utilizando el PVC y cómo se accede a él.

  10. Verifique la configuración de StorageClass para ver si hay límites de almacenamiento o cuotas establecidas que puedan estar causando problemas de uso del disco.

Si sigue estos pasos, debería poder identificar qué pod está utilizando más espacio en disco en su nodo en Kubernetes.

información relacionada