Compartir a través de


Solución de problemas de copia de seguridad y restauración de Azure Kubernetes Service

En este artículo se proporcionan pasos para la solución de problemas que le ayudarán a resolver los errores de copia de seguridad, restauración y administración de Azure Kubernetes Service (AKS).

Resolución de errores de instalación de la extensión de copia de seguridad de AKS

Escenario 1

Mensaje de error:

{Helm installation from path [] for release [azure-aks-backup] failed with the following error: err [release azure-aks-backup failed, and has been uninstalled due to atomic being set: failed post-install: timed out waiting for the condition]} occurred while doing the operation: {Installing the extension} on the config"`

Causa: la extensión se instala correctamente, pero los pods no se generan porque el proceso y la memoria necesarios no están disponibles para los pods.

Resolución: para resolver el problema, aumente el número de nodos del clúster, lo que permite que haya suficiente proceso y memoria disponibles para que los pods se generen. Para escalar el grupo de nodos en Azure Portal, siga estos pasos:

  1. En Azure Portal, abra el clúster de AKS.
  2. Vaya a Grupos de nodos en Configuración.
  3. Seleccione Escalar grupo de nodos y, a continuación, actualice los valores mínimo y máximo en el intervalo de recuento de nodos.
  4. Seleccione Aplicar.

Escenario 2

Mensaje de error:

BackupStorageLocation "default" is unavailable: rpc error: code = Unknown desc = azure.BearerAuthorizer#WithAuthorization: Failed to refresh the Token for request to https://management.azure.com/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/AzureBackupRG_westeurope_1/providers/Microsoft.Storage/storageAccounts/devhayyabackup/listKeys?%24expand=kerb&api-version=2019-06-01: StatusCode=404 -- Original Error: adal: Refresh request failed. Status Code = '404'. Response body: no azure identity found for request clientID 4e95##### REDACTED #####0777`

Endpoint http://169.254.169.254/metadata/identity/oauth2/token?api-version=2018-02-01&client_id=4e95dcc5-a769-4745-b2d9-

Causa: al habilitar la identidad administrada del pod en el clúster de AKS, se añade una excepción AzurePodIdentityException denominada aks-addon-exception al espacio de nombres kube-system. Una AzurePodIdentityException permite que los pods con determinadas etiquetas accedan al punto de conexión de Azure Instance Metadata Service (IMDS) no están interceptados por el servidor NMI.

Los pods de extensión no están exentos y requieren que la identidad del pod de Microsoft Entra se habilite manualmente.

Resolución: cree una excepción de identidad de pod en el clúster de AKS (que solo funciona para el espacio de nombres dataprotection-microsoft y para no kube-system). Más información.

  1. Ejecute el siguiente comando:

    az aks pod-identity exception add --resource-group shracrg --cluster-name shractestcluster --namespace dataprotection-microsoft --pod-labels app.kubernetes.io/name=dataprotection-microsoft-kubernetes
    
  2. Para comprobar Azurepodidentityexceptions en el clúster, ejecute el siguiente comando:

    kubectl get Azurepodidentityexceptions --all-namespaces
    
  3. Para asignar el rol Colaborador de datos de Storage Blob a la identidad de extensión, ejecute el siguiente comando:

    Nota:

    Asegúrese de usar la versión más reciente del script de Terraform. Más información.

    az role assignment create --assignee-object-id $(az k8s-extension show --name azure-aks-backup --cluster-name aksclustername --resource-group aksclusterresourcegroup --cluster-type managedClusters --query aksAssignedIdentity.principalId --output tsv) --role 'Storage Blob Data Contributor' --scope /subscriptions/subscriptionid/resourceGroups/storageaccountresourcegroup/providers/Microsoft.Storage/storageAccounts/storageaccountname
    

Escenario 3

Mensaje de error:

{"Message":"Error in the getting the Configurations: error {Post \https://centralus.dp.kubernetesconfiguration.azure.com/subscriptions/ subscriptionid /resourceGroups/ aksclusterresourcegroup /provider/managedclusters/clusters/ aksclustername /configurations/getPendingConfigs?api-version=2021-11-01\: dial tcp: lookup centralus.dp.kubernetesconfiguration.azure.com on 10.63.136.10:53: no such host}","LogType":"ConfigAgentTrace","LogLevel":"Error","Environment":"prod","Role":"ClusterConfigAgent","Location":"centralus","ArmId":"/subscriptions/ subscriptionid /resourceGroups/ aksclusterresourcegroup /providers/Microsoft.ContainerService/managedclusters/ aksclustername ","CorrelationId":"","AgentName":"ConfigAgent","AgentVersion":"1.8.14","AgentTimestamp":"2023/01/19 20:24:16"}`

Causa: se requieren reglas de aplicación/FQDN específicas para usar extensiones de clúster en los clústeres de AKS. Más información.

Este error aparece debido a la ausencia de estas reglas FQDN, por lo que la información de configuración del servicio Extensiones de clúster no estaba disponible.

Resolución: para resolver el problema, debe crear una invalidación de CoreDNS-custom para que el punto de conexión de DP pase a través de la red pública.

  1. Obtenga YAML personalizado de CoreDNS existente en el clúster (guárdelo en el entorno local como referencia más adelante):

    kubectl get configmap coredns-custom -n kube-system -o yaml
    
  2. Invalide la asignación del punto de conexión de DP centralus a la dirección IP pública (use el código YAML siguiente):

    apiVersion: v1
    kind: ConfigMap
    metadata:
      name: coredns-custom 
      namespace: kube-system
    data:
        aksdp.override: |
              hosts { 
                  20.40.200.153 centralus.dp.kubernetesconfiguration.azure.com
                  fallthrough
               }
    

    Ahora ejecute el siguiente comando para aplicar el archivo yaml de actualización:

    kubectl apply -f corednsms.yaml
    
  3. Para forzar la recarga de pods coredns, ejecute el siguiente comando:

    kubectl delete pod --namespace kube-system -l k8s-app=kube-dns
    
  4. Para poder NSlookup desde el pod ExtensionAgent comprobar si coreDNS-custom funciona, ejecute el siguiente comando:

    kubectl exec -i -t pod/extension-agent-<pod guid that's there in your cluster> -n kube-system -- nslookup centralus.dp.kubernetesconfiguration.azure.com
    
  5. Para comprobar los registros del pod ExtensionAgent, ejecute el siguiente comando:

    kubectl logs pod/extension-agent-<pod guid that’s there in your cluster> -n kube-system --tail=200
    
  6. Elimine y vuelva a instalar la extensión de copia de seguridad para iniciar la copia de seguridad.

Escenario 4

Mensaje de error:

"message": "Error: [ InnerError: [Helm installation failed : Unable to create/update Kubernetes resources for the extension : Recommendation Please check that there are no policies blocking the resource creation/update for the extension : InnerError [release azure-aks-backup failed, and has been uninstalled due to atomic being set: failed pre-install: job failed: BackoffLimitExceeded]]] occurred while doing the operation : [Create] on the config, For general troubleshooting visit: https://aka.ms/k8s-extensions-TSG, For more application specific troubleshooting visit: Facing trouble? Common errors and potential fixes are detailed in the Kubernetes Backup Troubleshooting Guide, available at https://www.aka.ms/aksclusterbackup",

Se produce un error en el trabajo de instalación previa de los CRD de actualización en el clúster.

Causa: Los pods no se pueden comunicar con kube API Server

Depurar

  1. Compruebe si hay eventos en el clúster relacionados con el problema de generación de pods.
kubectl events -n dataprotection-microsoft
  1. Compruebe si en los pods hay CRD de dataprotection.
kubectl get pods -A | grep "dataprotection-microsoft-kubernetes-agent-upgrade-crds"
  1. Compruebe los registros de los pods.
kubectl logs -f --all-containers=true --timestamps=true -n dataprotection-microsoft <pod-name-from-prev-command>

Mensaje de registro de ejemplo:

2024-08-09T06:21:37.712646207Z Unable to connect to the server: dial tcp: lookup aks-test.hcp.westeurope.azmk8s.io: i/o timeout
2024-10-01T11:26:17.498523756Z Unable to connect to the server: dial tcp 10.146.34.10:443: i/o timeout

Resolución: en este caso, hay una directiva de red o de Calico, o un grupo de seguridad de red que no han permitido que los pods de dataprotection-microsoft se comunicaran con el servidor de API. Debería permitir el espacio de nombres dataprotection-microsoft y luego reinstalar la extensión.

Escenario 5

Agente de Extensión no puede comunicarse con los puntos de conexión del Plano de Datos, lo que provoca que no se implementen los pods de extensión de respaldo.

Mensaje de error: El agente de extensión del clúster de AKS no se puede conectar a los puntos de conexión del plano de datos del servicio de configuración de Azure Kubernetes *.dp.kubernetesconfiguration.azure.com en su región. Este error se indica revisando los registros del extension-agent pod. Es probable que vea errores repetidos de 403 para las solicitudes a los puntos de conexión del plano de datos

Error code: 403  
Message: This traffic is not authorized

Esto suele significar que el tráfico del agente de extensión se está bloqueando o carece de la autorización necesaria para llegar al servicio de Azure. Este agente de extensión es necesario para instalar y ejecutar la extensión de copia de seguridad en el clúster de AKS.

Causa Este error se produce debido a un conflicto en la resolución dns privada cuando Kubernetes habilitado para Azure Arc y un clúster administrado de AKS comparten la misma red virtual (VNet) o servidor DNS privado:

La red virtual compartida (o zona DNS privada) contiene un punto de conexión privado existente para Kubernetes habilitado para Azure Arc.

Como resultado, el punto de conexión del plano de datos usado por el agente de extensión de AKS (por ejemplo, *.dp.kubernetesconfiguration.azure.com) se resuelve en una dirección IP privada (por ejemplo, 10.x.x.x) en lugar de la dirección IP pública prevista.

Este error de enrutamiento hace que el agente de extensión de AKS envíe tráfico a un punto de conexión privado no deseado, lo que provoca errores no autorizados 403. Puede comprobar la dirección IP resuelta del punto de conexión del plano de datos desde el clúster de AKS mediante el siguiente comando:

kubectl exec -it -n kube-system extension-agent-<podGuid> --nslookup <region>.dp.kubernetesconfiguration.azure.com

Reemplace por region su región específica de Azure (por ejemplo, eastus, westeurope).

Resolución Para resolver este problema, tenga en cuenta los siguientes enfoques:

  • Uso de redes virtuales independientes: En caso de que use clústeres de Kubernetes y AKS habilitados para Azure Arc, impleméntelos en redes virtuales independientes para evitar conflictos de resolución de DNS causados por puntos de conexión privados compartidos.

  • Configuración de la invalidación de CoreDNS: Invalide la configuración de CoreDNS en el clúster de AKS para resolver explícitamente el punto de conexión del plano de datos de extensión en su dirección IP pública. Refiérase al escenario 3 en la documentación para obtener pasos detallados sobre cómo configurar una sobrescritura de CoreDNS para la extensión.

  • Comprobar la resolución de IP pública: Identifique la dirección IP pública correcta del punto de conexión del plano de datos de extensión mediante el comando nslookup. Reemplace la región por la región del clúster de AKS:

nslookup eastus2euap.dp.kubernetesconfiguration.azure.com

Errores relacionados con la instalación de la extensión de Backup después de la instalación

Estos códigos de error aparecen debido a problemas en la extensión de Backup instalada en el clúster de AKS.

KubernetesBackupListExtensionsError:

Causa: el almacén de Backup como parte de una validación comprueba si el clúster tiene instalada la extensión de Backup. Para ello, la MSI del almacén necesita un permiso de lector en el clúster de AKS, lo que le permite enumerar todas las extensiones instaladas.

Acción recomendada: reasigne el rol Lector a la MSI del almacén (quite la asignación de roles existente y vuelva a asignar el rol Lector), ya que al rol Lector asignado le falta el permiso de extensión de lista. Si se produce un error en la reasignación, use otro almacén de Backup para configurar la copia de seguridad.

UserErrorKubernetesBackupExtensionNotFoundError

Causa: el almacén de Backup como parte de la validación comprueba si el clúster tiene instalada la extensión de Backup. El almacén realiza una operación para enumerar las extensiones instaladas en el clúster. Si la extensión de Backup está ausente en la lista, aparece este error.

Acción recomendada: use el cliente CL o Azure Portal para eliminar la extensión y, a continuación, vuelva a instalarla.

UserErrorKubernetesBackupExtensionHasErrors

Causa: la extensión de Backup instalada en el clúster tiene algunos errores internos.

Acción recomendada: use el cliente CL o Azure Portal para eliminar la extensión y, a continuación, vuelva a instalarla.

Error de usuario: No se ha encontrado la identidad de la extensión de respaldo de Kubernetes

Causa: la copia de seguridad de AKS requiere una extensión de Backup instalada en el clúster. La extensión junto con su instalación tiene una identidad de usuario creada denominada "MSI de la extensión". Este MSI se crea en el grupo de recursos que comprende los grupos de nodos para el clúster de AKS. Este MSI obtiene los roles necesarios asignados para acceder a la ubicación de almacenamiento de copia de seguridad. El código de error sugiere que falta la identidad de la extensión.

Acción recomendada: use la CLI o el cliente de Azure Portal para eliminar la extensión y, a continuación, vuelva a instalarla. Se crea una nueva identidad junto con la extensión.

KubernetesBackupCustomResourcesTrackingTimeOutError

Causa: Azure Backup para AKS requiere que se instale una extensión de Backup en el clúster. Para realizar las operaciones de copia de seguridad y restauración, los recursos personalizados se crean en el clúster. Los pods de extensión que realizan operaciones relacionadas con la copia de seguridad a través de estas entidades de certificación. Este error se produce cuando la extensión no puede actualizar el estado de estas entidades de certificación.

Acción recomendada: es necesario comprobar el estado de la extensión mediante la ejecución del comando kubectl get pods -n dataprotection.microsoft. Si los pods no están en estado de ejecución, aumente el número de nodos del clúster en 1 o aumente los límites de proceso. A continuación, espere unos minutos y vuelva a ejecutar el comando, que debe cambiar el estado de los pods a en ejecución. Si la incidencia persiste, elimine la extensión y vuelva a instalarla.

UserErrorBackupPluginPodRestartedDuringBackup

Causa: Azure Backup para AKS utiliza los pods implementados en el clúster de AKS como parte de la extensión de copia de seguridad en el espacio de nombres dataprotection-microsoft. Para realizar operaciones de copia de seguridad y restauración, estos pods tienen requisitos específicos de CPU y memoria.

       1. Memory: requests - 128Mi, limits - 1280Mi
       2. CPU: requests - 500m, limits - 1000m

Sin embargo, si el número de recursos del clúster supera los 1000, los pods pueden requerir cpu adicional y memoria más allá de la reserva predeterminada. Si los recursos necesarios superan los límites asignados, puede aparecer un error UserErrorBackupPluginPodRestartedDuringBackup debido al error OOMKilled (memoria insuficiente) durante la operación de copia de seguridad.

Acción recomendada: para garantizar que las operaciones de copia de seguridad y restauración se realicen correctamente, actualice manualmente la configuración de recursos de los pods de extensión siguiendo estos pasos:

  1. Abra el clúster de AKS en Azure Portal.

    Captura de pantalla que muestra el clúster de AKS en Azure Portal.

  2. Vaya a Extensiones y aplicaciones en Configuración en el panel izquierdo.

    Captura de pantalla que muestra cómo seleccionar Extensiones y aplicaciones.

  3. Haga clic en la extensión titulada "azure-aks-backup".

    Captura de pantalla que muestra cómo abrir la configuración de la extensión de copia de seguridad.

  4. Desplácese hacia abajo, agregue un nuevo valor en opciones de configuración y, a continuación, haga clic en Guardar.

    resources.limits.memory : 4400Mi

    Captura de pantalla que muestra cómo agregar valores en las opciones de configuración.

Después de aplicar los cambios, espere a que se ejecute una copia de seguridad programada o inicie una copia de seguridad a petición. Si sigue experimentando un error OOMKilled, repita los pasos anteriores y aumente gradualmente los límites de memoria y, si aún persiste, aumente resources.limits.cpu también el parámetro.

Nota:

Si el nodo en el que se aprovisiona el pod de extensión no tiene la CPU o memoria necesaria y solo ha actualizado los límites de recursos, el pod puede eliminarse repetidamente. Para resolverlo, actualice los valores de configuración mediante resources.requests.cpu y resources.requests.memory. Esto garantiza que el pod esté programado en un nodo que cumpla los requisitos de recursos solicitados.

UserErrorBackupPluginPodRestartedDuringRestore

Causa: Azure Backup para AKS utiliza los pods implementados en el clúster de AKS como parte de la extensión de copia de seguridad en el espacio de nombres dataprotection-microsoft. Para realizar operaciones de copia de seguridad y restauración, estos pods tienen requisitos específicos de CPU y memoria.

       1. Memory: requests - 128Mi, limits - 1280Mi
       2. CPU: requests - 500m, limits - 1000m

Sin embargo, si el número de recursos del clúster supera los 1000, los pods pueden requerir cpu adicional y memoria más allá de la reserva predeterminada. Si los recursos necesarios superan los límites asignados, puede aparecer un error UserErrorBackupPluginPodRestartedDuringRestore debido al error OOMKilled (memoria insuficiente) durante la operación de restauración.

Acción recomendada: para garantizar que las operaciones de copia de seguridad y restauración se realicen correctamente, actualice manualmente la configuración de recursos de los pods de extensión siguiendo estos pasos:

  1. Abra el clúster de AKS en Azure Portal.

    Captura de pantalla que muestra el clúster de AKS en Azure Portal.

  2. Vaya a Extensiones y aplicaciones en Configuración en el panel izquierdo.

    Captura de pantalla que muestra cómo seleccionar Extensiones y aplicaciones.

  3. Haga clic en la extensión titulada "azure-aks-backup".

    Captura de pantalla que muestra cómo abrir la configuración de la extensión de copia de seguridad.

  4. Desplácese hacia abajo, agregue un nuevo valor en opciones de configuración y, a continuación, haga clic en Guardar.

    resources.limits.memory : 4400Mi

    Captura de pantalla que muestra cómo agregar valores en las opciones de configuración.

Después de aplicar los cambios, espere a que se ejecute una copia de seguridad programada o inicie una copia de seguridad a petición. Si sigue experimentando un error OOMKilled, repita los pasos anteriores y aumente gradualmente los límites de memoria y, si aún persiste, aumente resources.limits.cpu también el parámetro.

Nota:

Si el nodo en el que se aprovisiona el pod de extensión no tiene la CPU o memoria necesaria y solo ha actualizado los límites de recursos, el pod puede eliminarse repetidamente. Para resolverlo, actualice los valores de configuración mediante resources.requests.cpu y resources.requests.memory. Esto garantiza que el pod esté programado en un nodo que cumpla los requisitos de recursos solicitados.

Operación de eliminación de copia de seguridad fallida en BackupPlugin

Causa: la extensión de Backup debe ejecutarse para eliminar las copias de seguridad.

Acción recomendada: si el clúster se está ejecutando, compruebe si la extensión se está ejecutando en un estado correcto. Compruebe si los pods de extensión se están generando; si no es así, aumente los nodos. Si se produce un error, intente eliminar y reinstalar la extensión. Si se elimina el clúster de copia de seguridad, elimine manualmente las instantáneas y los metadatos.

ExtensionTimedOut AwaitForBackupItemSync

Causa: la extensión de Backup espera a que los elementos de copia de seguridad se sincronicen con la cuenta de almacenamiento.

Acción recomendada: si aparece este código de error, vuelva a intentar la operación de copia de seguridad o vuelva a instalar la extensión.

Errores basados en la ubicación de almacenamiento de copia de seguridad

Estos códigos de error aparecen debido a problemas basados en la extensión de Backup instalada en el clúster de AKS.

UserErrorDeleteBackupFailedBackupStorageLocationReadOnly

Causa: la cuenta de almacenamiento proporcionada como entrada durante la instalación de la extensión de Backup está en estado de solo lectura, lo que no permite eliminar los datos de copia de seguridad del contenedor de blobs.

Acción recomendada: cambie el estado de la cuenta de almacenamiento de solo lectura a escritura.

UserErrorDeleteBackupFailedBackupStorageLocationNotFound

Causa: durante la instalación de la extensión, se proporciona una ubicación de almacenamiento de copia de seguridad como entrada que incluye una cuenta de almacenamiento y un contenedor de blobs. Este error aparece si la ubicación se elimina o se agrega incorrectamente durante la instalación de la extensión.

Acción recomendada: elimine la extensión de Backup y vuelva a instalarla con la cuenta de almacenamiento correcta y el contenedor de blobs como entrada.

UserErrorBackupFailedBackupStorageLocationReadOnly

Causa: la cuenta de almacenamiento proporcionada como entrada durante la instalación de la extensión de copia de seguridad está en estado de solo lectura, que no permite escribir datos de copia de seguridad en el contenedor de blobs.

Acción recomendada: cambie el estado de la cuenta de almacenamiento de solo lectura a escritura.

UserErrorNoDefaultBackupStorageLocationFound

Causa: durante la instalación de la extensión, se proporciona una ubicación de almacenamiento de copia de seguridad como entrada, que incluye una cuenta de almacenamiento y un contenedor de blobs. Este error aparece si la ubicación se elimina o se introduce incorrectamente durante la instalación de la extensión.

Acción recomendada: elimine la extensión de Backup y vuelva a instalarla con la cuenta de almacenamiento correcta y el contenedor de blobs como entrada.

UserErrorExtensionMSIMissingPermissionsOnBackupStorageLocation

Causa: la extensión de Backup debe tener el rol Colaborador de datos de Storage Blob en la ubicación de almacenamiento de copia de seguridad (cuenta de almacenamiento). La identidad de extensión obtiene este rol asignado.

Acción recomendada: si falta este rol, use Azure Portal o la CLI para reasignar este permiso que falta en la cuenta de almacenamiento.

UserErrorBackupStorageLocationNotReady

Causa: durante la instalación de la extensión, se proporciona una ubicación de almacenamiento de copia de seguridad como entrada que incluye una cuenta de almacenamiento y un contenedor de blobs. La extensión de Backup debe tener el rol Colaborador datos de Storage Blob en la ubicación de almacenamiento de copia de seguridad (cuenta de almacenamiento). La identidad de extensión obtiene este rol asignado.

Acción recomendada: aparece el error si la identidad de extensión no tiene permisos adecuados para acceder a la cuenta de almacenamiento. Este error aparece si la extensión de copia de seguridad de AKS se instala la primera vez que se configura la operación de protección. Esto sucede durante el tiempo necesario para que los permisos concedidos se propaguen a la extensión de copia de seguridad de AKS. Como solución alternativa, espere una hora y vuelva a intentar la configuración de protección. De lo contrario, use Azure Portal o la CLI para reasignar este permiso que falta en la cuenta de almacenamiento.

UserErrorSnapshotResourceGroupHasLocks

Causa: este código de error aparece cuando se ha aplicado un bloqueo de eliminación o lectura en el grupo de recursos de instantánea proporcionado como entrada para la extensión de copia de seguridad.

Acción recomendada: en caso de que configure una nueva instancia de copia de seguridad, use un grupo de recursos sin un bloqueo de eliminación o lectura. Si la instancia de copia de seguridad ya está configurada, quite el bloqueo del grupo de recursos de instantáneas.

KubernetesBackupGenericWarning

Causa: este código de error indica que no se pudo realizar una copia de seguridad o restaurar un recurso de Kubernetes, normalmente debido a problemas de validación o dependencia dentro del clúster.

Un escenario comúnmente observado es un fallo durante la restauración de recursos Ingress debido a problemas con la validación de los webhooks. Falta un servicio necesario (por ejemplo, fabp-ingress-nginx-controller-admission), lo que impide que el webhook validate.nginx.ingress.kubernetes.io se ejecute correctamente. La configuración del webhook de validación existe, pero hace referencia a un servicio inexistente o mal configurado. Los problemas de resolución de DNS impiden que el webhook llegue al punto de conexión previsto. El clúster usa webhooks de admisión personalizados que no se han creado o vuelto a crear antes de la restauración. La configuración del webhook es obsoleta o innecesaria para el estado del clúster restaurado.

Acción recomendada:

  • Compruebe si el servicio que falta fabp-ingress-nginx-controller-admission existe mediante:

    kubectl get svc -n ingress-basic
    
  • Si falta el servicio, compruebe las configuraciones de implementación y vuelva a crearla si es necesario.

  • Investigue los posibles problemas de resolución de DNS mediante la ejecución de:

    kubectl get endpoints -n ingress-basic
    
    nslookup fabp-ingress-nginx-controller-admission.ingress-basic.svc.cluster.local
    
  • Si la validación del webhook no es necesaria, considere la posibilidad de quitarla mediante:

    kubectl delete validatingwebhookconfiguration
    
  • Enumerar todas las configuraciones de webhook con:

    kubectl get validatingwebhookconfigurations
    
  • Si se resuelve el problema, restaure manualmente la entrada aplicando su copia de seguridad de YAML:

    kubectl apply -f
    

Nota:

Esta advertencia puede surgir de varias causas. Si los pasos anteriores no resuelven el problema, consulte los registros del controlador de Kubernetes y la configuración del webhook para obtener mensajes de error más específicos.

Errores basados en copias de seguridad de almacén

Estos códigos de error pueden aparecer mientras habilita la copia de seguridad de AKS para almacenar copias de seguridad en un almacén de datos estándar del almacén.

DppUserErrorVaultTierPolicyNotSupported

Causa: este código de error aparece cuando se crea una directiva de copia de seguridad con una regla de retención definida para un almacén de datos estándar para un almacén de Backup en una región en la que no se admite este almacén de datos.

Acción recomendada: actualice la regla de retención con la duración estándar del almacén definida en Azure Portal:

  1. Seleccione el icono Editar junto a la regla.

    Captura de pantalla que muestra cómo editar la duración de retención de las copias de seguridad de AKS.

  2. Desactive la casilla situada junto al estándar de almacén y, a continuación, seleccione Actualizar.

    Captura de pantalla que muestra cómo desactivar la casilla del almacén estándar.

  3. Cree una directiva de copia de seguridad para la copia de seguridad de nivel operativo (solo instantáneas para el clúster de AKS).

Trabajos de copia de seguridad y restauración de AKS completados con advertencias

UserErrorPVSnapshotDisallowedByPolicy

Código de error: UserErrorPVSnapshotDisallowedByPolicy

Causa: se asigna una directiva de Azure sobre la suscripción que hace que el controlador de CSI deje de tomar la instantánea del volumen.

Acción recomendada: elimine la directiva de Azure cesando la operación de instantánea de disco, y después realice una copia de seguridad bajo demanda.

UserErrorPVSnapshotLimitReached

Código de error: UserErrorPVSnapshotLimitReached

Causa: hay un número limitado de instantáneas para un volumen persistente que puede existir en un momento dado. En el caso de los volúmenes persistentes basados en discos de Azure, el límite es de 500 instantáneas. Este error aparece cuando no se toman instantáneas para volúmenes persistentes específicos debido a la existencia de instantáneas superiores a los límites admitidos.

Acción recomendada: actualice la directiva de copia de seguridad para reducir la duración de retención y esperar a que el almacén de Backup elimine los puntos de recuperación anteriores.

CSISnapshottingTimedOut

Código de error: CSISnapshottingTimedOut

Causa: se ha producido un error en la instantánea porque el controlador de CSI se agota el tiempo de espera para capturar el identificador de instantánea.

Acción recomendada: revise los registros y vuelva a intentar la operación para obtener instantáneas correctas mediante la ejecución de una copia de seguridad a petición o espere a la siguiente copia de seguridad programada.

UserErrorHookExecutionFailed

Código de error: UserErrorHookExecutionFailed

Causa: cuando los enlaces aplicados para ejecutarse junto con copias de seguridad y restauraciones han encontrado un error y no se aplican correctamente.

Acción recomendada: revise los registros, actualice los enlaces y vuelva a intentar la operación de copia de seguridad o restauración.

UserErrorNamespaceNotFound

Código de error: UserErrorNamespaceNotFound

Causa: faltan espacios de nombres proporcionados en Configuración de copia de seguridad mientras se realizan copias de seguridad. El espacio de nombres se proporcionó de forma incorrecta o se eliminó.

Acción recomendada: compruebe si los espacios de nombres de los que se va a realizar la copia de seguridad se han especificado correctamente.

UserErrorPVCHasNoVolume

Código de error: UserErrorPVCHasNoVolume

Causa: la notificación de volumen persistente (PVC) en contexto no tiene un volumen persistente asociado. Por lo tanto, no se realizará una copia de seguridad del PVC.

Acción recomendada: conecte un volumen a la PVC, en caso de que sea necesario realizar una copia de seguridad del mismo.

UserErrorPVCNotBoundToVolume

Código de error: UserErrorPVCNotBoundToVolume

Causa: la PVC en contexto está en estado Pendiente y no tiene un volumen persistente asociado a él. Por lo tanto, no se realizará una copia de seguridad del PVC.

Acción recomendada: conecte un volumen a la PVC, en caso de que sea necesario realizar una copia de seguridad del mismo.

UserErrorPVNotFound

Código de error: UserErrorPVNotFound

Causa: falta el medio de almacenamiento subyacente para el volumen persistente.

Acción recomendada: compruebe y adjunte un nuevo volumen persistente con el medio de almacenamiento real adjunto.

Error de Usuario: Falta StorageClass para PVC

Código de error: UserErrorStorageClassMissingForPVC

Causa: la copia de seguridad AKS comprueba la clase de almacenamiento que se está usando y omite que el volumen persistente tome instantáneas debido a la falta de disponibilidad de la clase.

Acción recomendada: actualice las especificaciones de PVC con la clase de almacenamiento usada.

UserErrorSourceandTargetClusterCRDVersionMismatch

Código de error: UserErrorSourceandTargetClusterCRDVersionMismatch

Causa: el clúster de AKS de origen y el clúster de AKS de destino durante la restauración tienen diferentes versiones de FlowSchema y PriorityLevelConfigurations CRs. Algunos recursos de Kubernetes no se restauran debido a la falta de coincidencia en las versiones del clúster.

Acción recomendada: use la misma versión de clúster para el clúster de destino que para el de origen o aplique manualmente los CR.

LinkedAuthorizationFailed

Código de error: LinkedAuthorizationFailed

Causa: Para realizar una operación de restauración, el usuario debe tener un permiso de lectura sobre el clúster de AKS de copia de seguridad.

Acción recomendada: asigne el rol Lector en el clúster de AKS de origen y a continuación, continúe con la operación de restauración.

Pasos siguientes