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 (die Kubernetes-Objekte verwalten)
  • 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 Überschreibungen 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 Hybridinstanz in einem zuvor betriebsbereiten Zustand wiederherstellen. Je nach Größe der Hybridinstanz kann ein einzelner Sicherungssatz eine oder mehrere Sicherungsdateien enthalten.

Was Sie über Cassandra-Sicherungen wissen sollten

Cassandra ist eine replizierte Datenbank, die zum Erhalt von mindestens drei Kopien Ihrer Daten pro Region oder Rechenzentrum konfiguriert ist. Cassandra verwendet Streamingreplikation und Lesereparaturen, um die Datenreplikate pro Region und Rechenzentrum zu verwalten.

In der Hybridversion sind Cassandra-Backups 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 Hybridcluster angewendet wurde, wird ein Kubernetes-Sicherungsjob nach dem Zeitplan ausgeführt. Der Job löst auf jedem Cassandra-Knoten in Ihrem Hybridcluster 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 Hybridsicherung ist eine vollständige Sicherung der beibehaltenen Laufzeitdaten, die bei der Sicherung in Cassandra gespeichert wurden. Alle Datenänderungen nach der Sicherung sind in der 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

Sie müssen die Sicherungen als cron-Jobs planen. Der Cronjob liest die Konfiguration aus einer von Ihnen konfigurierten overrides.yaml-Datei. Apigee empfiehlt, eine Kopie der Datei overrides.yaml zu erstellen, damit Sie sie während des Wiederherstellungsprozesses wiederverwenden können.

In den folgenden Abschnitten wird ausführlich geplant, wie Sie Sicherungen in Cloud Storage und auf einem Remoteserver planen.