Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Se aplica a: AKS en Azure Local
Síntomas
Si ejecuta comandos kubectl y tiene problemas, es posible que vea errores como:
kubectl get ns
Error from server (InternalError): an error on the server ("Internal Server Error: \"/api/v1/namespaces?limit=500\": unknown") has prevented the request from succeeding (get namespaces)
Cuando se usa SSH en la máquina virtual del plano de control, es posible que observe que la máquina virtual del plano de control se quedó sin espacio en disco, específicamente en la partición /dev/sda2 . Esto se debe a la acumulación de registros de auditoría kube-apiserver en el directorio /var/log/kube-apiserver , que puede consumir aproximadamente 90 GB de espacio en disco.
clouduser@moc-laiwyj6tly6 [ /var/log/kube-apiserver ]$ df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 4.0M 0 4.0M 0% /dev
tmpfs 3.8G 84K 3.8G 1% /dev/shm
tmpfs 1.6G 179M 1.4G 12% /run
tmpfs 4.0M 0 4.0M 0% /sys/fs/cgroup
/dev/sda2 99G 99G 0 100% /
tmpfs 3.8G 0 3.8G 0% /tmp
tmpfs 769M 0 769M 0% /run/user/1002
clouduser@moc-laiwyj6tly6 [ /var/log/kube-apiserver ]$ sudo ls -l /var/log/kube-apiserver|wc -l
890
clouduser@moc-laiwyj6tly6 [ /var/log/kube-apiserver ]$ sudo du -h /var/log/kube-apiserver
87G /var/log/kube-apiserver
El problema se produce porque el --audit-log-maxbackup valor se establece en 0. Esta configuración permite que los registros de auditoría se acumulan sin ningún límite y, finalmente, rellenan el disco.
Mitigación
Este problema se corrigió en AKS en Azure Local, versión 2507. Actualice la implementación local de Azure a la compilación 2507.
Solución alternativa para las versiones 2503 o 2504 de Azure Local
Para resolver el problema temporalmente, debe limpiar manualmente los registros de auditoría antiguos. Siga estos pasos:
- Conéctate por SSH a la máquina virtual (VM) del plano de control del clúster AKS Arc.
- Quite los registros de auditoría antiguos de la carpeta /var/log/kube-apiserver .
- Si tiene varios nodos del plano de control, debe repetir este proceso en cada máquina virtual del plano de control.
SSH a la VM del plano de control y vaya al directorio de registros kube-apiserver:
cd /var/log/kube-apiserver
Quite los archivos de registro de auditoría antiguos:
rm audit-*.log
Salga de la sesión SSH:
exit