Strategia di riconciliazione

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]