Amazon ElastiCache – Häufig gestellte Fragen


Allgemeines

F: Was ist Amazon ElastiCache?

Amazon ElastiCache ist ein Web-Service, mit dem ein In-Memory-Cache auf einfache Weise bereitgestellt, betrieben und skaliert werden kann. 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 mit dem Protokoll von Memcached kompatibel, einem weitverbreiteten Cache-System zum Speichern von Objekten im Arbeitsspeicher. Auf diese Weise können Sie Code, Anwendungen und gängige Tools, die Sie in den vorhandenen Memcached-Umgebungen nutzen, reibungslos auch mit dem Service nutzen. 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 für meine 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 kann ich mit Amazon ElastiCache 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: 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: Kann ich Amazon ElastiCache mit einem AWS-persistenten 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 Middle Tier für Anwendungen mit extrem hohen Anfrageraten und/oder niedrigem Latenzbedarf zur Verfügung.
F: Was sind Cache-Knoten und Cache-Cluster?

Ein Cache-Knoten ist der kleinste Baublock in einer Amazon ElastiCache-Bereitstellung, ein RAM-Bereich fester Größe, der sicher ins Netzwerk eingebunden ist. Jeder Cache-Knoten führt eine Instance der Memcached-Software aus und hat einen eigenen DNS-Namen und Port. Es werden mehrere Arten von Cache-Knoten unterstützt, jeweils mit unterschiedlicher Menge an zugehörigem Speicher.

In einem Cache-Cluster sind Cache-Knoten zusammengestellt, die jeweils eine Instance des Memcached-Service ausführen. Die meisten Ihrer Vorgänge werden auf der Ebene des Cache-Clusters ausgeführt. Alle Cache-Knoten in einem Cache-Cluster gehören demselben Knotentyp an und haben dieselben Einstellungen für Parameter und Sicherheitsgruppen.

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, die Amazon ElastiCache-APIs oder die 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 ''Launch Cache Cluster''. 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: 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.

Konfigurieren Sie dann die von Ihren bevorzugten Memcached-Clients verwendete Konfigurationsdatei für Memcached mit dieser Endpunktliste, und fügen Sie in der bevorzugten Programmiersprache Daten in Ihre ElastiCache-Knoten ein, oder entfernen Sie Daten aus dem Knoten. Um für Ihre Cache-Knoten Netzwerkanfragen zu ermöglichen, müssen Sie den Zugriff autorisieren. Eine detaillierte Beschreibung der ersten Schritte finden Sie im Handbuch ''Erste Schritte''.

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

Die Protokolle von Amazon ElastiCache und Memcached sind kompatibel. Daher können Sie Standardvorgänge von Memcached wie get, set, incr und decr auf die gleiche Weise verwenden, wie in den 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: Was ist ein 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 Versions-Management für die Cache Engine. 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.

Fakturierung

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 Preise.

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

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 im Preis enthalten?

Falls nicht anders bezeichnet, gelten unsere Preise zuzüglich allfälliger Steuern und Abgaben, darunter MwSt. und Umsatzsteuer.


Reserved Cache Nodes

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 Reserved Cache Nodes 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 RDS-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 Reservierung(en) 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.

Cache-Konfiguration und Skalierung

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

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

  • cache.t1.micro: 213 MB
  • 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.m3.xlarge: 14,6 GB
  • cache.m3.2xlarge: 29,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

Für jeden der oben genannten Knoten-Typen ist angegeben, wie viel Speicher für Memcached zur Verfügung steht, nachdem der Overhead durch die 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 wähle ich den für meine Anwendung geeigneten Cache-Knotentyp?

Es gibt zwar keine präzise Antwort auf diese Frage, mit Amazon ElastiCache müssen Sie sich jedoch keine Gedanken darum machen, ob die Zahl der Cache-Knoten wirklich hundertprozent korrekt 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 Handbuch 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 nach der Konfiguration des neuen Cache-Knotens 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 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.

Sicherheit

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: Was ist eine Cache-Sicherheitsgruppe und warum benötige ich eine?

Eine Cache-Sicherheitsgruppe fungiert wie eine Firewall zum Kontrollieren des Netzwerkzugriffs auf Ihren Amazon ElastiCache-Cluster, sofern die Bereitstellung nicht in einer Amazon Virtual Private Cloud (VPC) erfolgt ist. Weitere Details finden Sie hier.

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 meinen 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.


Cache-Parametergruppen

F: Was sind Cache-Parametergruppen? Wofür sind sie nützlich?

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 meine 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 Parameter Group anzeigen?

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


Versions-Management für die Cache Engine

F: Kann ich steuern, ob und wann die dem Amazon ElastiCache-Cluster zugrunde liegende Memcached-Version auf neu 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 Versions-Upgrades 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 Ihr Cache-Cluster auf "No" ein. Da Upgrades von Hauptversionen einige Kompatibilitätsrisiken mit sich bringen, werden sie nicht automatisch durchgeführt, sondern müssen von Ihnen initiiert 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 oder im Amazon ElastiCache Nutzerhandbuch.

Die Funktion des Versions-Managements für die Cache Engine soll Ihnen möglichst viel Flexibilität in Bezug auf das Patching gewähren. Das Patching für Ihr Cache-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 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?

Im Kontext von Memcached gilt die folgende Versionierung:

Memcached-Version = X.Y.Z

X = Hauptversion, Y = Release-Ebene, Z = Versionsnummer innerhalb einer Release-Ebene.

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 Hauptversionen geplant.

F: Gibt es für Amazon ElastiCache Richtlinien zur Unterstützung und/oder Verwerfung neuer oder 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.


Kompatibilität

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).


AutoErkennung

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 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 mit dem 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 Memcached-kompatiblen Client wie zuvor nutzen.

©2013, Amazon Web Services, Inc. oder Tochtergesellschaften. Alle Rechte vorbehalten.