La configurazione dichiarativa definisce lo stato del sistema desiderato. Il sistema lavora costantemente per rimanere il più vicino possibile a questo stato. Per ulteriori informazioni, consulta Gestione dichiarativa degli oggetti Kubernetes tramite file di configurazione.
Con Config Connector, puoi creare e aggiornare le risorse in qualsiasi ordine, indipendentemente dalle relazioni di dipendenza. GKE sposta la configurazione dichiarata verso la coerenza finale con lo stato desiderato.
Ad esempio, se crei un elemento PubSubSubscription
prima di PubSubTopic
corrispondente, Config Connector attende la creazione dell'argomento prima di creare la sottoscrizione associata.
La durata dell'installazione di Config Connector rimane incoerente a seconda del numero e dei tipi di risorse che gestisce. Le modifiche a un cluster GKE vengono in genere eseguite in pochi secondi. Tuttavia, il tempo necessario per creare le risorse Google Cloud può variare in base al tipo di risorsa. Ad
esempio, la creazione di un singolo PubSubTopic
richiede pochi secondi. Le risorse di Google Cloud non raggiungono la coerenza finché non vengono create. Ad esempio, quando
crei un SQLInstance
e un SQLDatabase
, il sistema non è coerente per un
periodo di minuti durante la creazione del database.
GKE e Config Connector riconciliano ogni risorsa con ogni aggiornamento o dopo un periodo di tremolio in media 10 minuti. In caso di errore di riconciliazione, Config Connector tenta con un backoff esponenziale in cui il backoff massimo è di due minuti. Puoi visualizzare tutti gli errori negli Eventi di una determinata risorsa.
I campi modificabili ma illeggibili vengono attivati solo al momento della modifica
Alcune API espongono campi illeggibili, ma modificabili (ad esempio, la password per un utente SQL). A causa dell'impossibilità di vedere se questi campi sono stati modificati, i campi modificabili ma illeggibili vengono aggiornati solo quando la risorsa personalizzata viene modificata.
Le risorse non vengono ricreate durante la modifica dei campi immutabili
Alcuni campi di una risorsa sono immutabili e non possono essere riconciliati senza essere eliminati, per poi ricreare la risorsa di destinazione.
In queste situazioni, Config Connector emette un evento Kubernetes "&Failed" aggiornato per la risorsa anziché eseguire questa ricreazione. Devi eliminare la risorsa e ricrearla.
Esempio di evento:
Warning UpdateFailed 37m (x643 over 15d) computeinstance-controller Update call failed: the desired mutation for the following field(s) is invalid: [bootDisk.0.InitializeParams.0.Image networkInterface.0.NetworkIp]