Cassandra-Sicherungsübersicht

Mit dem Apigee Hybrid-Feature zum Sichern und Wiederherstellen können Sie Sicherungen der Hybriddaten erstellen und im Notfall die Daten in vorherigen funktionierenden Snapshots wiederherstellen. Die Verfügbarkeit und Aufbewahrung von Sicherungen basiert auf der von Ihnen bereitgestellten Sicherungsinfrastruktur.

Eine typische Installation von Apigee Hybrid besteht aus den folgenden Komponenten:

  • MART (Administratordienst)
  • Controller und Watcher (verwalten Kubernetes-Objekte)
  • Istio (verwaltet Ingress)
  • Laufzeit, Synchronisierung und UDCA (eine pro Umgebung)
  • Telemetrie (Monitoring und Logging)
  • Cert Manager (verwaltet Zertifikate)
  • Datenspeicher (Cassandra- und Redis-Datenbanken)

Alle Komponenten außer Cassandra sind zustandslos und speichern keine Daten. Für diese Komponenten sind keine Sicherung und Wiederherstellung erforderlich. Während der Wiederherstellung ist die Neuinstallation dieser Komponenten mithilfe der vorhandenen overrides-Datei ausreichend.

Warum sollten Sie Sicherungen von Cassandra erstellen?

Sicherungen sind ein wichtiger Schutz für Notfallszenarien. Jede Sicherung fungiert als konsistenter Snapshot der Cassandra-Daten zum Zeitpunkt der Sicherung. Zusätzlich zu Cassandra-Daten enthält dieser Snapshot Schema und Metadaten im Cassandra-Cluster. Im Notfall können Sie mithilfe von Sicherungen Ihre Hybrid-Instanz in einem zuvor betriebsbereiten Zustand wiederherstellen. Je nach Größe der Hybrid-Instanz kann ein einzelner Sicherungssatz eine oder mehrere Sicherungsdateien enthalten.

Was Sie über Cassandra-Sicherungen wissen sollten

Cassandra ist eine replizierte Datenbank, die so konfiguriert ist, dass mindestens drei Kopien Ihrer Daten pro Region oder Rechenzentrum angelegt werden. Cassandra verwendet Streamingreplikation und Lesereparaturen, um die Datenreplikate pro Region und Rechenzentrum zu verwalten.

In der Hybridversion sind Cassandra-Sicherungen nicht standardmäßig aktiviert. Es empfiehlt sich, Cassandra-Sicherungen für den Fall zu aktivieren, dass Ihre Daten bei einem Totalausfall verloren gehen. Cassandra-Sicherungen sind für die Verwendung im Notfall und nicht für die Wiederherstellung von Datenverlusten vorgesehen, die durch ein versehentliches Löschen verursacht wurden.

Sicherungen werden gemäß dem Zeitplan erstellt, der in der Datei overrides.yaml festgelegt ist. Sobald ein Sicherungszeitplan auf Ihren Hybrid-Cluster angewendet wurde, wird ein Kubernetes-Sicherungsjob nach dem Zeitplan ausgeführt. Der Job löst auf jedem Cassandra-Knoten in Ihrem Hybrid-Cluster ein Sicherungsskript aus, das alle Daten auf dem Knoten erfasst, eine Archivdatei der Daten erstellt und das Archiv an Cloud Storage oder ein Verzeichnis auf einem Remote-Server sendet.

Was wird gesichert?

Die geplante Hybrid-Sicherung ist eine vollständige Sicherung der beibehaltenen Laufzeitdaten, die bei der Sicherung in Cassandra gespeichert wurden. Alle Datenänderungen nach der Sicherung sind in dieser Sicherung nicht verfügbar. Die geplante Sicherung besteht aus den folgenden Entitäten:

  • Cassandra-Schema mit Nutzerschema (Apigee-Keyspace-Definitionen).
  • Informationen zum Cassandra-Partitionstoken pro Cassandra-Knoten in einem Cluster.
  • Ein Snapshot der Cassandra-Daten.

Wo werden Sicherungsdaten gespeichert?

Der Speicherort der Sicherungsdaten hängt von der Sicherungsmethode ab. Apigee Hybrid unterstützt die folgenden Methoden zum Erstellen von Sicherungen:

  • Sicherung in Cloud Storage: Die Sicherung wird in den konfigurierten Cloud Storage-Buckets in Ihrem Google Cloud-Projekt gespeichert.
  • Sicherung auf einem Remoteserver: Die Sicherung wird in einem Verzeichnis auf einem Remoteserver gespeichert, den Sie angeben.

Wie werden die Daten gesichert?

Wenn Sie Cloud Storage für die Sicherung verwenden, werden die Sicherungsdaten standardmäßig verschlüsselt. Bei Sicherungen, die nicht in Cloud Storage gespeichert sind, werden die Sicherungsdaten während der Übertragung zum Remote-Server verschlüsselt. Sie müssen jedoch nach der Übertragung dafür sorgen, dass die Sicherungsdaten auf dem Remote-Server verschlüsselt sind.

So erstellen Sie Sicherungen

Verwenden Sie eine dieser beiden Methoden, um Sicherungen zu konfigurieren. Bei beiden Methoden konfigurieren Sie die Sicherung in Ihrer overrides.yaml-Datei. Apigee empfiehlt, eine Kopie der Datei overrides.yaml zu erstellen, damit Sie sie während des Wiederherstellungsprozesses wiederverwenden können.

  • Verwenden Sie die Methode CSI-Sicherung und -Wiederherstellung von Apigee Hybrid, die Snapshots von Kubernetes CSI (Container Storage Interface) verwendet. Diese wird für Hybrid-Instanzen empfohlen, die in Google Cloud, AWS oder Azure gehostet werden.
  • Verwenden Sie die Nicht-CSI-Hybrid-Sicherung und -Wiederherstellung, wodurch das Schema und andere Daten in Sicherungsdateien kopiert werden. Dies ist die empfohlene Methode für lokale Installationen.

    In den folgenden Abschnitten wird ausführlich beschrieben, wie Sie Sicherungen in Cloud Storage und auf einem Remote-Server planen können.