Questo documento fornisce una panoramica della funzionalità Runtime Configurator e descrive i concetti chiave relativi a Runtime Configurator. Per ulteriori informazioni su come creare una risorsa RuntimeConfig, leggi Creazione ed eliminazione delle risorse RuntimeConfig.
Che cos'è Runtime Configurator?
La funzionalità Runtime Configurator consente di definire e archiviare i dati come gerarchia di coppie chiave-valore in Google Cloud. Puoi utilizzare queste coppie chiave-valore per:
- Configurare i servizi in modo dinamico
- Comunicare gli stati del servizio
- Invia notifica delle modifiche ai dati
- Condividere le informazioni tra più livelli di servizi
Ad esempio, immagina uno scenario in cui un cluster di nodi esegue di avvio rapido. Durante l'avvio, puoi configurare i nodi per generare report il proprio stato a Runtime Configurator, quindi eseguire una query in Runtime Configurator ed eseguire attività specifiche in base allo stato nodi.
Runtime Configurator offre anche un servizio Watcher e un servizio Waiter. Il servizio Watcher controlla una coppia di chiavi specifica e restituisce quando il valore cambia la coppia di chiavi, mentre il servizio cameriere attende un'estremità specifica e restituisce una risposta dopo che la condizione finale è stata soddisfatta.
Puoi utilizzare Runtime Configurator tramite gcloud CLI, o come l'API autonoma.
Concetti
Risorsa configurazione
Una risorsa Config contiene un elenco gerarchico di variabili. Tu possono creare diverse configurazioni per scopi diversi. Ad esempio, possono separare le configurazioni in base all'ambiente (produzione, sviluppo, test), su diversi livelli di applicazioni o servizi (backend, frontend), o in base alle entità (una configurazione per utente applicazione).
Variabili
Le variabili sono coppie chiave-valore che appartengono a una risorsa RuntimeConfig. Le chiavi variabili hanno il seguente formato:
projects/[project_id]/configs/[CONFIG_ID]/variables/[VARIABLE_NAME]
Puoi impostare, ottenere e controllare i valori delle variabili per comunicare informazioni le tue applicazioni, per segnalare lo stato completato, per inviare notifiche sui dati modifiche e altro ancora. Le variabili sono gerarchiche, quindi la chiave hanno diversi livelli. Ad esempio, alcuni esempi di chiavi di variabile potrebbero essere:
webserver-1/users/name webserver-1/users/favorite_color
Guardatori
Puoi utilizzare il metodo
watch()
per osservare una variabile e restituirla quando il valore le modifiche alla variabile, l'utente si verifica un timeout o l'utente viene eliminato. Utilizza lawatch()
per configurare dinamicamente le tue applicazioni in base a modifiche ai dati.Camerieri
Se crei una risorsa waiter per osservare il prefisso di un percorso specifico, restituisce quando il numero di variabili sotto il prefisso raggiunge un determinato importo. Definito come Condizione di cardinalità.
Ad esempio, se imposti una condizione per il percorso
/foo
e il numero di percorsi è impostato su 2, la seguente configurazione soddisferebbe la condizione:/foo/variable1 = "value1"
/foo/variable2 = "value2"
/bar/variable3 = "value3" # Not /foo path
Un cameriere ha una condizione di errore e di riuscita che puoi impostare.
Dopo aver creato un servizio Waiter, il servizio restituisce un oggetto operazione che sondaggio per il completamento. L'operazione viene completata quando si verifica quanto segue:
- La condizione
success
è soddisfatta. - La condizione
failure
è soddisfatta. - Il cameriere ha raggiunto la scadenza del timeout specificata nell'iniziale richiesta.
L'utilizzo di un cameriere è ideale per scenari di avvio in cui potrebbe essere necessario fare una pausa un deployment finché non è in esecuzione un certo numero di servizi.
Passaggi successivi
- Creazione di una risorsa RuntimeConfig.
- Impostazione e recupero dei dati.
- Controllo di una variabile specifica.
- Creazione di un cameriere.
- Fai riferimento al riferimento v1beta1.
- Fai riferimento a Quote per Runtime Configurator.