Cette procédure permet de résoudre divers problèmes pouvant survenir lors de l'utilisation de tâches Kf.
L'objet bloque la suppression.
Exécutez la commande suivante pour obtenir les informations sur les ressources, puis recherchez les causes ci-dessous :
kubectl get tasks.kf.dev -n SPACE_NAME TASK_NAME -o yaml
La CLI kf
permet de détecter certains problèmes :
kf doctor --space SPACE_NAME task/TASK_NAME
Cause possible | Solution |
---|---|
La date et l'heure de la suppression sont situées dans le futur. |
Avec un décalage de l'horloge, la valeur |
Des finaliseurs sont présents sur l'objet. |
Si des finalisateurs sont présents sur l'objet, ils doivent être supprimés par le contrôleur qui les a définis avant la suppression de l'objet. Si vous souhaitez forcer la suppression sans attendre les finaliseurs, modifiez l'objet pour les supprimer du tableau Pour supprimer le finaliseur d'un objet, exécutez la commande Pour en savoir plus, consultez la page Utiliser des finaliseurs pour contrôler la suppression. Avertissement : La suppression des finaliseurs sans permettre aux contrôleurs d'en terminer l'exécution peut entraîner des erreurs, des problèmes de sécurité, des pertes de données ou des ressources orphelines. |
Des objets dépendants peuvent exister. |
L'objet peut être en attente de la suppression d'objets dépendants avant d'être supprimé. Pour en savoir plus, consultez le Guide Kubernetes sur la récupération de mémoire. Demandez à un administrateur de vérifier tous les objets de l'espace de noms et du cluster pour savoir si l'un d'entre eux bloque la suppression. Si vous devez supprimer l'objet sans attendre la suppression des objets dépendants, utilisez |
Écart au niveau des générations d'objets.
Exécutez la commande suivante pour obtenir les informations sur les ressources, puis recherchez les causes ci-dessous :
kubectl get tasks.kf.dev -n SPACE_NAME TASK_NAME -o yaml
La CLI kf
permet de détecter certains problèmes :
kf doctor --space SPACE_NAME task/TASK_NAME
Cause possible | Solution |
---|---|
L'objet présente une dérive de version de génération. |
Cette erreur se produit généralement lorsque le contrôleur Kf n'a pas lu la dernière version de l'objet. Cette erreur est généralement autoréparée une fois que les instances dupliquées Kubernetes atteignent la cohérence à terme et ne nécessite généralement aucune action de la part des utilisateurs. |
Échec du rapprochement des objets.
Exécutez la commande suivante pour obtenir les informations sur les ressources, puis recherchez les causes ci-dessous :
kubectl get tasks.kf.dev -n SPACE_NAME TASK_NAME -o yaml
La CLI kf
permet de détecter certains problèmes :
kf doctor --space SPACE_NAME task/TASK_NAME
Cause possible | Solution |
---|---|
L'objet comporte une erreur TemplateError |
Cette erreur se produit généralement si l'utilisateur a saisi une propriété non valide dans la spécification de ressource personnalisée ou si la configuration de l'espace ou du cluster est incorrecte. Pour comprendre la cause fondamentale, l'utilisateur peut lire le message d'erreur le plus long dans le fichier |
L'objet contient une erreur ChildNotOwner (conflits de noms) |
Cette erreur signifie généralement que le ou les objets que le contrôleur tente de créer existent déjà. Cela se produit si l'utilisateur a créé une ressource K8s portant le même nom que celui que le contrôleur tente de créer, mais plus souvent lorsque l'utilisateur supprime une ressource et que le contrôleur Kf tente de la recréer. Si une ressource enfant est toujours présente, son propriétaire sera l'ancienne ressource qui n'existe plus. Pour remédier à cette erreur, nous vous recommandons de supprimer la ressource concernée, puis de la recréer. Pour supprimer l'objet, utilisez une commande de suppression Kf ou la commande Pour recréer une ressource, utilisez une commande Kf. Exemple : |
L'objet comporte une erreur ReconciliationError |
Cette erreur signifie généralement qu'une erreur s'est produite avec l'appel HTTP effectué (par le contrôleur Kf) au service d'API Kubernetes pour créer/mettre à jour des ressources. Pour comprendre la cause fondamentale, l'utilisateur peut lire le message d'erreur le plus long dans le fichier |