Grundlagen des Runtime Configurator

Auf dieser Seite erhalten Sie eine Übersicht über die Funktion des Runtime Configurators und Schlüsselkonzepte im Zusammenhang mit Runtime Configurator werden beschrieben. Wie Sie eine RuntimeConfig-Ressource erstellen, erfahren Sie unter Erstellen und Löschen von RuntimeConfig-Ressourcen.

Was ist Runtime Configurator?

Runtime Configurator erlaubt es Ihnen, Daten als Hierarchie von Schlüssel/Wert-Paaren in der Google Cloud Platform zu definieren und zu speichern. Sie können diese Schlüssel/Wert-Paare verwenden, um:

  • Dienste dynamisch zu konfigurieren
  • Dienststatus zu kommunizieren
  • Benachrichtigungen über Änderungen an Daten zu verschicken
  • Informationen zwischen verschiedenen Dienstebenen zu teilen

Stellen Sie sich beispielsweise ein Szenario vor, in dem Sie einen Cluster an Knoten haben, der einen Startvorgang ausführt. Während des Starts können Sie Ihre Knoten so konfigurieren, dass Sie ihren Status an Runtime Configurator weitergeben. Weiterhin haben Sie eine Anwendung, die Anfragen an Runtime Configurator stellt und je nach Status Ihrer Knoten bestimmte Aufgaben durchführt.

Runtime Configurator bietet auch einen Watcher-Dienst und einen Waiter-Dienst. Der Watcher-Dienst beobachtet ein bestimmtes Schlüsselpaar und gibt eine Antwort zurück, wenn sich der Wert des Schlüsselpaars ändert. Der Waiter-Dienst wartet hingegen auf eine bestimmte Endbedingung und gibt eine Antwort zurück, wenn diese Endbedingung erfüllt wurde.

Sie können Runtime Configurator mithilfe des Befehlszeilentools gcloud oder als eigenständige API nutzen.

Konzepte

  • Config-Ressource

    Eine Config-Ressource beinhaltet eine hierarchische Liste an Variablen. Sie können verschiedene Konfigurationen für verschiedene Zwecke erstellen. Beispielsweise können Sie Konfigurationen nach Umgebung (prod, dev, test), der Ebene der Anwendung oder des Dienstes (Back-End, Front-End) oder nach Entitäten (eine Konfiguration pro Nutzer Ihrer Anwendung) aufteilen.

  • Variablen

    Variablen sind Schlüssel/Wert-Paare, die zu einer RuntimeConfig-Ressource gehören. Variablen-Schlüssel haben das folgende Format:

    projects/[project_id]/configs/[CONFIG_ID]/variables/[VARIABLE_NAME]
    

    Sie können Variablenwerte festlegen, beziehen und beobachten, um Informationen zu Ihren Anwendungen zu kommunizieren, um einen abgeschlossenen Zustand zu signalisieren, um Benachrichtigungen über Datenveränderungen zu verschicken und mehr. Variablen sind hierarchisch, also könnte Ihr Variablenschlüssel mehrere Ebenen haben. Ein Variablenschlüssel könnte beispielsweise so aussehen:

    webserver-1/users/name
    webserver-1/users/favorite_color
    
  • Watcher

    Sie können die Methode watch() verwenden, um eine Variable zu beobachten und zurückzugeben, wenn die Variable sich ändert, eine Zeitüberschreitung des Watchers eintritt oder der Watcher gelöscht wird. Verwenden Sie die Funktion watch(), um Ihre Anwendung basierend auf Änderungen an Ihren Daten zu konfigurieren.

  • Waiter

    Wenn Sie eine Waiter-Ressource erstellen, um ein bestimmtes Pfadpräfix zu beobachten, antwortet der Waiter, sobald die Variablen unter dem Präfix eine gewisse Anzahl erreicht haben. Dies wird Kardinalitätsbedingung genannt.

    Wenn Sie beispielsweise eine Bedingung für den Pfad /foo festlegen und die Anzahl der Pfade auf 2 gesetzt ist, würde die folgende Einrichtung die Bedingung erfüllen:

    • /foo/variable1 = "value1"
    • /foo/variable2 = "value2"
    • /bar/variable3 = "value3" # Not /foo path

    Ein Waiter hat sowohl eine Fehlschlags- als auch eine Erfolgsbedingung, die Sie festlegen können.

    Nachdem Sie einen Waiter erstellt haben, gibt der Dienst ein Vorgangsobjekt zurück, das Sie zum Abschluss prüfen. Der Vorgang ist abgeschlossen, wenn einer der folgenden Punkte eintritt:

    • Die success-Bedingung wurde erfüllt.
    • Die failure-Bedingung wurde erfüllt.
    • Der Waiter erreicht das Zeitlimit, das in der ursprünglichen Anfrage festgelegt wurde.

    Ein Waiter ist ideal für Startszenarien, bei denen Sie eine Bereitstellung pausieren müssen, bis eine gewisse Anzahl an Diensten ausgeführt wird.

Weitere Informationen

Hat Ihnen diese Seite weitergeholfen? Teilen Sie uns Ihr Feedback mit:

Feedback geben zu...

Cloud Deployment Manager-Dokumentation