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-Cache-System abrufen können und sich nicht nur auf langsamere Datenbanken auf Datenträgern verlassen müssen. Der Service kann die Verwaltung, die Überwachung und den Betrieb von In-Memory-Cache-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 Cache-Umgebung anfallen. Mit Amazon ElastiCache können Sie Ihrer Anwendungsarchitektur in nur wenigen Minuten eine Caching-Schicht hinzufügen. Einige wenige Klicks in der AWS Management Console genügen. Sobald ein Cache-Cluster bereitgestellt ist, erkennt und ersetzt Amazon ElastiCache automatisch fehlerhafte Cache-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 Cache-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. 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: Was verwaltet Amazon ElastiCache für mich?

Amazon ElastiCache verwaltet die Arbeitsschritte zur Einrichtung eines verteilten In-Memory-Caches, angefangen von den Schritten zur Bereitstellung der angeforderten Server-Ressourcen bis hin zu den Schritten zur Installation der Caching-Software. Nachdem Ihre Cache-Umgebung eingerichtet und ausführbar ist, automatisiert der Service gängige Verwaltungsaufgaben, beispielsweise die Fehlererkennung und Wiederherstellung sowie Software-Patching. Amazon ElastiCache stellt für Ihre Cache-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 Cache-Knoten mit Anforderungen überlastet ist.

F: Was sind Amazon ElastiCache-Cache-Knoten und Cache-Cluster?

Ein Cache-Knoten ist der kleinste Baublock in einer Amazon ElastiCache-Bereitstellung, Er ist ein RAM-Bereich fester Größe, der sicher ins Netzwerk eingebunden ist. Jeder Cache-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 Cache-Knoten unterstützt, jeweils mit unterschiedlicher Menge an zugeordnetem Arbeitsspeicher.

F: Welche Engines unterstützt Amazon ElastiCache?

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

Amazon ElastiCache for Redis unterstützt derzeit Redis 2.6.13 und 2.8.6.

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 Cache-Cluster starten. Verwenden Sie die AWS Management Console oder die Amazon ElastiCache-APIs.

F: Wie erstelle ich ein Cache-Cluster?

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

F: Welche Cache-Knotentypen kann ich auswählen?

Amazon ElastiCache unterstützt Cache-Knoten der folgenden Arbeitsspeichertypen:

Cache-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.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-Knoten der vorherigen Generation:

  • 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.c1.xlarge: 6,6 GB

Micro- und Klein-Cache-Knoten:
  • cache.t1.micro: 213 MB
  • cache.m1.small: 1,3 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 Gesamtkapazität an Arbeitsspeicher in einem Cache-Cluster ist ein ganzzahliges Vielfaches des für den ausgewählten Cache-Knotentyp verfügbaren Speichers. Beispielsweise stellt ein Cache-Cluster, das aus zehn Cache-Knoten von jeweils 6 GB besteht, 60 GB Gesamtspeicher bereit.

F: Wie greife ich auf meine Cache-Knoten zu?

Sobald Ihr Cluster verfügbar ist, können Sie die Endpunkte der Cache-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 Cache-Knoten Netzwerkanforderungen zu ermöglichen, müssen Sie den Zugriff autorisieren. Eine detaillierte Beschreibung der ersten Schritte finden Sie im Getting Started Guide.

F: Was ist ein Wartungs- bzw. Aktualisierungsfenster? Stehen meine Cache-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 Cache-Knoten kommen. Weitere Informationen hierzu finden Sie unter "Cache 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 Cache-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 Cache-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 Gebühren werden pro verbrauchter Cache-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 der Amazon ElastiCache Node selber 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 Cache-Knoten beginnt, sobald der Cache-Knoten verfügbar ist. Sie läuft so lange weiter, bis der Cache-Knoten beendet wird. Dies kann auch beim Löschen sein.

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

Nutzungsstunden für Knoten werden immer fakturiert, wenn Ihre Cache-Knoten im Status "Verfügbar" ausgeführt werden. Wenn für Ihren Cache-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 Cache Nodes von Amazon ElastiCache?

Mit Reserved Cache Nodes können Sie gegen eine einmalige Vorauszahlung eine ein- oder dreijährige Reservierung zur Ausführung Ihres Cache-Knoten in einer bestimmten Region tätigen und erhalten einen erheblichen Rabatt auf die laufenden stündlichen Nutzungsgebühren. Es gibt drei Reserved Cache-Knotentypen (Reserved Cache-Knoten 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 Cache Nodes von On-Demand Cache Nodes?

Funktionell sind Reserved Cache Nodes und On-Demand Cache Nodes absolut identisch. Der einzige Unterschied besteht in der Abrechnung Ihrer Cache-Knoten. Bei Reserved Cache 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 Cache Nodes).

F: Wie kann ich Reserved Cache Nodes erwerben und erstellen?

Sie können die Option "Purchase Reserved Cache 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 Cache Node unterscheidet sich nicht vom Starten eines On-Demand Cache Node. Sie geben lediglich die Cache-Knoten-Klasse 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 Cache-Knoten.

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

Ja. Reserved Cache 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 Nodes kann ich erwerben?

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

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

Erwerben Sie einfach eine Cache-Knoten-Reservierung derselben Cache-Knoten-Klasse in derselben Region wie der Cache-Knoten, den Sie aktuell ausführen und reservieren möchten. Nach erfolgreichem Erwerb der Reservierung wendet Amazon ElastiCache die neue stündliche Nutzungsgebühr automatisch auf Ihren bestehenden Cache-Knoten an.

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

Preisänderungen für Reserved Cache 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 Cache Node wieder der entsprechende On-Demand-Stundentarif Ihrer Cache-Knoten-Klasse und -Region.

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

Die Amazon ElastiCache-APIs zum Erstellen, Ändern und Löschen von Cache-Knoten unterscheiden nicht zwischen On-Demand und Reserved Cache Nodes, sodass Sie beide Arten nahtlos verwenden können. Bei der Verarbeitung Ihrer Abrechnung wendet unser System automatisch Ihre Reservierungen an, sodass alle berechtigten Cache-Knoten nach dem reduzierten Stundentarif für Reserved Cache Nodes abgerechnet werden. F: Kann ich einen Reserved Cache Node von einer Region oder Availability Zone in eine andere verschieben? Jeder Reserved Cache 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 Cache Nodes kann nicht rückerstattet werden. Sie können Ihren Cache-Knoten aber jederzeit kündigen. Ab diesem Zeitpunkt fallen für Reserved Cache Nodes mit geringer und mittlerer Auslastung keine stündlichen Nutzungsgebü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 Cache-Cluster über Cache-Sicherheitsgruppen steuern. Eine Cache Security Group kontrolliert wie eine Firewall den Netzwerkzugriff auf Ihr Cache-Cluster. Der Netzwerkzugriff auf Ihre Cache-Cluster ist standardmäßig deaktiviert. Wenn Ihre Anwendungen auf Ihren Cache-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 Cache-Cluster zuzulassen, erstellen Sie eine Cache-Sicherheitsgruppe, und verknüpfen Sie die gewünschten EC2-Sicherheitsgruppen. Sie geben wiederum die zulässigen EC2-Instances an. Die Cache-Sicherheitsgruppe kann dem Cache-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 Cache-Cluster nicht unterstützt wird. Alle Clients eines Cache-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 Cache-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 Cache-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 Cache-Subnetzgruppe 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 Cache-Subnetzgruppe und warum benötige ich eine?

Eine Cache-Subnetzgruppe ist eine Sammlung von Subnetzen, die Sie in einer VPC für Ihren Amazon ElastiCache-Cluster angeben müssen. Eine Cache-Subnetzgruppe wird mithilfe der Amazon ElastiCache-Konsole erstellt. Jede Cache-Subnetzgruppe benötigt mindestens ein Subnetz. Amazon ElastiCache wählt in der Cache-Subnetzgruppe ein Subnetz aus. Die IP-Adressen des ausgewählten Subnetzes werden anschließen den Endpunkten des Cache-Knotens zugeordnet. Darüber hinaus erstellt Amazon ElastiCache elastische Netzwerkschnittstellen, die Cache-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 Cache-Knoten verwenden, da sich die zugrunde liegenden IP-Adressen ändern können (z. B bei Austausch eines Cache-Knotens).

F: Kann ich die Cache-Subnetzgruppe meines ElastiCache-Clusters ändern?

Einer Cache-Subnetzgruppe können nach Erstellen des ElastiCache-Clusters mehr Subnetze für vorhandene oder neue Availability Zones hinzugefügt werden. Das Ändern der Cache-Subnetzgruppe eines bereitgestellten Cache-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 Cache-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 Cache-Cluster?

Amazon ElastiCache ermöglicht bei Bereitstellungen ohne VPC das Steuern des Zugriffs auf Ihren Cache-Cluster und somit auf die Cache-Knoten mithilfe von Cache-Sicherheitsgruppen. Eine Cache-Sicherheitsgruppe fungiert wie eine Firewall zum Steuern des Netzwerkzugriffs auf Ihren Cache-Knoten. Der Netzwerkzugriff auf Ihre Cache-Knoten ist standardmäßig deaktiviert. Wenn Sie den Zugriff Ihrer Anwendungen auf Ihren Cache-Knoten zulassen möchten, können Sie Ihre Cache-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 Konfiguration des Zutritts für eine Cache-Sicherheitsgruppe gelten für alle der betreffenden Cache-Sicherheitsgruppe zugeordneten Cache-Knoten dieselben Regeln. Cache-Sicherheitsgruppen können im Abschnitt "Cache Security Groups" der Amazon ElastiCache-Konsole oder mithilfe der Amazon ElastiCache-APIs konfiguriert werden.

In VPC-Bereitstellungen wird der Zugriff auf Ihre Cache-Knoten mithilfe der VPC-Sicherheitsgruppe und der Cache-Subnetzgruppe gesteuert. Die VPC-Sicherheitsgruppe ist die VPC-Entsprechung der Cache-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 Cache-Sicherheitsgruppen die Cache-Cluster konfigurieren, die Teil meiner VPC sind?

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

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

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

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

Ja, Cache-Knoten eines Amazon ElastiCache-Clusters können sich über mehrere Subnetze erstrecken, sofern die Subnetze zur selben Cache-Subnetzgruppe gehören, die zum Zeitpunkt der Erstellung dem ElastiCache-Cluster zugeordnet war. Darüber hinaus müssen sich alle Subnetze in derselben AZ befinden.


F: Was sind Cache-Parameter-Gruppen? Inwiefern sind sie eine Hilfe?

Eine Cache-Parametergruppe ist eine Art "Behälter" für die Werte der Engine-Konfiguration, der auf ein oder mehrere Cache-Cluster angewendet werden kann. Wenn Sie Cache-Cluster erstellen, ohne eine Cache-Parametergruppe anzugeben, wird die Cache-Parametergruppe verwendet, die als Standard festgelegt ist. Diese Standardgruppe enthält Engine-Standardwerte und Systemstandardwerte für Amazon ElastiCache, die für das ausgeführte Cache-Cluster optimiert sind. Wenn das Cache-Cluster jedoch mit den von Ihnen definierten Engine-Konfigurationswerten ausgeführt werden soll, erstellen Sie einfach eine neue Cache-Parametergruppe, erstellen Sie die betreffenden Parameter, und legen Sie fest, dass das Cache-Cluster die neue Cache-Parametergruppe verwendet. Nach der Zuordnung erhalten alle Cache-Cluster, die eine bestimmte Cache-Parametergruppe verwenden, alle Parameteraktualisierungen für diese Cache-Parametergruppe. Weitere Informationen zur Konfiguration von Cache-Parametergruppe finden Sie im Amazon ElastiCache User Guide.

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

Amazon ElastiCache wählt standardmäßig die optimalen Konfigurationsparameter für Ihr Cache-Cluster und berücksichtigt dabei den Speicher / 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 meine Parameter für eine gegebene Cache-Parametergruppe anzeigen?

Informationen zu den Cache-Parametergruppe 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 für 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 Web-Anwendungen mit hoher Frequentierung eine Zutrittskontrolle darstellen/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 (Cache-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 von der aktuellen Lösung wechseln.

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 Cache-Servern (Cache-Knoten). Der DNS-Name für einen Cache-Knoten bleibt konstant, die IP-Adresse kann sich jedoch im Laufe der Zeit ändern, beispielsweise, wenn Cache-Knoten nach einem Ausfall automatisch ersetzt werden. Empfehlungen zur Vorgehensweise beim Ausfall von Cache-Knoten finden Sie in den häufig gestellten Fragen.


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

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 Cache-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 Ihren Cache erforderlich ist, um die Cache-Trefferrate für das Ziel zu erzielen.
  • Die Anzahl der Cache-Knoten, die erforderlich sind, um eine akzeptable Anwendungsleistung beizubehalten, ohne das Datenbank-Backend im Falle des Ausfalls eines Cache-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 Cache-Knoten ein, sodass Ihre Anwendung den Verlust von ein, zwei Cache-Knoten verkraften kann. So können Sie die Fehlertoleranz verbessern. Wenn Sie beispielsweise 14 GB benötigen, könnten Sie statt eines Knotens des Typs cache.m1.xlarge zwei Knoten des Typs cache.m1.large verwenden. Andere Systeme, beispielsweise Datenbanken, dürfen nicht überlastet werden, wenn die Trefferrate des Caches während der Fehlerwiederherstellung eines oder mehrerer Cache-Knoten zeitweilig reduziert wird. Weitere Informationen hierzu finden Sie im Amazon ElastiCache User Guide.

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

Nein, derzeit nicht.

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

Sie können maximal 20 Cache-Knoten ausführen. Wenn Sie mehr Cache-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 Cache-Knoten?

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

  • Amazon ElastiCache repariert den Cache-Knoten, indem er neue Service-Ressourcen erwirbt und den vorhandenen DNS-Namen des Cache-Knotens auf die neuen Service-Ressourcen umleitet. So bleibt der DNS-Name für einen Cache-Knoten konstant, die IP-Adresse eines Cache-Knotens kann sich im Laufe der Zeit jedoch ändern.
  • Wenn Sie, nachdem der neue Cache-Knoten konfiguriert wurde und einsatzbereit ist, Ihrem Cache-Cluster ein SNS-Thema zugeordnet haben, sendet Amazon ElastiCache eine SNS-Benachrichtigung, in der Sie über die Wiederherstellung des Cache-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 Cache-Knoten erzwungen wird. Dies kann wichtig sein, weil einige Memcached-Bibliotheken auf unbestimmte Zeit keinen Server 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 einen größeren Cache für meine Anwendung benötige?

Sie können Ihrem vorhandenen Cache-Cluster weitere Cache-Knoten hinzufügen. Verwenden Sie hierfür in der AWS Management Console die Option "Add Node" auf der Registerkarte "Nodes" für Ihren Cache-Cluster 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 SimpleDB. 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. Die Liste der verfügbaren Clients können Sie der Projektseite von Memcached entnehmen. Klicken 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 seiner 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 Seite mit den Details zu Amazon ElastiCache anmelden. Nachdem Sie den Client heruntergeladen haben, können Sie Ihren Amazon ElastiCache-Cluster über die Amazon ElastiCache-Konsole einrichten und aktivieren. Weitere Details erhalten 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 Memcached-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 Cache-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 Versionsaktualisierungen nach Ihren eigenen Vorstellungen und Zeitplänen durchführen. Sofern von Ihnen nicht anders festgelegt, erfolgt die Aktualisierung des Cache-Clusters auf neue, von Amazon ElastiCache unterstützte Nebenversionen von Memcached automatisch. Die Patches werden im Laufe des geplanten Wartungsfensters vorgenommen und vorher im Amazon ElastiCache-Forum angekündigt. Möchten Sie die automatische Versionsaktualisierung deaktivieren, stellen Sie das Feld "Auto Minor Version Upgrade" für Ihren Cache-Cluster auf "No" ein. Da Hauptversionsaktualisierungen 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 Cache-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 Verwaltungsfunktion für die Cache-Engine-Version soll Ihnen möglichst viel Flexibilität in Bezug auf das Patching gewähren. Das Patching für Ihren Cache-Cluster kann jedoch auch automatisch erfolgen, wenn wir Schwachstellen im System oder in der Cache-Software erkennen.

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

Beim Erstellen eines neuen Cache-Clusters können Sie eine beliebige derzeit unterstützte Version (Haupt-/oder Nebenversion) angeben. Ist Funktionen zum automatischen Upgrade deaktiviert (die Option "Auto Minor Version Upgrade" ist auf "No" eingestellt), und Sie möchten das Upgrade auf eine unterstützte Haupt- oder Nebenversion manuell initiieren, verwenden Sie die Option "Modify" für Ihr Cache-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 "ApplyImmediately") oder im nächsten für Ihr Cache-Cluster geplanten Wartungsfenster ausgeführt.

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

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

F: Wie unterscheidet Amazon ElastiCache zwischen Updates auf Haupt- und Nebenversionen?

Bei Memcached werden Versionsnummern wie folgt organisiert: Memcached-Version = X.Y.Z. X = Hauptversion, Y = Veröffentlichungsstufe, Z = Versionsnummer innerhalb der Veröffentlichungsreihe. Für Amazon ElastiCache werden größere Änderungen am Programm oder der Release-Ebene in der Hauptversionsnummer reflektiert. Beispiel: Wechsel von 1.4.X auf 1.5.X. Bei einer kleineren Änderung wird lediglich die Versionsnummer innerhalb des Releases geändert. Beispiel: Wechsel von 1.4.5 auf 1.4.6. Zum gegenwärtigen Zeitpunkt unterstützt Amazon ElastiCache die Memcached-Hauptversion 1.4. Für die Zukunft ist die Unterstützung weiterer Memcached-Hauptversionen geplant.

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 Versions-Releases in einem gegebenen Jahr unterstützt werden, hängt von Häufigkeit und Inhalt der Memcached-Versions-Releases 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.

Im Hinblick auf veraltete Versionen gilt:

  • Hauptversionen von Memcached, beispielsweise 1.4, sollen über einen Zeitraum von zwei Jahren ab der ersten Einführung für Amazon ElastiCache unterstützt werden.
  • Untergeordnete Memcached-Versionen (z. B. 1.4.5) sollen nach ihrer ersten Einführung für Amazon ElastiCache mindestens ein Jahr unterstützt werden.
  • Für als veraltet eingestufte und verworfene Haupt- und Nebenversionen von Memcached soll ein dreimonatiger Übergangszeitraum eingeräumt werden, in dem Sie selbst ein Upgrade auf eine unterstützte Version ausführen können, bevor während des geplanten Wartungsfensters ein automatisches Upgrade vorgenommen wird.

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 ab der Memcached-Version 1.4.5.


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 Protokollebebe kompatibel mit Open Source Redis?

Ja, Amazon ElastiCache for Redis ist auf Protokollebebe 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.6.13 und 2.8.6 unterstützt.

F: Was sind Amazon ElastiCache for Redis-Knoten, -Cluster und -Replikationsgruppen?

Ein ElastiCache for Redis-Knoten ist der kleinste Baustein einer Amazon ElastiCache for Redis-Bereitstellung. Jeder ElastiCache for Redis-Knoten unterstützt das Redis-Protokoll und hat einen eigenen DNS-Namen und Port. Es werden mehrere Arten von ElastiCache for Redis-Knoten unterstützt, jeweils mit unterschiedlicher Menge an CPU-Kapazität und zugeordnetem Arbeitsspeicher. Ein ElastiCache for Redis-Knoten kann eine primäre oder Read Replica-Rolle übernehmen. Ein Primärknoten kann auf mehrere Read Replica-Knoten repliziert werden. Ein ElastiCache for Redis-Cluster ist eine Zusammenstellung mit einem oder mehreren ElastiCache for Redis-Knoten derselben Rolle. Der Primärknoten befindet sich im primären Cluster, der Read Replica-Knoten im Read Replica-Cluster. Derzeit kann ein Cluster nur einen Knoten enthalten. Für die Zukunft ist eine Erhöhung dieses Limits vorgesehen. Ein Cluster dient zum Verwalten eines logischen Schlüsselraums, wobei jeder Knoten für einen Teil des Schlüsselraums zuständig ist. Die meisten Verwaltungsvorgänge erfolgen auf Cluster-Ebene. Eine ElastiCache for Redis-Replikationsgruppe kapselt die Primär- und Read Replica-Cluster für eine Redis-Installation. Eine Replikationsgruppe verfügt über maximal einen Primär-Cluster und 0 bis n Read Replica-Cluster. Alle Knoten in einer Replikationsgruppe (und somit in einem Cluster) haben denselben Knotentyp und dieselben Einstellungen für Parameter und Sicherheitsgruppen.

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

Ja, Sie können Persistenz auf mehrere Weise erreichen:

  1. Erstellen von Snapshots Ihrer Redis-Daten mithilfe der Sicherung- und Wiederherstellungsfunktion. Einzelheiten finden Sie hier.
  2. Sie können einen in einer EC2-Instance ausgeführten Redis-Slave-Knoten einem ElastiCache for Redis-Primärknoten zuordnen. Der Redis-Slave-Knoten kann nach Bedarf zum Generieren von RDB-Snapshots und/oder AOF Append Logs genutzt werden und Sie können diese Dateien zum Zweck der Beständigkeit in S3 übertragen. Hier erfahren Sie, wie diese Einrichtung erfolgt.
  3. Ihre Anwendung kann den Redis-Befehl SYNC für einen ElastiCache for Redis-Knoten aufrufen, um den Inhalt des Knotens abzurufen.

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 die Redis-Replikationsoption ausgewählt ist und der Primärknoten ausgefallen ist und nicht neu gestartet werden kann, haben Sie 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. Wenn Sie, nachdem der Redis-Ersatzknoten konfiguriert wurde und einsatzbereit ist, Ihrem ElastiCache for Redis-Cluster ein SNS-Thema zugeordnet haben, wird eine SNS-Benachrichtigung gesendet, in der Sie über die Wiederherstellung des Knotens informiert werden. 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?

Amazon ElastiCache überwacht den Primärknoten. Sollte dieser nicht verfügbar sein oder nicht reagieren, wird der Primärknoten mit der hier beschriebenen Methode repariert. Wenn der Primärknoten jedoch nicht repariert werden kann, 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 Replikationsgruppe 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 Cache-Parametergruppe 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 Cache-Parametergruppe anzugeben, wird eine Standardparametergruppe 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: Was bedeutet es, einen Redis-Cache-Knoten als Read Replica auszuführen?

Read Replicas dienen in Redis zwei Zwecken:

  • Ausfallsicherheit und
  • Leseskalierung.

Wenn Sie einen Cache-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 Cache-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, 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 gegebenen primären Cache-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 einer Replikationsgruppe geben Sie den Parameter "MasterCacheClusterIdentifier" an. "MasterCacheClusterIdentifier" ist die Cache-Cluster-Kennung des primären Cache-Clusters, aus dem Sie Daten replizieren möchten. Sie erstellen anschließend den Read Replica-Cluster in der Replikationsgruppe, indem Sie die "CreateCacheCluster"-API unter Angabe der Parameter "ReplicationGroupIdentifier" und "CacheClusterIdentifier" des Master-Clusters aufrufen. Wie bei einem Standard-Cache-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 Cache-Clusters und beginnt mit der Replikation. Das hat eine kurze Unterbrechung des E/A-Datenverkehrs Ihres primären Cache-Clusters 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: 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 Cache-Knoten erstellen?

Derzeit bietet Amazon ElastiCache Ihnen die Möglichkeit, bis zu fünf Read Replicas für einen primären Cache-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 Cache-Knoten hochstufen?

Nein, dies wird nicht unterstützt. Stattdessen können Sie einen Snapshot Ihres ElastiCache for Redis-Knotens erstellen (Sie können den Master-Knoten oder beliebige der Read Replicas auswählen). Den Snapshot können Sie anschließend als Grundlage eines neuen ElastiCache for Redis-Knotens nutzen. Sie können außerdem einen in Ihrer EC2-Instance ausgeführten Redis-Slave-Knoten einem ElastiCache for Redis-Master-Knoten zuordnen und einen RDB-Snapshot erstellen. Anhand dieses Snapshots können Sie dann einen primären ElastiCache for Redis-Cache-Knoten erstellen. Weitere Informationen hierzu finden Sie im Amazon ElastiCache User Guide.

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

Aktualisierungen eines primären Cache-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 DB-Instances (inklusive Read Replicas) auszugeben, oder einfach in der Amazon ElastiCache Management Console auf die Registerkarte "Cache Node" 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 Benutzerhandbuch zu Amazon ElastiCache. 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 Cache-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 Cache-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 Cache-Knotens abhängt.

F: Wie lösche ich eine Read Replica? Wird sie automatisch gelöscht, wenn ihr primärer Cache-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-Kennun 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 Standard-Cache-Knoten und zu denselben Tarifen abgerechnet. Wie bei einem Standard-Cache-Knoten auch wird der Tarif pro "Cache-Knoten-Stunde" für eine Read Replica von der Cache-Knoten-Klasse 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: Welche Ereignisse würden Amazon ElastiCache zu einem Failover auf die Read Replica veranlassen?

Bei den meisten gängigen Ausfallszenarien, z. B. nach Knotenausfällen, erfolgt nach deren Erkennen eine automatische Wiederherstellung durch Amazon ElastiCache, sodass Sie ohne Verwaltungsaufwand Cache-Vorgänge schnellstmöglich fortsetzen können. Amazon ElastiCache führt in den folgenden Szenarien ein Failover durch:

  • Verlust der Verfügbarkeit in der Availability Zone des Primärknotens
  • Verlust der Netzwerkverbindung mit dem Primärknoten

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

Das Failover wird automatisch von Amazon ElastiCache ausgelöst, damit Sie Cache-Vorgänge schnellstmöglich fortsetzen können. Bei einem Failover schaltet Amazon ElastiCache einfach den DNS-Datensatz Ihres Cache-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 mein Primärknoten nun in einer anderen Availability Zone als meine anderen AWS-Ressourcen (z. B. EC2-Instances).

F: Muss ich mir Gedanken um Latenz machen?

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


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 zeitpunkbezogene 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 Replikationsgrupe können Sie den primären oder beliebige der Read Replica-Cluster wählen, der/die gesichert werden sollen. Wir empfehlen Endbenutzern die Aktivierung der Sicherung auf einer der Read Replicas, um Latenzeffekte auf dem Redis-Master 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:

  • Einen Snapshot 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 "CreateCacheCluster", "ModifyCacheCluster" oder "ModifyReplicationGroup".

F: Was ist ein Sicherungszeitfenster 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 Cache-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 von einer der Read Replicas (anstatt vom Master). 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 Snapshots aus einer Region in eine andere kopieren?

Nein, derzeit nicht.

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 Cache-Snapshots werden nicht aufbewahrt.

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

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

  • 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 Launch Cache Cluster Wizard 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: 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?

Nein, derzeit nicht.