Instanz verschieben

Auf dieser Seite wird beschrieben, wie Sie eine Instanz in Spanner verschieben.

Sie können Ihre Spanner-Instanz von einer beliebigen Instanzkonfiguration in eine beliebige andere Instanzkonfiguration verschieben, auch zwischen regionalen und multiregionalen Konfigurationen. Das Verschieben der Instanz verursacht keine Ausfallzeiten. Spanner bietet während des Verschiebens weiterhin die üblichen Transaktionsgarantien, einschließlich strikter Konsistenz.

Warum sollte ich meine Spanner-Instanz verschieben?

Das Verschieben von Instanzen bietet folgende Vorteile:

  • Verfügbarkeit erhöhen: 99,999% Verfügbarkeit ohne Ausfallzeiten nach einer regionalen in eine multiregionale Verschiebung
  • Latenz reduzieren: Reduzieren Sie die Latenz und erhöhen Sie die geografische Abdeckung mit zusätzlichen schreibgeschützten Replikaten, indem Sie eine regionale in mehrere Regionen oder von mehreren Regionen zu multiregional verschieben.
  • Kosten senken: Senken Sie die stündlichen Kosten, indem Sie von einer multiregionalen Konfiguration zu einer regionalen Konfiguration wechseln.
  • Datenbank am selben Standort platzieren: Platzieren Sie die Spanner-Datenbank mit der Clientanwendung am selben Standort. Verschieben Sie dazu die Instanz an einen optimierten Speicherort.

Preise

Beim Verschieben einer Instanz fallen sowohl für die Konfigurationen der Quell- als auch die Zielinstanz stündliche Computing- und Speichergebühren an. Nach dem Verschieben wird Ihnen der Instanzspeicher in der Zielkonfiguration in Rechnung gestellt.

Wenn Sie Ihre Instanz in eine neue regionale oder multiregionale Instanzkonfiguration verschieben, fallen möglicherweise Gebühren für die ausgehende Datenübertragung an. Weitere Informationen finden Sie unter Preise für Spanner.

Beschränkungen

  • Zum Verschieben einer Instanz benötigt sie mindestens 1 Knoten (1.000 Verarbeitungseinheiten).
  • Sie können Ihre Instanz nicht zwischen Projekten und Google Cloud-Konten verschieben.
  • Sie können keine kostenlose Spanner-Testinstanz verschieben. Sie können die Instanz nach dem Upgrade auf eine kostenpflichtige Instanz verschieben.
  • Wenn Sie aktive Anfragen haben, die einen regionalen Dienstendpunkt für eine der Instanzressourcen verwenden, wirkt sich die Instanzverschiebung auf alle Anfragen aus, die den regionalen Endpunkt verwenden, da die regionale Erzwingung den Zugriff auf regionsübergreifende Instanzen blockiert. Anfragen, die einen globalen Endpunkt verwenden, sind davon nicht betroffen.
  • Spanner-Sicherungen sind instanzspezifisch und beim Verschieben einer Instanz nicht enthalten. Weitere Informationen finden Sie unter Sicherungen in der Konfiguration der Quellinstanz.
  • Die folgenden APIs werden während des Verschiebens einer Instanz deaktiviert:
    • InstanceAdmin.DeleteInstance
    • InstanceAdmin.UpdateInstance
    • DatabaseAdmin.CreateDatabase
    • DatabaseAdmin.UpdateDatabaseDdl (deaktiviert, wenn default_leader in der Anfrage angegeben ist)
    • DatabaseAdmin.RestoreDatabase
    • DatabaseAdmin.CreateBackup
    • DatabaseAdmin.CopyBackup
  • Sie können keine Instanzen verschieben, die CMEK-fähige Datenbanken enthalten.
  • Wenn eine Datenbank einen geänderten standardmäßigen Leader hat, wird die Auswahl beibehalten, wenn sie in der Zielinstanzkonfiguration eine nicht schreibgeschützte Region benennt und diese Konfiguration multiregional ist. Wenn die Zielkonfiguration regional ist oder die benannte nicht schreibgeschützte Region enthält, wird die standardmäßige Leader-Auswahl gelöscht.
  • Durch das Verschieben einer Instanz ändert sich das Instanzkonfigurationsattribut der Instanz. Wenn Sie Ihre Spanner-Ressourcen durch Automatisierung verwalten, müssen Sie mögliche Inkonsistenzen vorbereiten und beheben.
    • Wenn Sie beispielsweise Terraform zum Verwalten Ihrer Spanner-Instanzen und -Datenbanken verwenden und terraform apply --auto-approve aktivieren, um Ihre Ressourcen synchron zu halten, werden alle Instanzen und untergeordneten Ressourcen gelöscht, wenn wir die Instanz verschieben. Aktualisieren Sie die Konfiguration entsprechend, um Löschungen und Datenverluste zu vermeiden. Weitere Informationen zum Befehl apply finden Sie unter Anwendungsoptionen für Terraform.
  • Während die Instanz verschoben wird, werden in den Monitoring-Messwerten und -Diagrammen von Spanner möglicherweise Daten sowohl in der Quell- als auch in der Zielinstanzkonfigurationen angezeigt oder sie geben nur die Leistung in einer Instanzkonfiguration wieder.
  • Wenn Sie das Open-Source-Autoscaling-Tool konfiguriert haben, müssen Sie es nicht deaktivieren. Er schlägt fehl, da InstanceAdmin.UpdateInstance (für Knoten- und Verarbeitungseinheitenänderungen verwendet) deaktiviert ist.
  • Sie können eine Instanz nicht verschieben, wenn das von Spanner verwaltetes Autoscaling für sie aktiviert ist. Um die Instanz zu verschieben, müssen Sie das verwaltete Autoscaling deaktivieren, die Instanz verschieben und dann das verwaltete Autoscaling wieder aktivieren.

Hinweise zur Leistung

Wenn eine Instanz verschoben wird, kommt es zu höheren Lese-/Schreiblatenzen und einer höheren Abbruchrate bei Transaktionen. Die CPU-Auslastung während des Vorgangs kann bis zu 100% betragen, da die Instanz mit einer vom Nutzer bereitgestellten zusätzlichen CPU verschoben wird. Das Verschieben einer Instanz verursacht jedoch keine Ausfallzeiten. Die Zeit für das Verschieben einer Instanz hängt von verschiedenen Faktoren ab, einschließlich der Größe der Datenbanken, der Anzahl der Knoten und der Art der Verschiebung (z.B. von regional zu multiregional).

Nach dem Verschieben einer Instanz variiert die Leistung der Instanz je nach Details der Instanzkonfiguration. Beispielsweise haben multiregionale Konfigurationen im Allgemeinen eine höhere Schreiblatenz und eine geringere Leselatenz als regionale Konfigurationen.

Instanz verschieben

Sie können eine Instanzkonfiguration mithilfe der Google Cloud Console verschieben. Zuerst werden Sie aufgefordert, ein Formular zum Verschieben einer Instanz auszufüllen. Anschließend informiert das Spanner-Team das Startdatum der Instanzverschiebung. Durch das Verschieben einer Instanz werden der Name, die ID oder die Projekt-ID der Instanz nicht geändert.

Vorbereitung

Bevor Sie eine Anfrage zum Verschieben der Instanzkonfiguration stellen, müssen Sie die Abschnitte Einschränkungen und Leistungsaspekte gelesen haben. Gehen Sie dann so vor:

  1. Prüfen Sie, ob Sie die IAM-Berechtigung spanner.instances.update für die Quellinstanz haben.
  2. Fügen Sie der zu verschiebenden Instanz ein Ressourcenlabel hinzu. Der Schlüssel für dieses Label ist „move-to“ und der Wert ist der Name der Konfiguration der Zielinstanz (z.B. „us-east4“). Weitere Informationen finden Sie unter Instanzen mit Labels versehen.
  3. Fordern Sie gegebenenfalls das Verschieben Ihrer Nicht-Produktionsinstanzen (z. B. Test- und Staging-Instanzen) vor dem Verschieben Ihrer Produktionsinstanzen an. So können Sie die Auswirkungen auf die Arbeitslasten während einer Instanzverschiebung bewerten und verstehen.
  4. Wenn Sie eine Spanner-Instanz verschieben, werden durch den Verschiebungsvorgang die Instanz-Tags gelöscht, die Sie in Data Catalog erstellt haben. Wenn Sie die Tags beibehalten möchten, müssen Sie sie vor dem Verschieben exportieren und nach dem Verschieben importieren. Weitere Informationen finden Sie unter Tags exportieren und importieren.

Best Practices finden Sie außerdem hier:

  • Testen Sie Leistungsarbeitslasten in Nicht-Produktionsinstanzen in der Konfiguration der Zielinstanz, bevor Sie die Produktionsinstanz verschieben.
  • Prüfen Sie mit Key Visualizer, ob es in Ihren Datenbanken Hotspots gibt.
  • Prüfen Sie, ob das Knotenkontingent in der Konfiguration der Zielinstanz ausreicht, um die erwartete Spitzenauslastung der Instanz zu bewältigen. Weitere Informationen finden Sie unter Kontingente und Limits für Spanner.
  • Achten Sie darauf, dass die maximale CPU-Auslastung Ihrer Instanz innerhalb der empfohlenen maximalen Grenzwerte für die Art der Instanzkonfiguration liegt, in die Sie die Konfiguration der Quellinstanz verschieben möchten.

    Wenn Sie Autoscaling verwenden, müssen Sie außerdem genügend Knoten für eine CPU-Spitzennutzung gemäß den angegebenen Empfehlungen für die maximale Anzahl bereitstellen und das Autoscaling dann deaktivieren, bevor Sie die Instanz verschieben.

  • Nehmen Sie während der Migration keine Änderungen an der Instanz vor. Dazu gehören das Ändern der Anzahl der Instanzknoten, das Ändern von Datenbankschemas, das Erstellen oder Löschen von Datenbanken oder das Erstellen bzw. Löschen von Sicherungen.

Instanz verschieben

Console

  1. Rufen Sie in der Google Cloud Console die Seite Spanner-Instanzen auf.

    Zur Seite "VM-Instanzen"

  2. Klicken Sie auf den Namen der Instanz, die Sie löschen möchten.

    In der Google Cloud Console wird die Seite Übersicht der Instanz angezeigt.

  3. Klicken Sie auf Instanz bearbeiten.

  4. Klicken Sie auf Google kontaktieren und füllen Sie das Formular Anfrage zum Verschieben einer Spanner-Instanz aus, um das Verschieben zu einer neuen Instanzkonfiguration zu planen.

    Nachdem das Formular gesendet wurde, erhalten Sie von Google das Startdatum der Instanzverschiebung.

Sicherungen in der Konfiguration der Quellinstanz

Wenn Sie eine Spanner-Instanzkonfiguration verschieben, werden die Sicherungen in der Quellinstanz nicht automatisch in die neue Zielkonfiguration verschoben. Es ist wichtig, dass Sie Ihre Sicherungen kopieren und Ihren Datenwiederherstellungsplan berücksichtigen, bevor Sie die Instanzkonfiguration verschieben.

Wenn die Quellinstanz erforderliche Sicherungen enthält, müssen Sie zuerst die Sicherungen in eine andere Instanz kopieren, die dieselbe Instanzkonfiguration wie die zu verschiebende Quellinstanz hat. Nachdem Sie Ihre Sicherungen in eine andere Instanz kopiert haben, müssen Sie alle vorhandenen Sicherungen in der Quellinstanz löschen, bevor Sie die Instanzkonfiguration in eine neue Instanzkonfiguration verschieben können. Google verschiebt die Instanz nicht, wenn zum geplanten Zeitpunkt des Verschiebens der Instanz Sicherungen in der Konfiguration der Quellinstanz vorhanden sind. Wir empfehlen, Ihre Sicherungen so nah wie möglich an dem Übertragungsdatum (von Google benachrichtigt) zu kopieren.

Weitere Informationen zum Kopieren von Sicherungen und den damit verbundenen Kosten finden Sie unter Sicherung kopieren.

Was ist nach dem Einreichen des Übertragungsantrags zu tun?

Nachdem die Anfrage zum Verschieben einer Instanz gestellt wurde, werden Sie von Google über das Startdatum der Verschiebung der Instanzkonfiguration informiert. Im Allgemeinen gehen wir davon aus, dass wir alle Verschiebungsanfragen innerhalb von zwei Werktagen beantworten werden.

Sobald Sie eine Bestätigung von uns erhalten haben, informieren Sie alle relevanten Parteien über das Verschiebungsdatum und bereiten Sie sich darauf vor, Sicherungen, die Sie behalten möchten, zu kopieren.

Nächste Schritte