F: Was ist Amazon ElastiCache?

Amazon ElastiCache ist ein Webservice für das einfache Bereitstellen und Betreiben von auf Memcached- oder Redis-Protokollebene kompatiblen Serverknoten in der Cloud. Amazon ElastiCache verbessert die Leistung von Web-Anwendungen, da Sie Informationen aus einem schnellen, verwalteten In-Memory-System abrufen können und sich nicht gänzlich auf langsamere Datenbanken auf Datenträgern verlassen müssen. Der Service kann die Verwaltung, die Überwachung und den Betrieb von In-Memory-Umgebungen vereinfachen und auslagern, sodass sich Ihre technischen Abteilungen voll auf die Anwendungsentwicklung konzentrieren können. Mit Amazon ElastiCache können Sie nicht nur den Ladevorgang und die Antwort auf Benutzeraktionen und -fragen beschleunigen, sondern auch die Kosten reduzieren, die mit der Skalierung von Web-Anwendungen in Verbindung stehen.

Amazon ElastiCache automatisiert alle gängigen Verwaltungsaufgaben, die in einer verteilten In-Memory-Schlüsselwertumgebung anfallen. Mit Amazon ElastiCache können Sie Ihrer Anwendungsarchitektur in nur wenigen Minuten eine Caching- oder In-Memory-Schicht hinzufügen. Einige wenige Klicks in der AWS Management Console genügen. Sobald ein Cluster bereitgestellt ist, erkennt und ersetzt Amazon ElastiCache automatisch fehlerhafte Knoten. In diesem ausfallsicheren System besteht ein geringeres Risiko von Datenbanküberlastungen, die zu langsameren Ladezeiten für Websites und Anwendungen führen. Durch die Integration mit Amazon CloudWatch bietet Amazon ElastiCache einen besseren Einblick in wichtige Leistungsmetriken Ihrer Knoten. Amazon ElastiCache ist auf Protokollebene mit Memcached und Redis kompatibel, sodass die Codes, Anwendungen und beliebten Tools, die Sie heute in Ihren bestehenden Memcached- oder Redis-Umgebungen nutzen, mit dem Service weiterhin reibungslos funktionieren. Mit der Unterstützung für Cluster-Konfigurationen in Amazon ElastiCache erhalten Sie die Vorteile eines schnellen, skalierbaren und benutzerfreundlichen verwalteten Service, der die Anforderungen Ihrer anspruchsvollsten Anwendungen erfüllen kann. Wie bei allen Amazon Web Services fallen keine Vorabkosten an und Sie zahlen nur für die Ressourcen, die Sie tatsächlich nutzen.

F: Was ist In-Memory-Caching und welche Vorteile bringt es meinen Anwendungen?

Das In-Memory-Caching von Amazon ElastiCache kann Latenz und Durchsatz für viele Anwendungen mit leseintensiven Arbeitslasten (z. B. soziale Netzwerke, Gaming, gemeinsame Mediennutzung und Frageportale) oder mit rechenintensiven Arbeitslasten (z. B. Empfehlungs-Engines) maßgeblich verbessern. Das In-Memory-Caching verbessert die Anwendungsleistung, da wichtige Daten im Arbeitsspeicher abgelegt und mit geringer Latenz abgerufen werden können. Beispielsweise können die Ergebnisse von E/A-intensiven Datenbankabfragen oder die Ergebnisse von rechenintensiven Berechnungen im Cache zwischengespeichert werden.

F: Kann ich Amazon ElastiCache für andere Anwendungsfälle als Caching verwenden?

 

A: Ja. ElastiCache für Redis kann als primärer In-Memory-Schlüsselwert-Datenspeicher verwendet werden und stellt eine schnelle Datenleistung im Millisekundenbereich, hohe Verfügbarkeit und Skalierbarkeit für bis zu 16 Knoten plus 5 Read Replicas mit jeweils bis zu 3,55 TiB In-Memory-Daten bereit. Hier finden Sie weitere Anwendungsfälle, zum Beispiel für Bestenlisten, Quotenbegrenzungen, Warteschlangen und Chats.

F: Kann ich Amazon ElastiCache über AWS CloudFormation verwenden?

AWS CloudFormation vereinfacht die Bereitstellung und Verwaltung durch AWS CloudFormation-Vorlagen und eine schnelle und zuverlässige Bereitstellung der Services oder Anwendungen. AWS CloudFormation stellt umfassende Unterstützung für Amazon ElastiCache durch Vorlagen zum Erstellen von Cluster- (Memcached und Redis) und Replikationsgruppen bereit. Die Vorlagen sind auf dem Stand der neuesten ElastiCache Redis-Ankündigung für Redis-Clusterkonfigurationen und bieten Amazon ElastiCache-Kunden Flexibilität sowie Benutzerfreundlichkeit.

F: Was verwaltet Amazon ElastiCache für mich?

Amazon ElastiCache verwaltet die Arbeitsschritte zur Einrichtung einer verteilten In-Memory-Umgebung, angefangen von den Schritten zur Bereitstellung der angeforderten Server-Ressourcen bis hin zur Installation der Software. Nachdem Ihre Umgebung eingerichtet wurde und ausführbar ist, automatisiert der Service gängige Verwaltungsaufgaben, beispielsweise die Fehlererkennung und Wiederherstellung sowie Software-Patching. Amazon ElastiCache stellt für Ihre Knoten detaillierte Überwachungsmetriken zur Verfügung, anhand derer Sie Probleme zeitnah erkennen und lösen können. Beispielsweise können Schwellenwerte festgelegt und Warnungen ausgegeben werden, wenn einer der Knoten mit Anforderungen überlastet ist.

F: Was sind Amazon ElastiCache-Knoten, -Shards und -Cluster?

Ein Knoten ist der kleinste Baustein einer Amazon ElastiCache-Bereitstellung. Er ist ein RAM-Bereich fester Größe, der sicher ins Netzwerk eingebunden ist. Jeder Knoten führt eine Instanz des auf Memcached- oder Redis-Protokollebene kompatiblen Service aus und hat einen eigenen DNS-Namen und Port. Es werden mehrere Arten von Knoten unterstützt, jeweils mit unterschiedlicher Menge an zugeordnetem Arbeitsspeicher. Eine Redis-Shard ist eine Teilmenge des Cluster-Schlüsselraums, die einen primären Knoten und null oder mehr Read Replicas enthalten kann. Weitere Informationen zu Redis-Bereitstellungen finden Sie im Redis-Abschnitt weiter unten. Die Shards bilden zusammen einen Cluster.

F: Welche Engines unterstützt Amazon ElastiCache?

Amazon ElastiCache for Memcached unterstützt derzeit Memcached 1.4.5, 1.4.14 und 1.4.24.

Amazon ElastiCache für Redis unterstützt derzeit Redis 2.8.21, 2.8.22, 2.8.23. 2.8.24 und 3.2.4.

F: Welches sind die ersten Schritte für einen Einstieg in Amazon ElastiCache?

Wenn Sie sich noch nicht bei Amazon ElastiCache angemeldet haben, klicken Sie in der Detailseite von Amazon ElastiCache auf die Schaltfläche ''Jetzt anmelden'', und führen Sie den Anmeldeprozess aus. Hierfür ist ein Amazon Web Services-Konto erforderlich. Wenn Sie noch kein Konto haben, werden Sie bei der Anmeldung bei Amazon ElastiCache aufgefordert, ein Konto zu erstellen. Lesen Sie nach der Anmeldung bei ElastiCache die Dokumentation zu Amazon ElastiCache durch, die das Handbuch Erste Schritte enthält.

Wenn Sie sich mit Amazon ElastiCache vertraut gemacht haben, können Sie in wenigen Minuten ein Cluster starten. Verwenden Sie die AWS Management Console oder die Amazon ElastiCache-APIs.

F: Wie erstelle ich einen Cluster?

Cluster sind einfach zu erstellen. Sie können die AWS Management Console, Amazon ElastiCache-APIs oder Befehlszeilen-Tools verwenden. Um einen Cluster mit der AWS Management Console zu starten, klicken Sie auf die Schaltfläche "Create" auf der Registerkarte "Memcached" oder "Redis". Von hier ausgehend müssen Sie lediglich die Kennzeichnung des Clusters, den Knotentyp und die Anzahl der Knoten angeben. Es wird automatisch ein Cluster mit der erforderlichen Speicherkapazität erstellt. Alternativ können Sie das Cluster mit der CreateCacheCluster-API oder dem Befehl elasticache-create-cache-cluster erstellen. Wenn Sie bei der Erstellung eines Clusters keine Availability Zone angeben, wird es von AWS auf Basis Ihrer Speicheranforderungen und verfügbaren Kapazität automatisch platziert.

F: Welche Knotentypen kann ich auswählen?

Amazon ElastiCache unterstützt Knoten der folgenden Arbeitsspeichertypen:

Knoten der aktuellen Generation:

  • cache.m3.medium: 2,78 GB
  • cache.m3.large: 6,05 GB
  • cache.m3.xlarge: 13,3 GB
  • cache.m3.2xlarge: 27,9 GB
  • cache.m4.large: 6,42 GB
  • cache.m4.xlarge: 14,28 GB
  • cache.m4.2xlarge: 29,7 GB
  • cache.m4.4xlarge: 60,78 GB
  • cache.m4.10xlarge: 154,64 GB
  • cache.r3.large: 13,5 GB
  • cache.r3.xlarge: 28,4 GB
  • cache.r3.2xlarge: 58,2 GB
  • cache.r3.4xlarge: 118 GB
  • cache.r3.8xlarge: 237 GB
  • cache.t2.micro: 555 MB
  • cache.t2.small: 1,55 GB
  • cache.t2.medium: 3,22 GB
 
Knoten der vorherigen Generation:
 
  • cache.m1.small: 1,3 GB
  • cache.m1.medium: 3,35 GB
  • cache.m1.large: 7,1 GB
  • cache.m1.xlarge: 14,6 GB
  • cache.m2.xlarge: 16,7 GB
  • cache.m2.2xlarge: 33,8 GB
  • cache.m2.4xlarge: 68 GB
  • cache.t1.micro: 213 MB
  • cache.c1.xlarge: 6,6 GB

Für jeden der oben genannten Knotentypen ist angegeben, wie viel Arbeitsspeicher für Memcached oder Redis zur Verfügung steht, nachdem der Verarbeitungsaufwand der Amazon ElastiCache-Systemsoftware berücksichtigt wurde. Die Gesamtmenge des Arbeitsspeichers in einem Cluster ist eine ganze Zahl des Mehrfachen des in jeder Shard verfügbaren Arbeitsspeichers. Beispielsweise stellt ein Cluster, das aus zehn Shards von jeweils 6 GB besteht, 60 GB Gesamtspeicher bereit.

F: Wie greife ich auf meine Knoten zu?

Sobald Ihr Cluster verfügbar ist, können Sie die Endpunkte der Knoten über die folgenden Schritte auf der AWS Management Console abrufen:

  • Navigieren Sie zur Registerkarte "Amazon ElastiCache".
  • Klicken Sie auf ''(Number of) Nodes'', und navigieren Sie zur Registerkarte ''Nodes''.
  • Klicken Sie auf die Schaltfläche ''Copy Node Endpoint(s)''.

Alternativ können Sie die Liste der Endpunkte mit der DescribeCacheClusters-API abrufen.

Sie können dann Ihren Memcached- oder Redis-Client mit dieser Endpunktliste konfigurieren und in Ihrer bevorzugten Programmiersprache Daten Ihren ElastiCache-Knoten hinzufügen oder von diesen löschen. Um für Ihre Knoten Netzwerkanforderungen zu ermöglichen, müssen Sie den Zugriff autorisieren. Eine detaillierte Beschreibung der ersten Schritte finden Sie im Handbuch ''Erste Schritte''.

F: Was ist ein Wartungs- bzw. Aktualisierungsfenster? Stehen meine Knoten während der Softwareaktualisierung zur Verfügung?

Im Aktualisierungsfenster von Amazon ElastiCache können Sie steuern, wann das angeforderte oder erforderliche Software-Patching stattfindet. Wenn ein "Wartungsereignis" für eine bestimmte Woche angesetzt ist, wird es innerhalb des von Ihnen festgelegten, 60-minütigen Wartungsfensters begonnen und abgeschlossen.

Wenn eine Software-Aktualisierung eingeplant ist, kann es zu einem temporären Ausfall Ihrer Knoten kommen. Weitere Informationen hierzu finden Sie unter " Engine Version Management". Das Patching kann auf Anforderung von Benutzern (beispielsweise ein Upgrade der Cache-Software) oder im Bedarfsfall (beispielsweise bei erkannten Sicherheitslücken im System oder in der Caching-Software) ausgeführt werden. Software-Patching wird in unregelmäßigen Abständen (in der Regel einmal alle paar Monate) ausgeführt und dauert meist nur einen Bruchteil Ihres Aktualisierungsfensters. Falls Sie bei der Erstellung Ihres Clusters kein bevorzugtes wöchentliches Aktualisierungsfenster festlegen, wird ein Standardwert von 60 Minuten zugewiesen. Den Zeitpunkt der Aktualisierungen können Sie in der DB Instance in der AWS Management Console oder mit der ModifyCacheCluster-API anpassen. Sie haben die Möglichkeit, für die einzelnen Cluster unterschiedliche bevorzugte Aktualisierungsfenster anzugeben.


F: Wie wird mir die Nutzung von Amazon ElastiCache in Rechnung gestellt?

Sie zahlen nur für das, was Sie auch tatsächlich nutzen. Dabei fallen keine Mindestgebühren an. Die Preise werden pro verbrauchter Knotenstunde der einzelnen Knotentypen berechnet. Angefangene Knotenstunden werden als volle Stunden in Rechnung gestellt. Es entstehen keine Kosten durch den Datentransfer zwischen Amazon EC2 und Amazon ElastiCache innerhalb der gleichen Availability Zone. Bei Datenübertragungen zwischen Amazon EC2-Instances und einem Amazon ElastiCache-Knoten aus verschiedenen Availability Zones derselben Region werden die Standardgebühren für regionalen Datenverkehr erhobenen. Es wird jedoch nur die Datenübertragung in die und aus der Amazon EC2-Instance berechnet. Es werden keine Amazon ElastiCache-Datenübertragungsgebühren für ein- oder ausgehenden Datenverkehr des Amazon ElastiCache-Knotens selbst erhoben. Weitere Informationen finden Sie auf der Seite mit der Preisübersicht.

F: Wann beginnt und endet die Fakturierung meiner Nutzung von Amazon ElastiCache-Knoten?

Die Fakturierung für einen Knoten beginnt, sobald der Knoten verfügbar ist und läuft so lange weiter, bis der Knoten beendet wird. Dies geschieht beim Löschen.

F: Wie sind die fakturierbaren Nutzungsstunden für ElastiCache-Knoten definiert?

Nutzungsstunden für Knoten werden immer fakturiert, wenn Ihre Knoten im Status "Verfügbar" ausgeführt werden. Wenn für Ihren Knoten keine weiteren Gebühren entstehen sollen, müssen Sie ihn beenden, damit keine weiteren Knotenstunden berechnet werden.

F: Sind Steuern bereits in den Preisen enthalten?

Falls nicht anders angegeben, gelten unsere Preise zuzüglich geltender Steuern und Abgaben, darunter MwSt. und Umsatzsteuer. Bei Kunden mit japanischer Rechungsadresse unterliegt die Nutzung der Region Asien-Pazifik (Tokio) der japanischen Verbrauchssteuer. Weitere Informationen.


F: Was sind Reserved Nodes von Amazon ElastiCache?

Mit Reserved Nodes können Sie gegen eine einmalige Vorauszahlung eine ein- oder dreijährige Reservierung zur Ausführung Ihres Knoten in einer bestimmten Region tätigen und erhalten einen erheblichen Rabatt auf die laufenden stündlichen nutzungsabhängigen Gebühren. Es gibt drei Reserved Node-Typen (Reserved Nodes für geringe, mittlere und hohe Auslastung), die Ihnen die Möglichkeit bieten, den Betrag für die Vorabzahlung und die Gebühren pro Stunde gegeneinander abzuwägen.

F: Worin unterscheiden sich Reserved Nodes von On-Demand Nodes?

Funktionell sind Reserved Nodes und On-Demand Nodes absolut identisch. Der einzige Unterschied besteht in der Abrechnung Ihrer Knoten. Bei Reserved Nodes tätigen Sie eine einmalige Vorauszahlung und sichern sich damit für die Dauer des Nutzungszeitraums eine niedrigere stündliche Nutzungsgebühr (verglichen mit On-Demand Nodes).

F: Wie kann ich Reserved Nodes erwerben und erstellen?

Sie können die Option "Purchase Reserved Nodes" in der AWS Management Console verwenden. Alternativ können Sie mit den API-Tools die verfügbaren Reservierungen zum Kauf mit der API-Methode "DescribeReservedCacheNodesOfferings" auflisten und dann eine Cache-Knoten-Reservierung kaufen, indem Sie die Methode "PurchaseReservedCacheNodesOffering" aufrufen.

Das Erstellen eines Reserved Node unterscheidet sich nicht vom Starten eines On-Demand Node. Sie geben lediglich die Knotenklasse und -region an, für die Sie die Reservierung vornehmen möchten. Nach erfolgtem Erwerb der Reservierung erhalten Sie von Amazon ElastiCache den entsprechenden reduzierten Stundentarif für den neuen Knoten.

F: Stehen immer Reservierungen zum Erwerb zur Verfügung?

Ja. Reserved Nodes werden für die Region, nicht für die Availability Zone erworben. Also auch dann, wenn die Kapazität in einer Availability Zone begrenzt ist, können Reservierungen für eine Region erworben und in einer anderen Availability Zone innerhalb der Region genutzt werden.

F: Wie viele Reserved Cache kann ich erwerben?

Sie können bis zu 20 Reserved Nodes erwerben. Wenn Sie mehr als 20 Knoten ausführen möchten, füllen Sie das Formular zum Anfordern von Amazon ElastiCache-Knoten aus.

F: Was muss ich tun, wenn ich einen vorhandenen Knoten in einen Reserved Node umwandeln möchte?

Erwerben Sie einfach eine Knotenreservierung derselben Knotenklasse in derselben Region wie der Knoten, den Sie aktuell ausführen und reservieren möchten. Nach erfolgreichem Erwerb der Reservierung wendet Amazon ElastiCache die neue stündliche nutzungsabhängige Gebühr automatisch auf Ihren bestehenden Knoten an.

F: Wann beginnt der Nutzungszeitraum, wenn ich mich für einen Reserved Node anmelde? Was geschieht mit meinem Knoten nach Ablauf des Zeitraums?

Preisänderungen für Reserved Nodes werden aktiviert, sobald Ihre Anfrage während der Zahlungsautorisierung eingegangen ist. Sie können den Status Ihrer Reservierung auf der Seite zu den AWS-Kontoaktivitäten oder über den API-Befehl "DescribeReservedCacheNodes" verfolgen. Falls die einmalige Zahlung nicht erfolgreich bis zur nächsten Abrechnungsperiode autorisiert werden kann, wird der rabattierte Preis nicht übernommen.

Nach Ablauf Ihres Reservierungszeitraums gilt für Ihren Reserved Node wieder der entsprechende On-Demand-Stundentarif Ihrer Knotenklasse und -region.

F: Wie kann ich kontrollieren, welche Knoten nach dem Tarif für Reserved Nodes berechnet werden?

Die Amazon ElastiCache-APIs zum Erstellen, Ändern und Löschen von Knoten unterscheiden nicht zwischen On-Demand und Reserved Nodes, sodass Sie beide Arten nahtlos verwenden können. Bei der Verarbeitung Ihrer Abrechnung wendet unser System automatisch Ihre Reservierung(en) an, sodass alle berechtigten Knoten nach dem reduzierten Stundentarif für Reserved Nodes abgerechnet werden.

F: Kann ich einen Reserved Node von einer Region oder Availability Zone in eine andere verschieben?

Jeder Reserved Node ist einer bestimmten Region zugeordnet, die für die Lebensdauer der Reservierung festgelegt ist und nicht geändert werden kann. Jede Reservierung kann jedoch in beliebigen AZs der zugeordneten Region verwendet werden.

F: Kann ich eine Reservierung stornieren?

Die Einmalzahlung für Reserved Nodes kann nicht rückerstattet werden. Sie können Ihren Knoten aber jederzeit kündigen. Ab diesem Zeitpunkt fallen für Reserved Nodes mit geringer und mittlerer Auslastung keine stündlichen nutzungsabhängigen Gebühren mehr an.


F: Wie steuere ich den Zugriff auf Amazon ElastiCache?

Wenn Sie keine VPC nutzen, können Sie mit Amazon ElastiCache den Zugriff auf Ihre Cluster über Cache-Sicherheitsgruppen steuern. Eine Sicherheitsgruppe kontrolliert wie eine Firewall den Netzwerkzugriff auf Ihr Cluster. Der Netzwerkzugriff auf Ihre Cluster ist standardmäßig deaktiviert. Wenn Ihre Anwendungen auf Ihren Cluster zugreifen sollen, müssen Sie den Zugriff von Hosts aus in spezifischen EC2-Sicherheitsgruppen explizit aktivieren. Dieser Vorgang wird als "Zutritt" bezeichnet.

Um den Netzwerkzugriff auf das Cluster zuzulassen, erstellen Sie eine Sicherheitsgruppe, und verknüpfen Sie die gewünschten EC2-Sicherheitsgruppen. Sie geben wiederum die zulässigen EC2-Instances an. Die Sicherheitsgruppe kann dem Cluster bei der Erstellung zugeordnet werden. Sie können jedoch auch die Option "Modify" (Bearbeiten) auf der AWS Management Console verwenden.

Beachten Sie, dass die Zugriffskontrolle auf Basis des IP-Bereichs gegenwärtig für Cluster nicht unterstützt wird. Alle Clients eines Clusters müssen sich im EC2-Netzwerk befinden und wie oben beschrieben über Sicherheitsgruppen autorisiert werden.

Wenn Sie eine VPC nutzen, finden Sie hier weitere Informationen.

F: Können Programme, die auf Servern in meinem eigenen Rechenzentrum ausgeführt werden, auf Amazon ElastiCache zugreifen?

Nein. Gegenwärtig müssen sich alle Clients eines ElastiCache-Clusters im Amazon EC2-Netzwerk befinden und wie hier beschrieben über Sicherheitsgruppen autorisiert werden.

F: Können Programme, die in EC2-Instances in einer VPC ausgeführt werden, auf Amazon ElastiCache zugreifen?

Ja, EC2-Instances in einer VPC können auf Amazon ElastiCache zugreifen, wenn der ElastiCache-Cluster innerhalb der VPC erstellt wurde. Details zum Erstellen eines Amazon ElastiCache-Clusters in einer VPC finden Sie hier.

F: Was ist Amazon Virtual Private Cloud (VPC) und warum sollte ich sie mit Amazon ElastiCache nutzen?

Mit Amazon VPC können Sie eine virtuelle Netzwerkumgebung in einem privaten, isolierten Bereich der Amazon Web Services (AWS)-Cloud erstellen. Hier haben Sie die vollständige Kontrolle über private IP-Adressbereiche, Subnetze, Routing-Tabellen und Netzwerk-Gateways. Mit Amazon VPC definieren Sie eine virtuelle Netzwerktopologie und passen die Netzwerkkonfiguration an Ihre Bedürfnisse an, so dass sie einem herkömmlichen IP-Netzwerk ähnelt, das sie in Ihrem eigenen Rechenzentrum betreiben könnten.

Eines der Szenarien, in denen es ggf. hilfreich ist, Amazon ElastiCache in einer VPC zu verwenden, ist die Ausführung einer öffentlich zugänglichen Webanwendung bei einer gleichzeitigen Nutzung nicht öffentlich zugänglicher Back-End-Server in einem privaten Subnetz. Sie können ein öffentlich zugängliches Subnetz für Ihre Webserver erstellen, das Zugang zum Internet hat, und Ihre Back-End-Infrastruktur in einem nicht öffentlich zugänglichen Subnetz ohne Internetzugriff einrichten. Ihre Back-End-Infrastruktur kann RDS DB-Instances und einen Amazon ElastiCache-Cluster zum Bereitstellen der In-Memory-Ebene umfassen. Weitere Informationen zu Amazon VPC erhalten Sie im Amazon Virtual Private Cloud User Guide.

F: Wie erstelle ich einen Amazon ElastiCache-Cluster in der VPC?

Eine exemplarische Vorgehensweise zum Erstellen eines Amazon ElastiCache-Clusters in der VPC finden Sie im Amazon ElastiCache User Guide.

Es folgen die Voraussetzungen, die zum Erstellen eines Clusters in einer VPC erfüllt sein müssen:

  • Sie müssen eine VPC mit mindestens einem Subnetz eingerichtet haben. Weitere Informationen zum Erstellen von Amazon VPC und Subnetzen erhalten Sie im Getting Started Guide for Amazon VPC.
  • Für Ihre VPC muss eine Subnet Group definiert sein.
  • Für Ihre VPC muss eine VPC-Sicherheitsgruppe definiert sein (Sie können auch die angebotene Standardgruppe verwenden).
  • Außerdem sollten Sie jedem Ihrer Subnetze ausreichend große CIDR-Blöcke zuweisen, damit Amazon ElastiCache genügend überschüssige IP-Adressen zur Verfügung stehen. Diese können Sie bei Wartungsaktivitäten, z. B. Austausch eines Cache-Knotens, verwenden.

F: Wie erstelle ich einen Amazon ElastiCache-Cluster in einer vorhandenen VPC?

Das Erstellen eines Amazon ElastiCache-Clusters in einer vorhandenen VPC entspricht dem bei einer neu erstellten VPC. Hier finden Sie weitere Details.

F: Wie stelle ich eine Verbindung mit einem ElastiCache-Knoten in der VPC her?

Auf Amazon ElastiCache-Knoten, die innerhalb einer VPC bereitgestellt werden, können in derselben VPC bereitgestellte EC2-Instances zugreifen. Wenn diese EC2-Instances in einem öffentlichen Subnetz mit zugeordneten Elastic IP-Adressen bereitgestellt werden, können Sie auf die EC2-Instances über das Internet zugreifen.

Auf Amazon ElastiCache-Knoten, die in einer VPC bereitgestellt wurden, kann grundsätzlich nicht über das Internet oder EC2-Instances außerhalb der VPC zugegriffen werden.

Es wird ausdrücklich empfohlen, dass Sie den DNS-Namen für die Verbindung mit Ihrem ElastiCache-Knoten verwenden, da sich die zugrunde liegende IP-Adresse ändern kann (z. B bei Austausch eines Cache-Knotens).

F: Was ist eine Subnet Group und warum benötige ich eine?

Eine Subnet Group ist eine Sammlung von Subnetzen, die Sie in einer VPC für Ihren Amazon ElastiCache-Cluster angeben müssen. Eine Subnet Group wird mithilfe der Amazon ElastiCache-Konsole erstellt. Jede Subnet Group benötigt mindestens ein Subnetz. Amazon ElastiCache wählt in der Subnet Group ein Subnetz aus. Die IP-Adressen des ausgewählten Subnetzes werden anschließen den Endpunkten des Knotens zugeordnet. Darüber hinaus erstellt Amazon ElastiCache elastische Netzwerkschnittstellen, die Knoten mit den zuvor genannten IP-Adressen zugeordnet werden.

Es wird ausdrücklich empfohlen, dass Sie die DNS-Namen für die Verbindung mit Ihren Knoten verwenden, da sich die zugrunde liegenden IP-Adressen ändern können (z. B bei Austausch eines Cache-Knotens).

F: Kann ich die Subnet Group meines ElastiCache-Clusters ändern?

Einer Subnet Group können nach Erstellen des ElastiCache-Clusters mehr Subnetze für vorhandene oder neue Availability Zones hinzugefügt werden. Das Ändern der Subnet Group eines bereitgestellten Clusters ist derzeit jedoch nicht zulässig.

F: Inwiefern unterscheidet sich die Nutzung von Amazon ElastiCache innerhalb einer VPC von der Nutzung außerhalb?

Die grundlegenden Funktionen von Amazon ElastiCache sind, ob bei Nutzung in der VPC oder nicht, dieselben. Amazon ElastiCache verwaltet die automatische Fehlererkennung, Wiederherstellung, Skalierung, AutoErkennung und Software-Patches unabhängig davon, ob Ihr ElastiCache-Cluster innerhalb oder außerhalb einer VPC bereitgestellt wird.

Zugleich ist auf einen Amazon ElastiCache-Cluster, ob inner- oder außerhalb einer VPC, grundsätzlich kein Zugriff über das Internet möglich. In einer VPC haben Knoten eines ElastiCache-Clusters (innerhalb eines von Ihnen definierten Subnetzes) nur eine private IP-Adresse. Außerhalb einer VPC kann der Zugriff auf den ElastiCache-Cluster mithilfe von Sicherheitsgruppen gesteuert werden, was hier beschrieben ist.

F: Kann ich meinen vorhandenen ElastiCache-Cluster von außerhalb der VPC in meine VPC verschieben?

Nein, Sie können einen vorhandenen Amazon ElastiCache-Cluster nicht von außerhalb der VPC in eine VPC verschieben. Sie müssen innerhalb der VPC einen neuen Amazon ElastiCache-Cluster erstellen.

F: Kann ich meinen vorhandenen ElastiCache-Cluster von innerhalb der VPC nach außerhalb der VPC verschieben?

Derzeit wird eine direkte Migration eines ElastiCache-Clusters von innerhalb der VPC nach außerhalb nicht unterstützt. Sie müssen außerhalb der VPC einen neuen Amazon ElastiCache-Cluster erstellen.

F: Wie steuere ich den Netzwerkzugriff auf mein Cluster?

Amazon ElastiCache ermöglicht bei Bereitstellungen ohne VPC das Steuern des Zugriffs auf Ihren Cluster und somit auf die Knoten mithilfe von Sicherheitsgruppen. Eine Sicherheitsgruppe fungiert wie eine Firewall zum Steuern des Netzwerkzugriffs auf Ihren Cache-Knoten. Der Netzwerkzugriff auf Ihre Knoten ist standardmäßig deaktiviert. Wenn Sie den Zugriff Ihrer Anwendungen auf Ihren Knoten zulassen möchten, können Sie Ihre Sicherheitsgruppe so einrichten, dass der Zugriff durch EC2-Instances mit bestimmten EC2-Sicherheitsgruppenmitgliedschaften oder IP-Bereichen erlaubt wird. Dieser Vorgang wird als "Zutritt" bezeichnet. Nach der Konfiguration des Ingress für eine Sicherheitsgruppe gelten für alle mit der betreffenden Sicherheitsgruppe verbundenen Knoten die gleichen Regeln. Sicherheitsgruppen können im Abschnitt "Sicherheitsgruppen" der Amazon ElastiCache-Konsole oder mithilfe der Amazon ElastiCache-APIs konfiguriert werden.

In VPC-Bereitstellungen wird der Zugriff auf Ihre Knoten mithilfe der VPC-Sicherheitsgruppe und der Subnet Group gesteuert. Die VPC-Sicherheitsgruppe ist die VPC-Entsprechung der Sicherheitsgruppe.

F: Welche Vorkehrungen sollte ich treffen, um sicherzustellen, dass meine Anwendung auf die ElastiCache-Knoten in der VPC zugreifen kann?

Sie müssen Routing-Tabellen und Netzwerk-ACLs in Ihrer VPC entsprechend ändern, um sicherzustellen, dass Ihre ElastiCache-Knoten für Ihre Client-Instances in der VPC erreichbar sind. Weitere Informationen finden Sie in der Amazon ElastiCache-Dokumentation.

F: Kann ich mithilfe von Sicherheitsgruppen die Cluster konfigurieren, die Teil meiner VPC sind?

Nein, Sicherheitsgruppen werden beim Betrieb in einer VPC nicht verwendet. Sie kommen stattdessen in Umgebungen ohne VPC zum Einsatz. Beim Erstellen eines Clusters in einer VPC müssen Sie VPC-Sicherheitsgruppen verwenden.

F: Kann ich eine herkömmliche EC2-Sicherheitsgruppe einem Cluster zuordnen, der innerhalb einer VPC gestartet wird?

Nein, Sie können nur VPC-Sicherheitsgruppen zuordnen, die zur selben VPC wie Ihr Cluster gehören.

F: Können sich Knoten eines ElastiCache-Clusters über mehrere Subnetze erstrecken?

Ja, Knoten eines Amazon ElastiCache-Clusters können sich über mehrere Subnetze erstrecken, sofern die Subnetze zur selben Subnet Group gehören, die zum Zeitpunkt der Erstellung dem ElastiCache-Cluster zugeordnet war.


F: Was sind Parameter Groups? Wofür sind sie nützlich?

Eine Parameter Group ist eine Art "Behälter" für die Werte der Engine-Konfiguration, die auf ein oder mehrere Cluster angewendet werden können. Falls Sie einen Cluster erstellen, ohne eine Parameter Group zu erstellen, wird eine standardmäßige Parameter Group verwendet. Diese Standardgruppe enthält Engine-Standardwerte und Systemstandardwerte für Amazon ElastiCache, die für das ausgeführte Cluster optimiert sind. Wenn das Cluster jedoch mit den von Ihnen definierten Engine-Konfigurationswerten ausgeführt werden soll, erstellen Sie einfach eine neue Parameter Group, erstellen Sie die betreffenden Parameter, und legen Sie fest, dass das Cluster die neue Parameter Group verwendet. Nach der Zuordnung der einzelnen Cluster zu einer bestimmten Parameter Group werden alle Instances mit den Parametern der jeweiligen Parameter Group aktualisiert. Weitere Informationen zur Konfiguration von Parameter Groups finden Sie im Amazon ElastiCache-Benutzerhandbuch.

F: Wie wähle ich die passenden Konfigurationsparameter für mein(e) Cluster aus?

Amazon ElastiCache wählt standardmäßig die optimalen Konfigurationsparameter für Ihr Cluster und berücksichtigt dabei den Speicher bzw. die Rechenressourcenkapaziät des Knotentyps. Sie können die Standardeinstellung jedoch über die Konfigurationsverwaltungs-APIs ändern. Bitte beachten Sie, dass eine Änderung der empfohlenen Werte der Konfigurationsparameter unbeabsichtigte Folgen haben kann, die von einer herabgesetzten Leistung bis hin zu Systemzusammenbrüchen reichen können. Derartige Änderungen sollten daher nur von erfahrenen Benutzern vorgenommen werden, die bereit sind, diese Risiken in Kauf zu nehmen. Weitere Informationen zum Ändern von Parametern finden Sie im Amazon ElastiCache User Guide.

F: Wie kann ich die aktuelle Einstellung für die Parameter einer bestimmten Parameter Group anzeigen?

Informationen zu den Parameter Groups und den entsprechenden Parametereinstellungen können mithilfe der AWS Management Console, der Amazon ElastiCache-APIs oder mit den Befehlszeilen-Tools angezeigt werden.


F: Was kann ich mit Amazon ElastiCache for Memcached in den Cache stellen?

Sie können mit dem Service zahlreiche Objekte speichern, von Inhalten aus persistenten Datenspeichern (wie Amazon RDS, SimpleDB, oder auf EC2 gehostete selbstverwaltete Datenbanken) bis hin zu dynamisch generierten Web-Seiten (zum Beispiel mit Nginx) oder transienten Sitzungsdaten, für die kein persistenter Sicherheitsspeicher benötigt wird. Sie können mit Amazon ElastiCache auch Hochfrequenzzähler implementieren, die in Webanwendungen mit hohen Zugriffszahlen eine Zugangskontrolle bereitstellen.

F: Kann ich Amazon ElastiCache für Memcached mit einem persistenten AWS-Datenspeicher wie Amazon SimpleDB oder Amazon RDS verwenden?

Ja, Amazon ElastiCache ist ein idealer Front-End-Service für Datenspeicher wie Amazon SimpleDB und Amazon RDS. Er stellt eine hochleistungsfähige Logikschicht für Anwendungen mit extrem hohen Anforderungsraten und/oder niedrigem Latenzbedarf zur Verfügung.

F: Ich verwende derzeit Memcached. Wie kann ich zu Amazon ElastiCache migrieren?

Amazon ElastiCache ist auf Protokollebene mit Memcached kompatibel. Daher können Sie Standardvorgänge von Memcached wie "get", "set", "incr" und "decr" auf die gleiche Weise ausführen wie in Ihren vorhandenen Memcached-Bereitstellungen. Amazon ElastiCache unterstützt Text und binäre Protokolle. Darüber hinaus unterstützt es die meisten Standardstatistikergebnisse, die über CloudWatch auch als Diagramme angezeigt werden können. Daher können Sie auf Amazon ElastiCache umsteigen, ohne Ihre Anwendungen neu kompilieren oder neu verknüpfen zu müssen. Die verwendeten Bibliotheken werden weiterhin funktionieren. Um die Cache-Server zu konfigurieren, auf die Ihre Anwendung zugreift, müssen Sie lediglich die Konfigurationsdatei Ihrer Anwendung für Memcached aktualisieren und die von uns bereitgestellten Endpunkte der Server (Knoten) aufnehmen. Eine Liste der Endpunkte erhalten Sie, indem Sie in der AWS Management Console die Option "Copy Node Endpoints" (Knotenendpunkte kopieren) wählen oder die DescribeCacheClusters-API verwenden. Wie bei jeder Migration werden umfangreiche Tests der neuen Amazon ElastiCache-Bereitstellung empfohlen, bevor Sie endgültig Ihre derzeitige Lösung ablösen.

Beachten Sie, dass Amazon ElastiCache im Moment nur den Zugriff aus dem Amazon EC2-Netzwerk unterstützt. Um also diesen Service verwenden zu können, müssen sich Ihre Anwendungs-Server in Amazon EC2 befinden.

Mit den DNS-Einträgen ermöglicht Amazon ElastiCache Clientanwendungen die Suche nach Servern (Knoten). Der DNS-Name für einen Knoten bleibt konstant, die IP-Adresse kann sich jedoch im Laufe der Zeit ändern, beispielsweise, wenn Knoten nach einem Ausfall bei einer nicht-VPC-Installation automatisch ersetzt werden. Empfehlungen zur Vorgehensweise beim Ausfall von Knoten finden Sie in den häufig gestellten Fragen.


F: Wie wähle ich den für meine Anwendung geeigneten Knotentyp aus?

Es gibt zwar keine präzise Antwort auf diese Frage, doch mit Amazon ElastiCache müssen Sie sich keine Gedanken darum machen, ob die Zahl der Knoten wirklich hundertprozentig richtig ist, da Sie Knoten zu einem späteren Zeitpunkt auf einfache Weise hinzufügen oder entfernen können. Berücksichtigen Sie bei der Wahl Ihrer Ausgangskonfiguration die folgenden beiden sich wechselseitig bedingenden Aspekte:

  • Die Gesamtspeicherkapazität, die für Ihre Daten erforderlich ist, um die Cache-Trefferrate für das Ziel zu erzielen.
  • Die Anzahl der Knoten, die erforderlich sind, um eine akzeptable Anwendungsleistung beizubehalten, ohne das Datenbank-Backend im Falle des Ausfalls eines Knotens zu überlasten.

Die erforderliche Speicherkapazität hängt von der Größe Ihres Datensets und den Zugriffsmustern Ihrer Anwendung ab. Sobald Sie grob wissen, wie viel Gesamtspeicher benötigt wird, teilen Sie, den Speicher in ausreichend Knoten ein, sodass Ihre Anwendung den Verlust von ein, zwei Knoten verkraften kann. So können Sie die Fehlertoleranz verbessern. Wenn Sie beispielsweise 13 GB benötigen, könnten Sie statt eines Knotens des Typs cache.m3.xlarge zwei Knoten des Typs cache.m3.large verwenden. Andere Systeme, beispielsweise Datenbanken, dürfen nicht überlastet werden, wenn die Trefferrate des Caches während der Fehlerwiederherstellung eines oder mehrerer Knoten zeitweilig reduziert wird. Weitere Informationen hierzu finden Sie im Amazon ElastiCache User Guide.

F: Kann sich ein Cluster über mehrere Availability Zones erstrecken?

Ja. Wenn Sie einen Cluster erstellen oder einem vorhandenen Cluster Knoten hinzufügen, können Sie die Availability Zones für die neuen Knoten wählen. Sie können entweder die angeforderte Anzahl von Knoten in jeder Availability Zone angeben oder "spread nodes across zones" (Knoten über Zonen verteilen) wählen. Falls der Cluster in VPC ist, können die Knoten nur in Availability Zones platziert werden, die Teil der ausgewählten Cache-Subnetzgruppe sind. Weitere Details finden Sie in der Dokumentation zu ElastiCache VPC.

F: Wie viele Knoten kann ich in Amazon ElastiCache ausführen?

Sie können pro Region maximal 50 Knoten ausführen. Wenn Sie mehr Knoten benötigen, füllen Sie das Formular zur Beantragung der Erhöhung des ElastiCache-Limits aus.

F: Wie reagiert Amazon ElastiCache auf Ausfälle von Knoten?

Der Service erkennt den Ausfall des Knotens und reagiert mit den folgenden automatischen Schritten:

  • Amazon ElastiCache repariert den Knoten, indem neue Serviceressourcen beschafft werden und der vorhandene DNS-Namen des Cache-Knotens zu den neuen Serviceressourcen umgeleitet wird. Bei VPC-Installationen stellt ElastiCache sicher, dass sowohl der DNS-Name als auch die IP-Adresse des Knotens gleich bleiben, wenn Knoten nach einem Ausfall wiederhergestellt werden. Bei Nicht-VPC-Installationen stellt ElastiCache sicher, dass der DNS-Name eines Knotens unverändert bleibt. Die zugrunde liegende IP-Adresse des Knotens kann sich allerdings ändern.
  • Wenn Sie, nachdem der neue Knoten konfiguriert wurde und einsatzbereit ist, Ihrem Cluster ein SNS-Thema zugeordnet haben, sendet Amazon ElastiCache eine SNS-Benachrichtigung, in der Sie über die Wiederherstellung des Knotens informiert werden. Auf diese Weise können Sie für Ihre Anwendung optional arrangieren, dass die erneute Anmeldung der Memcached-Client-Bibliothek bei den reparierten Knoten erzwungen wird. Dies kann wichtig sein, weil einige Memcached-Bibliotheken auf unbestimmte Zeit keinen Server (Knoten) mehr verwenden, wenn es auf diesem Server zu Kommunikationsfehlern oder Zeitüberschreitungen kommt.

F: Wie kann ich die Gesamtspeicherkapazität mit Amazon ElastiCache erhöhen, wenn ich mehr Arbeitsspeicher für meine Anwendung benötige?

Sie können Ihrem vorhandenen Memcached-Cluster weitere Knoten hinzufügen. Verwenden Sie hierfür die Option "Knoten hinzufügen" auf der Registerkarte "Nodes" für Ihr Cache-Cluster auf der AWS Management Console, oder rufen Sie die ModifyCacheCluster-API auf.


F: Wie interagiert Amazon ElastiCache mit anderen Amazon Web Services?

Amazon ElastiCache eignet sich ideal als Front-End für Amazon Web Services wie Amazon RDS und Amazon DynamoDB. Es bietet extrem niedrige Latenz für hochleistungsfähige Anwendungen und kann einen Teil des Anforderungsvolumens auslagern, während diese Services eine langfristige Datenhaltbarkeit bereitstellen. Mit dem Service verbessern Sie auch die Anwendungsleistung in Verbindung mit Amazon EC2 und EMR.

F: Eignet sich Amazon ElastiCache besser für eine bestimmte Programmiersprache?

Client-Bibliotheken von Memcached sind für viele, jede nicht für alle gängigen Programmiersprachen verfügbar. Weitere Informationen zu Memcached-Clients finden Sie hier. Wenn Sie bei der Verwendung von Amazon ElastiCache auf Probleme mit spezifischen Memcached-Clients treffen, wenden Sie sich über das Amazon ElastiCache Community-Forum an uns.

F: Welche gängigen Memcached-Bibliotheken sind mit Amazon ElastiCache kompatibel?

Amazon ElastiCache benötigt keine spezifischen Client-Bibliotheken und arbeitet mit vorhandenen Memcached-Client-Bibliotheken, ohne dass eine Neukompilierung oder Neuverknüpfung von Anwendungen (Memcached 1.4.5 oder höher) nötig ist. Zu den Beispielen gehören libMemcached (C) und darauf aufbauende Bibliotheken (beispielsweise PHP, Perl, Python), spyMemcached (Java) und fauna (Ruby).


F: Was ist AutoErkennung, und wofür eignet sich diese Funktion?

AutoErkennung ist eine Funktion, mit deren Hilfe Entwickler sich Zeit und Mühen ersparen und die zugleich die Komplexität ihrer Anwendungen verringern. AutoErkennung ermöglicht Clients das automatische Auffinden von Cache-Knoten, wenn diese einem Amazon ElastiCache-Cluster hinzugefügt oder daraus entfernt werden. Bislang müssen Entwickler bei Änderungen von Cluster-Mitgliedern die Liste der Cache-Knotenendpunkte manuell aktualisieren. Je nach Architektur der Client-Anwendung ist zumeist eine Client-Initialisierung durch ein Herunterfahren der Anwendung und ihren Neustart erforderlich, was zu Ausfallzeiten führt. Dank AutoErkennung fällt dieser Aufwand weg. Über AutoErkennung, die zudem mit dem Memcached-Protokoll abwärtskompatibel ist, stellt Amazon ElastiCache Clients Informationen zu Cache-Cluster-Mitgliedern bereit. Ein Client, der die zusätzlichen Informationen verarbeiten kann, konfiguriert sich selbst ohne jegliche Initialisierung für die Nutzung der neuesten Knoten eines Amazon ElastiCache-Clusters neu.

F: Wie funktioniert AutoErkennung?

Ein Amazon ElastiCache-Cluster kann mit Knoten erstellt werden, die über benannte Endpunkte adressierbar sind. Über AutoErkennung erhält der Amazon ElastiCache-Cluster zudem einen eindeutigen Konfigurationsendpunkt, bei dem es sich um einen für die Nutzungsdauer des Clusters gültigen DNS-Eintrag handelt. Dieser DNS-Eintrag enthält die DNS-Namen der zum Cluster gehörenden Knoten. Amazon ElastiCache stellt sicher, dass der Konfigurationsendpunkt stets auf mindestens einen solchen Zielknoten verweist. Eine an den Zielknoten gerichtete Abfrage gibt anschließend Endpunkte aller Knoten des betreffenden Clusters zurück. Im Anschluss können Sie wie zuvor Verbindungen mit den Cluster-Knoten herstellen und Befehle des Memcached-Protokolls wie GET, SET, INCR und DECR aufrufen. Weitere Details finden Sie hier. Zur Nutzung von AutoErkennung ist ein AutoErkennung-fähiger Client erforderlich. AutoErkennung-Clients für Java und PHP stehen in der Amazon ElastiCache-Konsole zum Herunterladen bereit. Bei Initialisierung bestimmt der Client automatisch die aktuellen Mitglieder des Amazon ElastiCache-Clusters mithilfe des Konfigurationsendpunkts. Wenn Sie Änderungen am Cache-Cluster vornehmen, indem Sie Knoten hinzufügen oder entfernen oder einen ausgefallener Knoten austauschen, erkennt der AutoErkennung-Client automatisch die Änderungen, sodass Sie Ihre Clients nicht manuell initialisieren müssen.

F: Welche ersten Schritte sind für den Einsatz von AutoErkennung notwendig?

Laden Sie zunächst den Amazon ElastiCache-Cluster-Client herunter, indem Sie in der Amazon ElastiCache-Konsole auf den Link "Download ElastiCache Cluster Client" klicken. Zum Herunterladen benötigen Sie ein Amazon ElastiCache-Konto. Sollten Sie noch keines haben, können Sie sich auf der Amazon ElastiCache-Seite mit den Details anmelden. Nachdem Sie den Client heruntergeladen haben, können Sie Ihren Amazon ElastiCache-Cluster über die Amazon ElastiCache-Konsole einrichten und aktivieren. Weitere Details finden Sie hier.

F: Kann ich, wenn ich weiter meine eigenen Memcached-Clients mit meinem ElastiCache-Cluster nutze, in den Genuss dieser Funktion kommen?

Nein, die vorhandenen Memcached-Clients unterstützen AutoErkennung nicht. Zur Nutzung von AutoErkennung muss ein Client einen Konfigurationsendpunkt verwenden und die Cluster-Knotenendpunkte bestimmen können. Sie müssen entweder den Amazon ElastiCache-Cluster-Client verwenden oder Ihren vorhandenen Memcached-Client um den Befehlssatz für AutoErkennung ergänzen.

F: Was sind die Mindestvoraussetzungen für Hardware/Software für AutoErkennung?

Um AutoErkennung nutzen zu können, muss ein AutoErkennung-fähiger Client zum Herstellen einer Verbindung mit einem Amazon ElastiCache-Cluster verwendet werden. Amazon ElastiCache unterstützt derzeit AutoErkennung-fähige Clients für Java und PHP. Diese können aus der Amazon ElastiCache-Konsole heruntergeladen werden. Aufbauend auf den verfügbaren beliebten Memcached-Clients können unsere Kunden Clients für andere Programmiersprachen erstellen.

F: Wie ändere bzw. erstelle ich einen eigenen Memcached-Client mit Unterstützung für AutoErkennung?

Sie können eine beliebige Memcached-Client-Bibliothek wählen und Unterstützung für AutoErkennung hinzufügen. Wenn Sie möchten, dass Ihr eigener Client AutoErkennung unterstützt, konsultieren Sie die Dokumentation zum Befehlssatz für AutoErkennung.

F: Ist Unterstützung für weitere Programmiersprachen geplant?

Ja, als Nächstes kommt Ruby in Betracht, und anschließend folgen ggf. weitere Sprachen.

F: Kann ich weiter mit meinem vorhandenen Memcached-Client arbeiten, wenn ich AutoErkennung nicht benötige?

Ja, Amazon ElastiCache unterstützt weiter das Memcached-Protokoll, sodass Sie Ihre Clients nicht ändern müssen. Damit AutoErkennung genutzt werden kann, mussten wir allerdings die Memcached-Client-Funktionalität erweitern. Wenn Sie den Amazon ElastiCache-Cluster-Client nicht nutzen möchten, können Sie weiter Ihre eigenen Clients einsetzen oder Ihre eigene Client-Bibliothek so ändern, dass der Befehlssatz von AutoErkennung unterstützt wird.

F: Sind bei Nutzung von AutoErkennung heterogene Clients möglich?

Ja, mit demselben Amazon ElastiCache-Cluster kann gleichzeitig eine Verbindung über einen AutoErkennung-fähigen Client und den herkömmlichen Memcached-Client hergestellt werden. Amazon ElastiCache bleibt zu 100 % mit Memcached kompatibel.

F: Kann ich die Nutzung von AutoErkennung beenden?

Ja, Sie können die Nutzung von AutoErkennung jederzeit einstellen. Sie können AutoErkennung deaktivieren, indem Sie während der Initialisierung des Amazon ElastiCache-Cluster-Clients den Betriebsmodus angeben. Und da Amazon ElastiCache Memcached weiter zu 100 % unterstützt, können Sie jeden mit Memcached auf Protokollebene kompatiblen Client wie zuvor nutzen.


F: Kann ich steuern, ob und wann die dem Amazon ElastiCache-Cluster zugrunde liegende Engine-Version auf neue unterstützte Versionen aktualisiert wird?

Mit Amazon ElastiCache können Sie steuern, ob und wann die mit dem Memcached-Protokoll kompatible Software, die Ihrem Cluster zugrunde liegt, auf neue, von Amazon ElastiCache unterstützte Versionen aktualisiert werden soll. Damit bleiben Sie flexibel – Sie können die Kompatibilität mit spezifischen Memcached-Versionen sicherstellen, neue Versionen mit Ihrer Anwendung testen, bevor Sie sie in der Produktionsumgebung bereitstellen, und Versions-Upgrades nach Ihren eigenen Vorstellungen und Zeitplänen durchführen. Da größere Versions-Upgrades einige Kompatibilitätsrisiken mit sich bringen, werden sie nicht automatisch durchgeführt, sondern müssen von Ihnen ausgelöst werden. Mit diesem Ansatz des Patchings der Software haben Sie die Kontrolle über die Versions-Upgrades, können aber gleichzeitig die mit dem Patching verbundenen Arbeitsschritte an Amazon ElastiCache weitergeben. Weitere Informationen über das Versionsmanagement erhalten Sie unter den folgenden, häufig gestellten Fragen Weitere Informationen finden Sie auch im Amazon ElastiCache User Guide. Die Funktion des Versions-Managements für die Engine soll Ihnen möglichst viel Flexibilität in Bezug auf das Patching gewähren. Das Patching für Ihr Cluster kann jedoch auch automatisch erfolgen, wenn wir Sicherheitslücken im System oder in der Cache-Software erkennen.

F: Wie gebe ich an, auf welcher unterstützten Memcached-Version mein Cluster ausgeführt werden soll?

Beim Erstellen eines neuen Clusters können Sie eine beliebige derzeit unterstützte Version (Haupt-/oder Nebenversion) angeben. Wenn Sie ein Upgrade auf eine unterstützte Engine-Version auslösen möchten, wählen Sie die Option "Modify" für Ihren Cluster. Geben Sie im Feld "Cache Engine Version" einfach die Version an, auf die aktualisiert werden soll. Das Upgrade wird dann entweder sofort (bei aktivierter Option "Apply Immediately") oder im nächsten für Ihr Cluster geplanten Wartungsfenster ausgeführt.

F: Kann ich neue Versionen für mein Cluster testen, bevor ich ein Upgrade durchführe?

Ja. Erstellen Sie zu diesem Zweck ein neues Cluster mit der neuen Engine-Version. Verweisen Sie Ihre Entwicklungs-/Staging-Anwendung auf dieses Cluster, testen Sie es, und entscheiden Sie, ob das ursprüngliche Cluster aktualisiert werden soll.

F: Gibt es für Amazon ElastiCache Richtlinien zur Unterstützung neuer und/oder Ablehnung bereits unterstützter Memcached-Versionen?

Für die Zukunft planen wir die Unterstützung zusätzlicher Haupt- und Nebenversionen von Memcached für Amazon ElastiCache. Wie viele neue Versionsveröffentlichungen in einem gegebenen Jahr unterstützt werden, hängt von Häufigkeit und Inhalt der Memcached-Versionsveröffentlichungen sowie den Ergebnissen der Prüfungen ab, denen die neuen Versionen durch unsere Techniker unterzogen werden. Im Allgemeinen versuchen wir jedoch, neue Memcached-Versionen innerhalb von 3-5 Monaten nach ihrer allgemeinen Einführung zu unterstützen.

F: Welche Version des Wire-Protokolls von Memcached unterstützt Amazon ElastiCache?

Amazon ElastiCache unterstützt das für Memcached verwendete Text- und Binärprotokoll der Memcached-Versionen 1.4.5, 1.4.14 und 1.4.24.


F: Was ist Amazon ElastiCache for Redis?

Amazon ElastiCache for Redis ist ein Webservice für das einfache Bereitstellen und Betreiben von mit dem Redis-Protokoll kompatiblen Serverknoten in der Cloud. Der Service ermöglicht die Verwaltung, Überwachung und den Betrieb eines Redis-Knotens. Das Erstellen, Löschen und Ändern des Knotens kann über die ElastiCache-Konsole, die Befehlszeilen-Schnittstelle oder Webservice-APIs erfolgen. Amazon ElastiCache for Redis unterstützt die Master/Slave-Replikation von Redis.

F: Ist Amazon ElastiCache for Redis auf Protokollebene kompatibel mit Open Source Redis?

Ja, Amazon ElastiCache for Redis ist auf Protokollebene kompatibel mit Open Source Redis. Codes, Anwendungen, Treiber und Tools, die Kunden derzeit in ihren bestehenden Redis-Datenspeichern nutzen, funktionieren auch mit ElastiCache for Redis. Und für vorhandene Redis-Bereitstellungen, die zu ElastiCache for Redis migriert werden, sind keine Codeänderungen außer den angegebenen erforderlich. Derzeit werden Redis 2.8.21, 2.8.22, 2.8.23, 2.8.24 und 3.2.4 unterstützt.

F: Was sind Amazon ElastiCache für Redis-Knoten und -Shards?

Ein Amazon ElastiCache für Redis-Knoten ist der kleinste Baustein einer ElastiCache für Redis-Cluster-Bereitstellung. Jeder Knoten unterstützt das Redis-Protokoll mit den Erweiterungen von Amazon und verfügt über einen eigenen Endpunkt und Port. Mehrere Knotentypen mit variierenden CPU-Funktionen und Arbeitsspeicherkapazitäten werden unterstützt.

Eine Shard ist eine Sammlung aus einem oder mehreren Knoten, die für die Aufteilung des logischen Schlüsselraums verantwortlich ist. Innerhalb einer Shard kann ein Knoten eigenständig oder in einer Primär-/Replikatbeziehung zu anderen Knoten existieren. Wenn es innerhalb einer Shard mehrere Knoten gibt, übernimmt einer der Knoten die primäre Lese-/Schreibrolle, während alle anderen Knoten eine schreibgeschützte Replikatrolle übernehmen.

F: Unterstützt Amazon ElastiCache for Redis die Redis-Persistenz?

Ja, Sie können die Persistenz mithilfe von Snapshots von Ihren Redis-Daten anhand der Funktion zum Sichern und Wiederherstellen erreichen. Einzelheiten finden Sie hier.

F: Wie kann ich von Amazon ElastiCache for Memcached zu Amazon ElastiCache for Redis migrieren und umgekehrt?

Derzeit wird eine automatische Migration von Memcached zu Redis oder umgekehrt nicht unterstützt. Sie können jedoch einen Memcached-Client zum Lesen von Daten in einem Memcached-Cluster und einen Redis-Client zum Schreiben von Daten in einen Redis-Cluster nutzen. Sie können gleichermaßen einen Redis-Client zum Lesen von Daten in einem Redis-Cluster und einen Memcached-Client zum Schreiben von Daten in einen Memcached-Cluster nutzen. Berücksichtigen Sie stets die Unterschiede beim Datenformat und die Cluster-Konfiguration der beiden Engines.

F: Unterstützt Amazon ElastiCache for Redis den Multi-AZ-Betrieb?

Ja, mit Amazon ElastiCache for Redis können Sie eine Read Replica in einer anderen AWS Availability Zone erstellen. Bei Ausfall des Primärknotens stellen wir einen neuen Primärknoten bereit. In Fällen, in denen der Primärknoten nicht bereitgestellt werden kann, können Sie entscheiden, welche Read Replica als neuer Primärknoten hochgestuft werden soll. Hier finden Sie weitere Details zur Vorgehensweise bei Knotenausfällen.

F: Welche Optionen bietet Amazon ElastiCache for Redis bei Knotenausfällen?

Amazon ElastiCache for Redis repariert den Knoten, indem neue Serviceressourcen beschafft werden und der vorhandene DNS-Namen des Cache-Knotens zu den neuen Serviceressourcen umgeleitet wird. So bleibt der DNS-Name für einen Redis-Knoten gleich, die IP-Adresse eines Redis-Knotens kann sich im Lauf der Zeit jedoch ändern. Wenn Sie eine Replikationsgruppe mit einer oder mehreren Read Replicas haben und Multi-AZ aktiviert ist, erkennt ElastiCache automatisch den etwaigen Ausfall eines primären Knotens, wählt ein Replikat und stuft es zum neuen primären Knoten hoch. ElastiCache übernimmt auch das DNS, sodass Sie den primären Endpunkt weiter verwenden können, und nach der Hochstufung wird auf den neu hochgestuften primären Knoten verwiesen. Weitere Details finden Sie in diesen häufig gestellten Fragen im Abschnitt Multi-AZ. Wenn die Redis-Replikationsoption ausgewählt und Multi-AZ deaktiviert ist, haben Sie bei einem Ausfall des primären Knotens die Möglichkeit, ein Failover auf einen Read Replica-Knoten auszulösen. Das Failover-Ziel kann sich in derselben oder einer anderen Zone befinden. Für ein Failback in die ursprüngliche Zone stufen Sie die Read Replica in der ursprünglichen Zone zum Primärknoten hoch. Sie können die Architektur Ihrer Anwendung so gestalten, dass die Redis-Client-Bibliothek gezwungen wird, die Verbindung mit dem reparierten Redis-Serverknoten wiederherzustellen. Dies kann hilfreich sein, da einige Redis-Bibliotheken die ständige Verwendung eines Servers einstellen, sobald es zu Kommunikations- oder Zeitbeschränkungsfehlern kommt.

F: Wie funktioniert ein Failover?

Das Failover-Verhalten Multi-AZ-fähiger Replikationsgruppen wird in diesen häufig gestellten Fragen im Abschnitt Multi-AZ beschrieben.

Angenommen, Sie aktivieren Multi-AZ nicht und Amazon ElastiCache überwacht den Primärknoten. Sollte dieser nicht verfügbar sein oder nicht reagieren, repariert Amazon ElastiCache for Redis den Knoten, indem neue Serviceressourcen beschafft werden und der vorhandene DNS-Name des Cache-Knotens zu den neuen Serviceressourcen umgeleitet wird. So bleibt der DNS-Name für einen Redis-Knoten gleich, die IP-Adresse eines Redis-Knotens kann sich im Lauf der Zeit jedoch ändern. Wenn der Primärknoten jedoch nicht repariert werden kann (und Multi-AZ deaktiviert ist), können Sie eine der Read Replicas als neuen Primärknoten hochstufen. Hier erfahren Sie, wie ein neuer Primärknoten ausgewählt wird. Der DNS-Datensatz des Endpunkts des Primärknotens wird so geändert, dass auf den hochgestuften Read Replica-Knoten gezeigt wird. Ein Read Replica-Knoten in der Availability Zone des ursprünglichen Primärknotens wird anschließend als Read Replica in der Shard erstellt und dem neuen Primärknoten folgen. 

F: Stehen meine Read Replicas bei Ausfall eines primären Knotens zur Verfügung?

Ja, bei einem Primärknotenausfall werden Anforderungen von den Read Replicas weiter erfüllt. Nachdem der Primärknoten wiederhergestellt wurde (entweder als reparierter Knoten oder als hochgestufte Read Replica), erfüllen die Read Replicas für einen kurzen Zeitraum keine Anforderungen, da sie die Cache-Informationen des Primärknotens synchronisieren.

F: Wie konfiguriere ich Parameter meiner Amazon ElastiCache for Redis-Knoten?

Sie können Ihre Redis-Installation mithilfe einer Parameter Group konfigurieren, die für einen Redis-Cluster angegeben werden muss. Alle Read Replica-Cluster nutzen die Parametergruppe ihres primären Clusters. Eine Redis-Parametergruppe fungiert als "Behälter" für die Werte der Redis-Konfiguration, die von einem oder mehreren primären Redis-Clustern übernommen werden können. Wenn Sie einen primären Redis-Cluster erstellen, ohne eine Parameter Group anzugeben, wird eine Standard-Parameter Group verwendet. Diese Standardgruppe enthält Standardeinstellungen für die Knotentypen, die Sie ausführen möchten. Wenn Ihr primärer Redis-Cluster jedoch mit den von Ihnen definierten Konfigurationswerten ausgeführt werden soll, erstellen Sie einfach eine neue Cache-Parametergruppe, geben die gewünschten Parameter an und legen fest, dass der primäre Redis-Cluster die neue Parametergruppe verwendet.

F: Kann ich über die Amazon ElastiCache-Konsole auf Redis zugreifen?

Ja, Redis wird als Engine-Option in der ElastiCache-Konsole. angezeigt. Sie können mit dem Launch Wizard einen neuen Redis-Cache-Cluster erstellen, indem Sie die Redis-Engine auswählen. Sie können über die ElastiCache-Konsole auch einen vorhandenen Redis-Cluster ändern oder löschen.

F: Können Amazon ElastiCache for Redis-Cluster in einer Amazon VPC erstellt werden?

Ja, ebenso wie Sie Memcached-Cluster in einer VPC erstellen können, ist das Erstellen von Redis-Clustern in einer VPC möglich. Wenn Ihr Konto standardmäßig ein VPC-Konto ist, werden Ihre Redis-Cluster in der Standard-VPC erstellt, die Ihrem Konto zugeordnet ist. In der ElastiCache-Konsole können Sie beim Erstellen Ihres Clusters eine andere VPC angeben.

F: Wird die Redis-Kennwortfunktionalität in Amazon ElastiCache for Redis unterstützt?

Nein, Amazon ElastiCache for Redis unterstützt keine Redis-Kennwörter. Dies ist aufgrund der Einschränkungen für Kennwörter, die in einer Konfigurationsdatei gespeichert werden, nicht möglich. Anstatt mit Redis-Kennwörtern zu arbeiten, sind ElastiCache for Redis-Cluster einer EC2-Sicherheitsgruppe zugeordnet und nur Clients in dieser Sicherheitsgruppe haben Zugriff auf den Redis-Server.

F: Wie kann ich auf eine neuere Version der Engine aktualisieren?

Mit den ModifyCacheCluster- oder ModifyReplicationGroup-APIs und durch Angeben der bevorzugten Engine-Version für den EngineVersion-Parameter können Sie problemlos auf eine neuere Version der Engine aktualisieren. In der ElastiCache-Konsole können Sie einen Cluster auswählen und auf "Modify" klicken. Wählen Sie im Fenster "Modify" Ihre bevorzugte Engine-Version aus den verfügbaren Optionen aus. Der Engine-Aktualisierungsprozess wurde so gestaltet, dass Ihre vorhandenen Daten möglichst beibehalten werden. Außerdem benötigt er eine erfolgreiche Redis-Replikation. Weitere Informationen dazu finden Sie hier.

F: Kann ich zurück zu einer älteren Version der Engine wechseln?

Nein. Das Wechseln auf eine ältere Version der Engine wird nicht unterstützt.

F: Wie kann ich auf einen größeren Knotentyp hochskalieren?

Mit den ModifyCacheCluster- oder ModifyReplicationGroup-APIs und durch Angeben des bevorzugten Knotentyps für den CacheNodeType-Parameter können Sie problemlos auf einen größeren Knotentyp hochskalieren. In der ElastiCache-Konsole können Sie einen Cache-Cluster oder eine Replikationsgruppe auswählen und auf „Modify“ klicken. Wählen Sie im Fenster "Modify" Ihren bevorzugten Knotentyp aus den verfügbaren Optionen aus. Der Skalierungsprozess wurde so gestaltet, dass Ihre vorhandenen Daten möglichst beibehalten werden. Außerdem benötigt er eine erfolgreiche Redis-Replikation. Weitere Informationen dazu finden Sie hier.

F: Kann ich auf einen kleineren Knotentyp herunterskalieren?

Der Wechsel zu einem kleineren Knotentyp wird derzeit nicht unterstützt.


F: Was bedeutet es, einen Redis-Knoten als Read Replica auszuführen?

Read Replicas dienen in Redis zwei Zwecken:

  • Ausfallbehandlung
  • Leseskalierung

Wenn Sie einen Knoten mit einer Read Replica betreiben, dient der Primärknoten sowohl für Schreib- als auch für Lesevorgänge. Die Read Replica fungiert als "Standby-Knoten" und wird bei einem Ausfall "hochgestuft". Nach dem Failover wird der Standby-Knoten zum Primärknoten und verarbeitet dann Ihre Cache-Vorgänge. Read Replicas ermöglichen außerdem eine einfache elastische Skalierung über die Kapazitätseinschränkungen eines einzelnen Knotens hinaus, um leseintensive Cache-Arbeitslasten zu unterstützen.

F: Wann sollte ich die Verwendung einer Redis Read Replica in Erwägung ziehen?

Es gibt verschiedene Szenarien, in denen die Bereitstellung einer oder mehrerer Read Replicas für einen gegebenen Primärknoten sinnvoll ist. Häufige Gründe für die Bereitstellung einer Read Replica:

  • Skalierung über die Rechen- oder E/A-Leistung eines einzelnen Primärknotens bei leseintensiven Verarbeitungslasten hinaus. Dieser zusätzliche Lesedatenverkehr kann an eine oder mehrere Read Replicas geleitet werden.
  • Unterstützung des Lesedatenverkehrs bei nicht verfügbarem Primärknoten. Wenn Ihr Primärknoten keine E/A-Anforderungen bearbeiten kann (z. B. aufgrund von E/A-Einschränkungen für Sicherungen oder geplanten Wartungsarbeiten), können Sie den Lesedatenverkehr zu Ihren Read Replicas leiten. Denken Sie in diesem Fall daran, dass die Daten in der Read Replica "veraltet" sein können, da der Primärknoten nicht verfügbar ist. Die Read Replica kann auch zum Neustarten eines ausgefallenen eingeschalteten Primärknotens verwendet werden.
  • Datenschutzszenarien: Für den unwahrscheinlichen Fall eines Primärknotenausfalls oder dass die Availability Zone nicht verfügbar ist, in der sich Ihr Primärknoten befindet, können Sie eine Read Replica in einer anderen Availability Zone zum neuen Primärknoten hochstufen.

F: Wie stelle ich einen Read Replica-Knoten für einen angegebenen primären Knoten bereit?

Read Replicas können binnen Minuten über die standardmäßige "CreateReplicationGroup"-API oder wenige Klicks in der Amazon ElastiCache Management Console erstellt werden. Beim Erstellen eines Clusters geben Sie den Parameter "MasterCacheClusterIdentifier" an. "MasterCacheClusterIdentifier" ist die Cluster-Kennung des primären Cache-Clusters, aus dem Sie Daten replizieren möchten. Sie erstellen anschließend den Read Replica-Cluster in der Shard, indem Sie die "CreateCacheCluster"-API unter Angabe der Parameter "ReplicationGroupIdentifier" und "CacheClusterIdentifier" des Master-Knotens aufrufen. Wie bei einem Standard-Cluster können Sie auch die Availability Zone angeben. Wenn Sie die Erstellung einer Read Replica auslösen, generiert Amazon ElastiCache einen Snapshot Ihres primären Knotens in einer Shard und beginnt mit der Replikation. Das hat eine kurze Unterbrechung des E/A-Datenverkehrs Ihres primären Knotens zur Folge. Die E/A-Unterbrechung dauert meist nicht länger als eine Minute.

Die Read Replicas sind ebenso einfach zu löschen wie zu erstellen. Nutzen Sie hierfür einfach die Amazon ElastiCache Management Console oder rufen Sie die "DeleteCacheCluster "-API auf (wobei Sie "CacheClusterIdentifier" für die Read Replica, die Sie löschen möchten, angeben müssen).

F: Kann ich sowohl einen Primärknoten als auch Read Replicas gleichzeitig erstellen?

Ja. Sie können innerhalb weniger Minuten einen neuen Cache-Cluster zusammen mit Read Replicas erstellen, indem Sie die CreateReplicationGroup API oder den Assistenten "Create" in der Amazon ElastiCache Management Console verwenden und "Multi-AZ Replication" auswählen. Geben Sie beim Erstellen eines Clusters eine ID, die insgesamt gewünschte Anzahl der Shards in einem Cluster und der Read Replicas pro Shard zusammen mit den Cache-Erstellungsparametern wie Knotentyp, Engine-Version usw. an. Sie können auch die Availability Zone für jede Shard im Cluster angeben.

F: Wie stelle ich eine Verbindung mit meinen Read Replicas her?

Verbindungen mit einer Read Replica können wie mit einem primären Cache-Knoten über die "DescribeCacheClusters"-API oder die AWS Management Console hergestellt werden, um die Endpunkte für Ihre Read Replicas abzurufen. Wenn Sie mehrere Read Replicas nutzen, muss Ihre Anwendung bestimmen, wie der Lesedatenverkehr auf diese verteilt wird.

F: Wie viele Read Replicas kann ich für einen gegebenen primären Knoten erstellen?

Derzeit bietet Amazon ElastiCache Ihnen die Möglichkeit, bis zu fünf Read Replicas für einen primären Knoten zu erstellen.

F: Was passiert mit Read Replicas bei einem Failover?

Im Falle eines Failovers müssen alle zugeordneten und verfügbaren Read Replicas automatisch die Replikation fortsetzen, nachdem das Failover abgeschlossen wurde (d. h., sie beginnen mit dem Abrufen von Updates aus der neu hochgestuften Read Replica).

F: Kann ich eine Read Replica einer anderen Read Replica erstellen?

Es ist nicht möglich, Read Replicas einer anderen Read Replica zu erstellen.

F: Kann ich meine Read Replica zu einem "eigenständigen" primären Knoten hochstufen?

Nein, dies wird nicht unterstützt. Stattdessen können Sie einen Snapshot Ihres ElastiCache for Redis-Knotens erstellen (Sie können den primären Knoten oder beliebige der Read Replicas auswählen). Den Snapshot können Sie anschließend als Grundlage eines neuen ElastiCache for Redis-Knotens nutzen.

F: Wird meine Read Replica mit ihrem primären Knoten auf dem neuesten Stand gehalten?

Aktualisierungen eines primären Knotens werden automatisch in allen zugeordneten Read Replicas repliziert. Bei der asynchronen Replizierungstechnologie von Redis kann es jedoch aus verschiedenen Gründen dazu kommen, dass eine Read Replica hinter ihren primären Cache-Knoten zurückfällt. Typische Gründe hierfür sind:

  • Das E/A-Schreibvolumen in den primären Cache-Knoten übersteigt die Rate, mit der Änderungen von der Read Replica übernommen werden können.
  • Netzwerkpartitionen oder Latenz zwischen dem primären Cache-Knoten und einer Read Replica.

Read Replicas unterliegen den Stärken und Schwächen der Redis-Replikation. Wenn Sie Read Replicas verwenden, sollten Sie sich über die potenziellen Verzögerungen (die so genannten "Inkonsistenzen") zwischen einer Read Replica und ihrem primären Cache-Knoten bewusst sein. Klicken Sie hier, um sich mit der "Inkonsistenz" Ihrer Read Replica vertraut zu machen.

F: Wie erlange ich Einblick in aktive Read Replicas?

Sie können die Standard-API "DescribeCacheClusters" nutzen, um eine Liste aller von Ihnen bereitgestellten Cache-Cluster (inklusive Read Replicas) auszugeben, oder einfach in der Amazon ElastiCache Management Console auf die Registerkarte "Redis" klicken.

Amazon ElastiCache überwacht den Replikationsstatus Ihrer Read Replicas und ändert das Feld "Replication State" in "Error", wenn die Replikation aus einem beliebigen Grund eingestellt wird. Die Details zu dem von der Redis-Engine ausgegebenen Fehler können Sie im Feld "Replication Error" einsehen und anschließend entsprechende Abhilfemaßnahmen ergreifen. Weitere Informationen zur Fehlerbehebung bei Replikationsproblemen finden Sie im Abschnitt "Troubleshooting a Read Replica problem" im Amazon ElastiCache User Guide. Wurde ein Replikationsfehler behoben, ändert sich das Feld "Replication State" in "Replicating".

Mit Amazon ElastiCache können Sie ermitteln, wie weit eine Read Replica hinter ihren Primärknoten zurückgefallen ist. Dazu dient die Amazon CloudWatch-Metrik "Replica Lag", die über die AWS Management Console oder Amazon CloudWatch-APIs abgerufen werden kann.

F: Meine Read Replica liegt deutlich hinter ihrem primären Knoten zurück. Was soll ich tun?

Wie in den vorherigen Fragen erörtert, sind "Inkonsistenzen" oder Verzögerungen zwischen einer Read Replica und ihrem primären Knoten bei der asynchronen Redis-Replikation die Regel. Wenn eine vorhandene Read Replica zu weit zurückgefallen ist, um Ihre Anforderungen zu erfüllen, können Sie sie neu starten. Beachten Sie außerdem, dass Replikationsverzögerungen im Laufe der Zeit natürlich ab- und zunehmen können, was vom jeweiligen Auslastungsmuster Ihres primären Knotens abhängt.

F: Wie lösche ich eine Read Replica? Wird sie automatisch gelöscht, wenn ihr primärer Knoten gelöscht wird?

Sie können eine Read Replica ganz einfach mit wenigen Klicks in der AWS Management Console oder durch Übergeben ihrer Cache-Cluster-Kennung an die "DeleteCacheCluster"-API löschen. Wenn Sie die Read Replica zusätzlich zum primären Cache-Knoten löschen möchten, müssen Sie die "DeleteReplicationGroup"-API oder die AWS Management Console löschen.

F: Wie viel kosten Read Replicas? Wann beginnt und endet die Fakturierung?

Eine Read Replica wird als Standardknoten und zu denselben Tarifen abgerechnet. Wie bei einem Standardknoten auch wird der Tarif pro "Knotenstunde" für eine Read Replica von der Knotenklasse der Read Replica bestimmt. Aktuelle Preisangaben finden Sie auf der Detailseite von Amazon ElastiCache. Der bei der Replikation von Daten zwischen Ihrem primären Cache-Knoten und der Read Replica anfallende Datenverkehr wird nicht in Rechnung gestellt. Die Fakturierung für eine Read Replica beginnt, sobald diese erfolgreich erstellt wurde (d. h., wenn ihr Status als "active" ausgewiesen ist). Die Read Replica wird so lange nach standardmäßigen Cache-Knoten-Stundensätzen von Amazon ElastiCache abgerechnet, bis Sie den Befehl zu ihrem Löschen aufrufen.

F: Was geschieht während eines Failovers und wie lange dauert dieser Vorgang?

Das Failover wird automatisch von Amazon ElastiCache ausgelöst, damit Sie Vorgänge schnellstmöglich fortsetzen können. Bei einem Failover schaltet Amazon ElastiCache einfach den DNS-Datensatz Ihres Knotens auf die Read Replica um, die wiederum zum neuen Primärknoten hochgestuft wird. Wir empfehlen Ihnen, sich an bewährte Methoden zu halten und eine Funktion auf Anwendungsebene zu implementieren, die ggf. erneut versucht, eine Cache-Knotenverbindung herzustellen. Ein vollständiges Failover dauert in der Regel 3-6 Minuten.

F: Kann ich eine Read Replica einer anderen Region als in meiner primären Region erstellen?

Nein. Ihre Read Replica wird automatisch in einer anderen Availability Zone in derselben Region wie Ihr primärer Cache-Knoten bereitgestellt.

F: Kann ich sehen, in welcher Availability Zone sich mein Primärknoten derzeit befindet?

Ja, Sie können über die AWS Management Console oder mithilfe der "DescribeCacheClusters"-API den Speicherort des aktuellen Primärknotens ermitteln.

Nach einem Failover befindet sich meine Primär-Instanz nun in einer anderen Availability Zone als meine anderen AWS-Ressourcen (z. B. EC2-Instanzen).

F: Muss ich mir Gedanken um Latenz machen?

Availability Zones sind darauf ausgelegt, Netzwerkverbindungen mit niedrigen Latenzen zu anderen Availability Zones derselben Region bereitzustellen. Zusätzlich empfiehlt es sich eventuell, die Architektur Ihrer Anwendung und anderer AWS-Architekturen mit Redundanzen über mehrere Availability Zones anzulegen, damit Ihre Anwendung bei einem Ausfall einer einzelnen Availability Zone geschützt ist.


F: Was ist Multi-AZ für ElastiCache für Redis?

Eine ElastiCache für Redis-Shard besteht aus einem Primärknoten und bis zu fünf Read Replicas. Redis repliziert die Daten vom Primärknoten asynchron zu den Read Replicas. Bei bestimmten Arten geplanter Wartung oder im unwahrscheinlichen Fall des Ausfalls eines ElastiCache-Knotens oder der Availability Zone stellt Amazon ElastiCache automatisch den Ausfall eines Primärknotens fest, wählt eine Read Replica und stuft diese zum neuen Primärknoten hoch. ElastiCache überträgt auch die DNS-Änderungen der hochgestuften Read Replica. Wenn Ihre Anwendung auf den Primärknoten-Endpunkt schreibt, ist daher keine Änderung des Endpunkts erforderlich.

F: Welche Vorteile bietet die Nutzung von Multi-AZ?

Die Hauptvorteile beim Ausführen Ihres ElastiCache für Redis im Multi-AZ-Modus sind verbesserte Verfügbarkeit und geringerer Bedarf für Administration. Wenn ein für ElastiCache for Redis-Primärknoten ausfällt, sind die Auswirkungen auf Ihre Fähigkeit zum Lesen oder Schreiben auf den Primärknoten auf die Zeit begrenzt, die für die Durchführung des automatischen Failovers benötigt wird. Wenn Multi-AZ aktiviert ist, wird der Failover des ElastiCache-Knotens automatisch durchgeführt und benötigt keine Administration. Es ist nicht mehr erforderlich, dass Sie Ihre Redis-Knoten überwachen und manuell eine Wiederherstellung starten, wenn es eine Störung des Primärknotens gibt.

F: Wie funktioniert Multi-AZ?

Sie können Multi-AZ benutzen, wenn Sie ElastiCache für Redis verwenden und über eine Shard verfügen, die aus einem Primärknoten und einer oder mehreren Read Replicas besteht. Wenn der Primärknoten ausfällt, entdeckt ElastiCache automatisch den Ausfall, wählt eine der verfügbaren Read Replicas und stuft diese zum neuen Primärknoten hoch. Wenn der Parameter "cluster_mode" deaktiviert ist, überträgt ElastiCache die DNS-Änderungen der hochgestuften Replica, sodass Ihre Anwendung weiterhin auf den primären Endpunkt schreiben kann. Bei "cluster_mode=enabled" aktualisiert ElastiCache die Knotenübersicht des Clusters. ElastiCache richtet außerdem einen neuen Knoten ein, um die hochgestufte Read Replica in der Availability Zone des ausgefallenen Primärknotens zu ersetzen. Falls der Primärknoten wegen einer temporären Störung der Availability Zone ausfiel, wird die neue Replica gestartet, sobald die Availability Zone wiederhergestellt wurde.

F: Kann ich Replicas in derselben Availability Zone haben, in der sich auch der Primärknoten befindet?

Ja. Beachten Sie, dass die Unterbringung sowohl des Primärknotens als auch der Replica(s) in derselben Availability Zone Ihre ElastiCache for Redis-Replikationsgruppe nicht unempfindlich gegenüber Störungen der Availability Zone macht.

F: Welche Ereignisse würden einen Failover von Amazon ElastiCache auf eine Read Replica verursachen?

Amazon ElastiCache führt bei folgenden Ereignissen einen Failover auf eine Read Replica durch:

  • Verlust der Verfügbarkeit in der Availability Zone des Primärknotens
  • Verlust der Netzwerkverbindung zur Primär-Instanz
  • Ausfall einer Datenverarbeitungseinheit in der Primär-Instanz

F: Wann sollte ich Multi-AZ verwenden?

Die Verwendung der Redis-Replikation in Verbindung mit Multi-AZ bietet erhöhte Verfügbarkeit und Fehlertoleranz. Solche Vorkehrungen sind perfekt für den Einsatz in Produktionsumgebungen geeignet. Beim Ausführen von ElastiCache für Redis Cluster mit aktiviertem Cluster-Modus wird Multi-AZ automatisch aktiviert, wenn Ihre Shards über eine oder mehrere Read Replicas verfügen.

F: Wie kann ich eine ElastiCache für Redis-Replikationsgruppe mit aktiviertem Multi-AZ erstellen?

Sie können einen ElastiCache für Redis-Primärknoten und Read Replicas erstellen, indem Sie in der ElastiCache Management Console auf "Create" klicken. Das Gleiche können Sie tun, indem Sie die CreateReplicationGroup API aufrufen. Für vorhandene Cluster (Redis 2.8.6, 2.8.19, 2.8.21, 2.8.22, 2.8.23, 2.8.24 und 3.2.4 mit "cluster_mode=disabled") können Sie Multi-AZ aktivieren, indem Sie einen Cluster auswählen und in der ElastiCache Management Console auf "Modify" klicken oder die "ModifyReplicationGroup"-API verwenden. Das Umschalten einer Replikationsgruppe auf Multi-AZ hat keine negativen Auswirkungen auf Ihre Redis-Daten und beeinträchtigt nicht die Fähigkeit Ihrer Knoten, Anforderungen zu erfüllen.

F: Welche Read Replica wird beim Ausfall eines Primärknotens hochgestuft?

Falls mehrere Read Replicas vorhanden sind, wird die Read Replica mit der geringsten asynchronen Replikationsverzögerung gegenüber dem Primärknoten hochgestuft.

F: Wie viel kostet die Nutzung von Multi-AZ?

Multi-AZ ist kostenlos. Sie zahlen nur für die ElastiCache-Knoten, die Sie nutzen.

F: Welche Auswirkungen hat Multi-AZ auf die Leistung?

ElastiCache verwendet zurzeit die native, asynchrone Replikation der Redis-Engine und unterliegt deren Stärken und Einschränkungen. Wenn eine Read Replica zum ersten Mal eine Verbindung zu einem primären Knoten herstellt oder der primäre Knoten geändert wird, führt die Read Replica eine vollständige Synchronisierung mit den Daten des primären Knotens durch, was eine Verarbeitungslast für sie selbst und den primären Knoten bedeutet. Weitere Details zur Redis-Replikation finden Sie hier

F: Welche Arten von Knoten unterstützen Multi-AZ?

Alle in ElastiCache verfügbaren Knotentypen unterstützen Multi-AZ mit einer Ausnahme. Bei Verwendung von Redis 3.x mit "cluster_mode=disabled", unterstützt die T2-Familie Multi-AZ nicht.

F: Werde ich bei einem automatischen Failover benachrichtigt?

Ja. Amazon ElastiCache erstellt ein Ereignis, um Sie zu überzeugen, dass ein automatischer Failover durchgeführt wurde. Sie können die "DescribeEvents"-API verwenden, um Informationen zu Ereignissen im Zusammenhang mit Ihrem ElastiCache-Knoten abzurufen, oder auf den Abschnitt "Ereignisse" der AWS Management Console klicken.

F: Nach einem Failover befindet sich mein Primärknoten nun in einer anderen Availability Zone als meine anderen AWS-Ressourcen (z. B. EC2-Instances). Muss ich mir Sorgen um Latenzen machen?

Availability Zones sind darauf ausgelegt, Netzwerkverbindungen mit niedrigen Latenzen zu anderen Availability Zones derselben Region bereitzustellen. Es empfiehlt sich eventuell, die Architektur Ihrer Anwendung und anderer AWS-Ressourcen mit Redundanzen über mehrere Availability Zones anzulegen, damit Ihre Anwendung bei einem Ausfall einer einzelnen Availability Zone geschützt ist.

F: Wo kann ich weitere Informationen über Multi-AZ erhalten?

Weitere Informationen über Multi-AZ finden Sie in der ElastiCache-Dokumentation.

 

 


F: Was ist die Sicherungs- und Wiederherstellungsfunktion?

Mit dieser Funktion können Kunden Snapshots ihrer ElastiCache for Redis-Cluster erstellen. ElastiCache speichert die Snapshots, die Benutzer anschließend zum Wiederherstellen von Redis-Clustern verwenden können.

F: Was ist ein Snapshot?

Ein Snapshot ist eine zeitpunktbezogene Kopie Ihres gesamten Redis-Clusters.

F: Warum benötige ich Snapshots?

Das Erstellen von Snapshots kann bei durch einen Knotenausfall verursachten Datenverlusten sowie im unwahrscheinlichen Fall eines Hardwareausfalls nützlich sein. Sicherungen werden außerdem für Archivierungszwecke verwendet. Snapshots werden im beständigen Speicher von Amazon S3 gespeichert, sodass Ihre Daten selbst bei einem Stromausfall nicht gelöscht werden.

F: Was kann ich mit einem Snapshot tun?

Mithilfe von Snapshots können Sie bei laufendem Betrieb einen ElastiCache for Redis-Cluster mit vorab geladenen Daten in Betrieb nehmen.

F: Wie funktioniert die Sicherungs- und Wiederherstellungsfunktion?

Bei Auslösen einer Sicherung erstellt ElastiCache einen Snapshot eines angegebenen Redis-Clusters, der später für Wiederherstellungs- oder Archivierungszwecke verwendet werden kann. Sie können eine Sicherung jederzeit auslösen oder eine sich wiederholende tägliche Sicherung mit einem Aufbewahrungszeitraum von bis zu 35 Tagen festlegen.

Wenn Sie einen wiederherzustellenden Snapshot wählen, wird ein neuer ElastiCache for Redis-Cluster erstellt und mit den Daten des Snapshots aufgefüllt. Auf diese Weise können Sie mehrere ElastiCache for Redis-Cluster anhand eines angegebenen Snapshots erstellen.

Derzeit verwendet ElastiCache den systemeigenen Mechanismus von Redis zum Erstellen und Speichern einer RDB-Datei als Snapshot.

F: Wo werden meine Snapshots gespeichert?

Die Snapshots werden in S3 gespeichert.

F: Was sind die ersten Schritte mit der Sicherungs- und Wiederherstellungsfunktion?

Sie können die Sicherungs- und Wiederherstellungsfunktion über die AWS Management Console, die ElastiCache-APIs (CreateCacheCluster, ModifyCacheCluster und ModifyReplicationGroup) und die Befehlszeilen-Schnittstelle (CLI) aktivieren. Sie können die Funktion jederzeit de- bzw. reaktivieren.

F: Wie gebe ich die zu sichernden Redis-Cluster und -Knoten an?

Die Sicherungs- und Wiederherstellungsfunktion erstellt Snapshots auf Cluster-Basis. Benutzer können zu sichernde ElastiCache for Redis-Cluster über die AWS Management Console, Befehlszeilen-Schnittstelle (CLI) und die "CreateSnapshot"-API angeben. In einer Replikationsgruppe können Sie den primären oder beliebige der Read Replica-Cluster wählen, der/die gesichert werden sollen. Wir empfehlen Benutzern die Aktivierung der Sicherung in einer der Read Replicas, um Latenzeffekte auf dem primären Redis-Knoten zu vermeiden.

F: Unterstützt ElastiCache for Memcached die Sicherungs- und Wiederherstellungsfunktion?

Nein, Snapshots stehen nur für ElastiCache for Redis zur Verfügung.

F: Wie kann ich den Zeitpunkt einer Sicherung angeben?

Sie können über die AWS Management Console, Befehlszeilen-Schnittstelle (CLI) oder APIs angeben, wann eine einzelne Sicherung oder Sicherungsserie gestartet werden soll. Benutzer haben folgende Möglichkeiten:

  • Erstellen Sie jetzt einen Snapshot (über die Konsolenschaltfläche "Backup" auf der Registerkarte "Redis" oder über die "CreateSnapshot"-API).
  • Eine automatische tägliche Sicherung einrichten. Die Sicherung erfolgt im bevorzugten Sicherungszeitfenster. Die Einrichtung erfolgt über den Befehl "Creating/Modifying cluster" in der Konsole oder die APIs "CreateCacheCluster", "ModifyCacheCluster" oder "ModifyReplicationGroup".

F: Was ist ein Sicherungsfenster und wofür wird es benötigt?

Beim bevorzugten Sicherungszeitfenster handelt es sich um den vom Benutzer festgelegten Zeitraum, in dem die Sicherung des ElastiCache for Redis-Clusters erfolgt. Dies ist hilfreich, wenn die Sicherung zu einer bestimmten Tageszeit erfolgen soll oder Sie Sicherungen in einem Zeitraum mit besonders hoher Systemauslastung vermeiden möchten.

F: Welche Auswirkung hat das Erstellen eines Snapshots auf die Systemleistung?

Während der Erstellung eines Snapshots kann es auf dem Knoten für einen kurzen Zeitraum zu erhöhter Latenz kommen. Da für Snapshots die in Redis integrierte Funktion BGSAVE verwendet wird, unterliegen sie auch deren Stärken und Einschränkungen. Insbesondere arbeitet der Redis-Prozess mit Verzweigungen, wobei die übergeordnete Komponente weiter Anforderungen erfüllt, während die untergeordnete Komponente die Daten auf dem Datenträger speichert und dann den Prozess beendet. Durch die Verzweigung erhöht sich die Arbeitsspeicherauslastung für die Dauer der Snapshot-Erstellung. Wenn diese Arbeitsspeicherauslastung den auf dem Knoten verfügbaren Arbeitsspeicher überschreitet, kommt es zur Auslagerung auf den Datenträger, was den Knoten weiter verlangsamt. Aus diesem Grund empfehlen wir das Generieren von Snapshots in einer der Read Replicas (anstatt auf dem primären Knoten). Außerdem ist es ratsam, den Parameter "reserved-memory" festzulegen, um die Auslagerung auf den Datenträger zu minimieren. Hier finden Sie weitere Einzelheiten.

F: Kann ich einen Snapshot einer Read Replica von ElastiCache for Redis erstellen?

Ja. Das Erstellen eines Snapshots einer Read Replica ist die beste Möglichkeit, Ihre Daten zu sichern und die Beeinträchtigung der Systemleistung zu minimieren.

F: In welchen Regionen ist die Sicherungs- und Wiederherstellungsfunktion verfügbar?

Die Sicherungs- und Wiederherstellungsfunktion ist in allen Regionen verfügbar, in denen der ElastiCache-Service angeboten wird.

F: Kann ich ElastiCache für Redis-Snapshots in einen meiner S3-Buckets exportieren?

Ja. Sie können Ihre ElastiCache für Redis-Snapshots in einen autorisierten S3-Bucket in derselben Region wie Ihr Cluster exportieren. Weitere Informationen zum Exportieren von Snapshots und Einrichten der erforderlichen Berechtigungen finden Sie hier.

F: Kann ich Snapshots aus einer Region in eine andere kopieren?

Ja. Sie müssen zunächst Ihren Snapshot in einen autorisierten S3-Bucket Ihrer Wahl in derselben Region kopieren und können anschließend die S3 PUT object – Copy-API zum Kopieren in einen Bucket in einer anderen Region verwenden. Weitere Informationen zum Kopieren von S3-Objekten finden Sie hier.

F: Ich habe mehrere AWS-Konten, die ElastiCache for Redis nutzen. Kann ich ElastiCache-Snapshots eines Kontos verwenden, um bei laufendem Betrieb einen ElastiCache for Redis-Cluster in einem anderen Konto in Betrieb zu nehmen?

Ja. Sie müssen zunächst Ihren Snapshot in einen autorisierten S3-Bucket Ihrer Wahl in derselben Region kopieren und anschließend dem anderen Konto kontenübergreifende Bucket-Berechtigungen gewähren. Weitere Informationen zu kontenübergreifenden S3-Berechtigungen finden Sie hier. Geben Sie schließlich während der Cluster-Erstellung mit dem Launch Cache Cluster Wizard in der Konsole oder über die CreateCacheCluster-API den Speicherort Ihrer RDB-Datei in S3 an.

F: Wie viel kostet die Nutzung der Sicherungs- und Wiederherstellungsfunktion?

Amazon ElastiCache bietet kostenlos Speicherplatz für einen Snapshot jedes aktiven ElastiCache for Redis-Clusters. Zusätzlicher Speicherplatz wird basierend auf dem von den Snapshots belegten Speicherplatz mit monatlich 0,085 USD pro GB in Rechnung gestellt (Einheitspreis in allen Regionen). Die Datenübertragung zur Nutzung der Snapshots ist kostenlos.

F: Was ist der Aufbewahrungszeitraum?

Der Aufbewahrungszeitraum ist der Zeitraum, den automatisch erstellte Snapshots aufbewahrt werden. Wird beispielsweise der Aufbewahrungszeitraum auf 5 festgelegt, wird ein Snapshot, der heute erstellt wird, 5 Tage aufbewahrt, bevor er gelöscht wird. Sie können einen oder mehrere automatische Snapshots kopieren, um sie manuell zu speichern, damit sie nach Ablauf des Aufbewahrungszeitraums nicht gelöscht werden.

F: Wie verwalte ich die Aufbewahrung meiner automatischen Snapshots?

Mithilfe der AWS Management Console oder der "ModifyCluster"-API können Sie den Aufbewahrungszeitraum für automatische Sicherungen verwalten, indem Sie den "RetentionPeriod"-Parameter ändern. Wenn Sie automatische Sicherungen vollständig deaktivieren möchten (was nicht empfohlen wird), setzen Sie den Aufbewahrungszeitraum auf 0.

F: Was passiert mit meinen Snapshots, wenn ich meinen ElastiCache for Redis-Cluster lösche?

Wenn Sie einen ElastiCache for Redis-Cluster löschen, bleiben Ihre manuellen Snapshots erhalten. Sie haben die Möglichkeit einen letzten Snapshot zu erstellen, bevor der Cluster gelöscht wird. Automatisch erstellte Snapshots werden nicht aufbewahrt.

F: Welche Knoten unterstützen die Sicherungs- und Wiederherstellungsfunktion?

Alle ElastiCache für Redis-Instance-Knotentypen außer "t1.micro" und "t2.family" unterstützen die Sicherungs- und Wiederherstellungsfunktion:

Knoten der aktuellen Generation:

  • cache.m3.medium
  • cache.m3.large
  • cache.m3.xlarge
  • cache.m3.2xlarge
  • cache.m4.large
  • cache.m4.xlarge
  • cache.m4.2xlarge
  • cache.m4.4xlarge
  • cache.m4.10xlarge
  • cache.r3.large
  • cache.r3.xlarge
  • cache.r3.2xlarge
  • cache.r3.4xlarge
  • cache.r3.8xlarge

Knoten der vorherigen Generation:

  • cache.m1.small
  • cache.m1.medium
  • cache.m1.large
  • cache.m1.xlarge
  • cache.m2.xlarge
  • cache.m2.2xlarge
  • cache.m2.4xlarge
  • cache.c1.xlarge

F: Kann ich meine eigenen in S3 gespeicherten RDB-Snapshots verwenden, um bei laufendem Betrieb einen ElastiCache for Redis-Cluster in Betrieb zu nehmen?

Ja. Sie können im Verlauf des "Create Cluster"-Assistenten in der Konsole oder über die "CreateCacheCluster"-API den Speicherort Ihrer RDB-Datei in S3 angeben.

F: Kann ich die Sicherungs- und Wiederherstellungsfunktion verwenden, wenn ich ElastiCache in einer VPC ausführe?

Ja.


F: Was ist ElastiCache für Redis Cluster?

mit ElastiCache für Redis Cluster können Kunden verwaltete Redis-Cluster mit mehreren Shards erstellen und ausführen. Es ist mit Open Source Redis 3.2 kompatibel und verfügt über eine Reihe von Erweiterungen für eine stabilere und zuverlässigere Nutzung (im Abschnitt "Erweiterte Engine" weiter unten finden Sie weitere Informationen dazu).

F: Warum sollte ich eine Redis-Umgebung hochskalieren müssen?

Es gibt drei Hauptszenarios für das Hochskalieren einer Redis-Umgebung. Erstens, wenn die Gesamtarbeitsspeichergröße Ihrer Redis-Daten die Arbeitsspeicherkapazität einer einzelnen VM überschreitet oder bald überschreiten wird. Zweitens, wenn der Schreibdurchsatz Ihrer Anwendung zu Redis die Kapazität einer einzelnen VM überschreitet. Drittens, wenn Sie die Daten über mehrere Shards verteilen möchten, damit potenzielle Probleme, die bei einem einzelnen Knoten auftreten, eine kleinere Auswirkung auf die gesamte Redis-Umgebung haben.

F: Warum sollte ich meine Redis-Cluster-Arbeitslast auf Amazon ElastiCache ausführen?

Amazon ElastiCache stellt eine vollständig verwaltete, verteilte Redis-Umgebung bereit, von der Bereitstellung der Serverressourcen bis zum Installieren der Engine-Software und dem Anwenden der ausgewählten Konfigurationsparameter. Es verwendet Erweiterungen der Redis-Engine, die von Amazon entwickelt wurden, was zu einer zuverlässigeren und stabileren Nutzung führt (weitere Informationen finden Sie im Abschnitt "Erweiterte Engine"). Nachdem Ihre Umgebung eingerichtet und ausführbar ist, automatisiert der Service gängige Verwaltungsaufgaben, beispielsweise die Fehlererkennung und Wiederherstellung, Sicherungen sowie Software-Patching. Er stellt außerdem eine stabile Multi-AZ-Lösung mit automatischem Failover bereit. Bei einem Ausfall mindestens eines Primärknotens im Cluster erkennt Amazon ElastiCache automatisch den Fehler und reagiert mit der Hochstufung des neuesten Replikats zum Primärknoten. Dieser Vorgang ist automatisiert und erfordert keine manuellen Arbeiten Ihrerseits. Amazon ElastiCache stellt für Ihre ElastiCache-Knoten detaillierte Überwachungsmetriken zur Verfügung, anhand derer Sie Probleme zeitnah erkennen und darauf reagieren können.

F: Ist ElastiCache für Redis Cluster kompatibel mit Open Source Redis?

Ja, Amazon ElastiCache für Redis Cluster ist mit Open Source Redis 3.2 kompatibel. Sie können die Open Source Redis-Cluster-Clients für den Zugriff auf hochskalierte Cluster in ElastiCache für Redis verwenden.

F: Kann ich nach Erstellung des Clusters noch die Anzahl der Shards ändern?

Derzeit können Sie die Anzahl der Shards in einem Cluster nach der Erstellung des Clusters nicht mehr ändern.

F: Was ist der Upgrade-Pfad vom aktuellen ElastiCache für Redis 2.8.x auf ElastiCache für Redis Cluster (Version 3.2.4)?

Wenn Sie Redis 3.2 mit deaktiviertem "cluster_mode"-Parameter verwenden, können Sie einfach den Knoten oder Cluster auswählen, den Sie upgraden möchten, und dann die Engine-Version ändern. ElastiCache stellt einen Redis 3.2.4-Cluster bereit und migriert Ihre Daten auf diesen Cluster, während der Endpunkt beibehalten wird.

Wenn Sie Redis 3.2 mit "cluster_mode=enabled" verwenden, können Sie direkt zu Redis Cluster migrieren, indem Sie zunächst einen Snapshot Ihrer Daten mithilfe der Sicherungs- und Wiederherstellungsfunktion erstellen. Wählen Sie dann den erstellten Snapshot aus und klicken Sie auf "Restore Snapshot", um einen Redis 3.2-Cluster mithilfe der Daten aus dem Snapshot zu erstellen. Aktualisieren Sie schließlich den neuen Endpunkt auf dem Client. Beachten Sie, dass Sie für die Verwendung von Redis 3.2 im Cluster-Modus zu einem Redis Cluster-Client wechseln müssen.

F: Unterscheiden sich die Preise für eine Cluster-Konfiguration von denen für eine Konfiguration ohne Cluster?

Nein. Amazon ElastiCache für Redis bietet die Flexibilität von Konfigurationen mit und ohne Cluster zum gleichen Preis. Kunden können jetzt die erweiterte Engine-Funktionalität innerhalb von Amazon ElastiCache für Redis und die vollständige Unterstützung von Cluster-Konfigurationen und Skalierbarkeit zum gleichen Preis nutzen.  

F: Was ist Multi-AZ für ElastiCache für Redis Cluster?

Jede Shard eines ElastiCache für Redis-Clusters besteht aus einem Primärknoten und bis zu fünf Read Replicas. Redis repliziert die Daten vom Primärknoten asynchron zu den Read Replicas. Bei bestimmten Arten geplanter Wartung oder im unwahrscheinlichen Fall des Ausfalls eines ElastiCache-Knotens oder der Availability Zone stellt Amazon ElastiCache automatisch den Ausfall eines Primärknotens fest, wählt eine Read Replica und stuft diese zum neuen Primärknoten hoch.

ElastiCache für Redis Cluster stellt Erweiterungen und Verwaltung für Redis 3.x-Umgebungen bereit. Beim Ausführen einer nicht verwalteten Redis-Umgebung verlässt sich der Cluster im Falle eines Ausfalls des Primärknotens auf eine Mehrheit der Master, um ein Failover zu ermitteln und auszuführen. Falls eine solche Mehrheit nicht vorhanden ist, geht der Cluster in den Fehlerzustand über und lehnt weitere Lese- und Schreibvorgänge ab. Das kann sich erheblich auf die Verfügbarkeit der Anwendung auswirken. Außerdem kann ein manueller Eingriff erforderlich sein, um den Cluster wiederherzustellen. Die Multi-AZ-Fähigkeit von ElastiCache für Redis wurde entwickelt, um alle Failover-Fälle für Redis Cluster mit Zuverlässigkeit und Effizienz zu verarbeiten.

F: Inwiefern unterscheidet sich Multi-AZ in ElastiCache für Redis Cluster von den ElastiCache für Redis-Versionen 2.8.x?

Redis 3.x verwendet intelligente Clients, die eine Knotenübersicht mit allen Endpunkten der Cluster-Knoten speichern. Bei einem Failover aktualisiert der Client die Knotenübersicht mit dem IP-Endpunkt für den neuen Primärknoten. Dies führt zu bis zu 4 Mal schnelleren Failover-Zeiten als bei ElastiCache für Redis 2.8.x.

F: Wie funktioniert Multi-AZ für Redis Cluster?

Sie können Multi-AZ verwenden, wenn Sie ElastiCache für Redis Cluster verwenden, wobei jede Shard mindestens eine Read Replica haben muss. Wenn der Primärknoten einer Shard ausfällt, erkennt ElastiCache automatisch den Ausfall, wählt eine der verfügbaren Read Replicas aus und stuft diese zum neuen Primärknoten hoch. Der Redis 3.x-Client aktualisiert das heraufgestufte Replikat als Primärknoten, sodass keine Anwendungsänderung erforderlich ist. ElastiCache richtet außerdem einen neuen Knoten ein, um die hochgestufte Read Replica in der Availability Zone des ausgefallenen Primärknotens zu ersetzen. Falls der Primärknoten wegen einer temporären Störung der Availability Zone ausgefallen ist, wird die neue Replica gestartet, sobald die Availability Zone wiederhergestellt wurde.

F: Was ist eine Sicherung in ElastiCache für Redis Cluster?

Eine ElastiCache für Redis Cluster-Sicherung ist eine Reihe von Snapshots der Shards des Clusters, die zusammen gespeichert werden, um eine Kopie Ihrer gesamten Redis-Daten innerhalb eines bestimmten Zeitraums aufzubewahren.

F: Inwiefern unterscheidet sich eine Sicherung in ElastiCache für Redis Cluster von einem Snapshot in ElastiCache für Redis?

Da eine ElastiCache für Redis-Umgebung ohne Cluster über einen einzelnen Primärknoten verfügt, ist eine Sicherung eine einzelne Datei, die eine Kopie der Redis-Daten enthält. ElastiCache für Redis Cluster kann eine oder mehrere Shards aufweisen, sodass eine Sicherung mehrere Dateien enthalten kann.

F: Wie gebe ich an, welche ElastiCache für Redis-Knoten in den einzelnen Shards gesichert werden sollen?

Sie können einen in einer einzelnen Shard zu sichernden Knoten nicht manuell angeben. Beim Starten einer Sicherung wählt ElastiCache automatisch die aktuelle Read Replica in den einzelnen Shards aus und erstellt einen Snapshot der Daten.

F: Wie funktionieren Sicherung und Wiederherstellung in ElastiCache für Redis Cluster?

Beim Auslösen einer Sicherung erstellt ElastiCache eine Sicherung eines angegebenen Clusters, die später für Wiederherstellungs- oder Archivierungszwecke verwendet werden kann. Die Sicherung enthält eine Kopie der einzelnen Shards des Clusters, sodass eine vollständige Sicherung eine Reihe von Dateien enthält. Sie können eine Sicherung jederzeit auslösen oder eine sich wiederholende tägliche Sicherung mit einem Aufbewahrungszeitraum von bis zu 35 Tagen festlegen.

Wenn Sie eine wiederherzustellende Sicherung auswählen, wird ein neuer ElastiCache für Redis-Cluster erstellt und mit den Daten der Sicherung aufgefüllt.

Derzeit verwendet ElastiCache den systemeigenen Mechanismus von Redis zum Erstellen und Speichern einer RDB-Datei für jede Shard als Sicherung.

F: Ist die Sicherung in ElastiCache für Redis Cluster ein Zeitpunkt-Snapshot?

Wenn Sie die Sicherung starten, löst ElastiCache Sicherungen für alle Shards Ihres Clusters gleichzeitig aus. In seltenen Fällen kann es erforderlich sein, einen Snapshot für einen oder mehrere Knoten, der beim ersten Mal nicht erfolgreich abgeschlossen wurde, neu zu erstellen. ElastiCache führt diesen Vorgang automatisch und ohne Benutzereingriff durch. Allerdings werden in einem solchen Fall, obwohl jeder einzelne Snapshot eine Zeitpunkt-Darstellung des Knotens ist, aus dem er erstellt wurde, nicht alle Snapshots des Clusters gleichzeitig erstellt.

F: Wie kann ich den Zeitpunkt einer Sicherung angeben?

Sie können über die AWS Management Console, Befehlszeilen-Schnittstelle (CLI) oder APIs angeben, wann eine einzelne Sicherung oder Sicherungsserie gestartet werden soll. Benutzer haben folgende Möglichkeiten:

  • Eine Sicherung sofort erstellen (über die Konsolenschaltfläche "Create Snapshot" oder die "CreateSnapshot"-API).
  • Eine automatische tägliche Sicherung einrichten. Die Sicherung erfolgt im bevorzugten Sicherungszeitfenster. Die Einrichtung erfolgt über den Befehl "Creating/Modifying cluster" in der Konsole oder die APIs "CreateReplicationGroup" und "ModifyReplicationGroup".

F: Kann ich meine eigenen in S3 gespeicherten RDB-Snapshots verwenden, um bei laufendem Betrieb einen ElastiCache für eine Redis-Cluster-Umgebung zu skalieren?

Ja. Sie können im Verlauf des "Create Cluster"-Assistenten in der Konsole oder über die "CreateReplicationGroup"-API den Speicherort Ihrer RDB-Dateien in S3 angeben. ElastiCache analysiert den Redis-Schlüsselraum des RDB-Snapshots automatisch und verteilt ihn erneut auf die Shards des neuen Clusters.


F: Inwiefern unterscheidet sich die Engine in ElastiCache für Redis von der in Open Source Redis?

Die Engine in ElastiCache für Redis ist mit Open Source Redis voll kompatibel, verfügt aber über Erweiterungen, die Zuverlässigkeit und Stabilität verbessern. Unter anderem gibt es folgende Erweiterungen:

  • Mehr nutzbarer Arbeitsspeicher: Sie können jetzt problemlos mehr Arbeitsspeicher für Ihre Anwendung zuweisen, ohne während Synchronisierungen und Snapshots eine erhöhte Swap-Nutzung zu riskieren.
  • Verbesserte Synchronisierung: Zuverlässigere Synchronisierung unter hoher Last und beim Wiederherstellen von getrennten Netzwerkverbindungen. Außerdem sind Synchronisierungen schneller, da Primärknoten und Replikate die Festplatte nicht mehr für diesen Vorgang verwenden.
  • Problemlosere Failovers: Im Falle eines Failovers wird die Shard jetzt schneller wiederhergestellt, da Replikate ihre Daten nicht mehr komplett löschen, um eine vollständige erneute Synchronisierung mit dem Primärknoten durchzuführen.

F: Wie verwende ich die erweiterte Engine?

Um die erweiterte Engine aus der Amazon ElastiCache-Verwaltungskonsole zu verwenden, wählen Sie beim Erstellen eines Clusters einfach eine mit der Redis-Engine-Version 2.8.22 oder höher kompatible Engine aus. Ab diesem Punkt verwenden Sie die erweiterte Engine. Sie können die erweiterte Engine auch über die ElastiCache-API oder AWS-CLI verwenden, indem Sie beim Ausführen der CreateCacheCluster-API die Engine-Version angeben.

F: Muss ich meinen Anwendungscode ändern, um die erweiterte Engine auf ElastiCache zu verwenden?

Nein. Die erweiterte Engine ist mit Open Source Redis voll kompatibel, sodass Sie die verbesserte Zuverlässigkeit und Stabilität nutzen können, ohne Änderungen am Anwendungscode vorzunehmen.

F: Was kostet die Verwendung der erweiterten Engine?

Für die Verwendung der erweiterten Engine fallen keine zusätzlichen Gebühren an. Ihnen werden wie üblich nur die verwendeten Knoten in Rechnung gestellt.