Segui questi passaggi per risolvere i vari problemi che possono verificarsi durante l'utilizzo di Kf Builds.
L'eliminazione dell'oggetto è bloccata
Esegui il seguente comando per ottenere le informazioni sulla risorsa, quindi controlla le cause elencate di seguito:
kubectl get builds.kf.dev -n SPACE_NAME BUILD_NAME -o yaml
L'interfaccia a riga di comando kf
può aiutarti a verificare alcuni problemi:
kf doctor --space SPACE_NAME build/BUILD_NAME
Possibile causa | Soluzione |
---|---|
Il timestamp di eliminazione è nel futuro. |
Con lo sfasamento dell'orologio, il valore |
Nell'oggetto sono presenti finalizzatori. |
I finalizzatori sono presenti nell'oggetto e devono essere rimossi dal controller che li ha impostati prima dell'eliminazione dell'oggetto. Se vuoi forzare un'eliminazione senza attendere i finalizzatori, modifica
l'oggetto per rimuoverlo dall'array Avviso: rimozione dei finalizzatori senza consentire il completamento dei controller potrebbero causare errori, problemi di sicurezza, perdita di dati o risorse orfane. |
Possono esistere oggetti dipendenti. |
L'oggetto potrebbe essere in attesa dell'eliminazione dei dipendenti prima di essere eliminato. Per saperne di più, consulta la guida alla garbage collection di Kubernetes. Chiedi a un amministratore di controllare tutti gli oggetti nello spazio dei nomi e nel cluster per verificare se uno di questi blocca l'eliminazione. Se devi rimuovere l'oggetto senza attendere i dipendenti, utilizza
|
Deviazione dello stato di generazione degli oggetti
Esegui questo comando per ottenere le informazioni sulle risorse, quindi verifica le cause elencate di seguito:
kubectl get builds.kf.dev -n SPACE_NAME BUILD_NAME -o yaml
L'interfaccia a riga di comando kf
può aiutarti a verificare alcuni problemi:
kf doctor --space SPACE_NAME build/BUILD_NAME
Possibile causa | Soluzione |
---|---|
L'oggetto presenta una discrepanza nella versione di generazione. |
Questo errore di solito si verifica quando il controller Kf non ha letto l'ultima versione dell'oggetto. Questo di solito l'errore si recupera autonomamente quando le repliche Kubernetes raggiungono la coerenza finale e solitamente non richiede un'azione da parte degli utenti. |
Riconciliazione degli oggetti non riuscita
Esegui il seguente comando per ottenere le informazioni sulla risorsa, quindi controlla le cause elencate di seguito:
kubectl get builds.kf.dev -n SPACE_NAME BUILD_NAME -o yaml
L'interfaccia a riga di comando kf
può aiutarti a verificare alcuni problemi:
kf doctor --space SPACE_NAME build/BUILD_NAME
Possibile causa | Soluzione |
---|---|
L'oggetto presenta TemplateError |
Questo errore di solito si verifica se l'utente ha inserito una proprietà non valida nella risorsa personalizzata. o la configurazione sullo spazio/cluster non è valida. Per comprendere la causa principale, l'utente può leggere il messaggio di errore più lungo nella sezione |
Nell'oggetto è presente l'errore ChildNotOwned (conflitti di nomi) |
In genere, questo errore indica che gli oggetti che il controller sta tentando di creare esistono già. Questo accade se l'utente ha creato una risorsa K8s con lo stesso nome di quella che il controller sta tentando di creare; ma più spesso si verifica se l'utente elimina una risorsa e il controller Kf tenta di ricrearla. Se una risorsa secondaria è ancora presente, il relativo proprietario sarà la vecchia risorsa che non esiste più. Per risolvere l'errore, è consigliabile che l'utente elimini la risorsa interessata e la ricrei. Per eliminare l'oggetto,
utilizza un comando di eliminazione Kf o il comando Per ricreare una risorsa, usa un comando Kf. Ad esempio: |
L'oggetto ha ReconciliationError |
In genere, questo errore indica che si è verificato un problema con la chiamata HTTP effettuata (dal controller Kf) al servizio API Kubernetes per creare/aggiornare la risorsa. Per comprendere la causa principale, l'utente può leggere il messaggio di errore più lungo nella sezione |