Errori durante l'installazione di Kf
Errore del server (Richiesta non valida): carattere non valido
Se visualizzi questo errore durante l'impostazione dei valori predefiniti di configurazione, è probabile che il valore della variabile di ambiente ${DOMAIN} utilizzata nel comando includa un carattere "$" di escape. Utilizza le virgolette singole per definire un dominio con un nome di spazio o un'altra sostituzione:
Error from server (BadRequest): invalid character '$' in string escape code
Errori con gli oggetti Kubernetes di Kf
Segui queste istruzioni per risolvere i problemi relativi agli oggetti Kubernetes di Kf.
Trova il nome del tipo di risorsa Kubernetes di cui vuoi risolvere i problemi elencando tutte le risorse Kf:
kubectl api-resources --api-group=kf.devOutput di esempio:
NAME SHORTNAMES APIGROUP NAMESPACED KIND apps kf.dev true App builds kf.dev true Build clusterservicebrokers kf.dev false ClusterServiceBroker routes kf.dev true Route servicebrokers kf.dev true ServiceBroker serviceinstancebindings kf.dev true ServiceInstanceBinding serviceinstances kf.dev true ServiceInstance spaces kf.dev false SpaceRecupera l'istanza della risorsa di cui vuoi risolvere i problemi utilizzando
kubectl. Se l'oggetto non si trova in uno spazio dei nomi, ometti il flag-n:kubectl get api-resource-name.kf.dev object-name -n space-name -o yamlAd esempio:
kubectl get apps.kf.dev my-app -n my-space -o yamlSeleziona il problema dalle schede di seguito:
L'oggetto non esegue la riconciliazione
- Controlla il valore di
metadata.generation. Questo numero viene incrementato ogni volta che l'oggetto viene aggiornato. Se il numero è estremamente elevato, è probabile che due controller Kubernetes stiano litigando per l'oggetto. Controlla il cluster per verificare se all'oggetto vengono applicati criteri che potrebbero modificarlo rispetto allo stato desiderato. - Controlla se lo spazio dei nomi a cui appartiene l'oggetto è in fase di eliminazione. In caso affermativo, l'oggetto potrebbe non essere riconciliato.
- Verifica che esista il campo
status.observedGeneration. In caso contrario, è possibile che il controller non sia ancora stato eseguito sull'oggetto. Verifica che il cluster e i controller siano integri utilizzandokf doctor. - Verifica che il campo
metadata.generationcorrisponda al campostatus.observedGeneration. In caso contrario, verifica che il cluster e i controller siano integri utilizzandokf doctor. Controlla se nell'elenco
status.conditionssono presenti errori rispetto a questo elenco di motivi di errore comuni:NotOwned: nel cluster o nello spazio dei nomi esiste un'altra risorsa come quella che questo oggetto sta tentando di creare. Leggi il messaggio per trovare il nome duplicato e rinominare la risorsa in conflitto o l'oggetto Kf.TemplateError: nella specifica della risorsa Kf o nella configurazione di Kf è presente un errore di configurazione che causa la riconciliazione errata della risorsa secondaria. Verifica le impostazioni dell'oggetto Kf e dello spazio Kf.CacheOutdated: il controller Kf non riceve gli aggiornamenti da Kubernetes abbastanza rapidamente. Controlla l'integrità del cluster Kubernetes.ReconciliationError: il controller Kf non riesce a creare la risorsa secondaria necessaria. Verifica che il cluster sia integro, che Kf sia in esecuzione e che non siano applicati criteri che impediscano a Kf di creare l'oggetto a cui fa riferimento il messaggio.
L'oggetto non viene eliminato
- Verifica che sia stato impostato il valore
metadata.deletionTimestampdell'oggetto. In caso contrario, l'eliminazione richiesta non è andata a buon fine. - Verifica che il valore
metadata.deletionTimestampdell'oggetto sia nel passato. Se è nel futuro, l'oggetto potrebbe non essere eliminato. - Verifica se nell'oggetto esiste un elenco
metadata.finalizers. Se sono presenti finalizzatori, l'oggetto deve attendere la loro rimozione prima di essere eliminato. Se vuoi forzare un'eliminazione senza attendere i finalizzatori, modifica l'oggetto per rimuoverli. - Potrebbero esistere oggetti secondari che impediscono l'eliminazione dell'oggetto. Chiedi a un amministratore di controllare tutti gli oggetti nello spazio dei nomi e nel cluster per verificare se uno di essi deve essere eliminato manualmente.
- Controlla il valore di