Warum steckt meine Amazon OpenSearch Service Domain im Status „In Bearbeitung“ fest?

Lesedauer: 6 Minute
0

Mein Amazon OpenSearch Service Cluster steckt im Status „In Bearbeitung“ fest.

Kurzbeschreibung

Ihr OpenSearch Service Cluster wechselt in den Status In Bearbeitung, wenn er sich mitten in einer Konfigurationsänderung befindet. Der Cluster kann im Status In Bearbeitung hängen bleiben, wenn einer der folgenden Fälle eintritt:

  • Eine Validierungsprüfung ist mit Fehlern fehlgeschlagen.
  • Ein neuer Satz von Ressourcen konnte nicht gestartet werden.
  • Die Shard-Migration zu den neuen Datenknoten ist noch nicht abgeschlossen.
  • Der alte Satz von Ressourcen konnte nicht beendet werden.

Wenn Sie eine Konfigurationsänderung initiieren, ändert sich der Domänenstatus auf In Bearbeitung, während OpenSearch Service eine neue Umgebung erstellt. In der neuen Umgebung startet OpenSearch Service einen neuen Satz geeigneter Knoten, z. B. Datenknoten, dedizierte Primärknoten oder UltraWarm-Knoten. Nach Abschluss der Migration werden die älteren Knoten beendet.

Sie können den Fortschritt der Konfigurationsänderung in der Konsole unter Domänenstatus einsehen. Sie können den Fortschritt einer Konfigurationsänderung auch mithilfe der DescribeDomainChangeProgress-API überwachen. Weitere Informationen finden Sie unter Phasen einer Konfigurationsänderung.

Behebung

Eine Validierungsprüfung ist mit Fehlern fehlgeschlagen

Wenn Sie eine Konfigurationsänderung initiieren oder ein Upgrade der OpenSearch-Service-Domänenversion durchführen, führt OpenSearch Service zunächst eine Reihe von Validierungsprüfungen durch. Die Validierungsprüfungen stellen sicher, dass Ihre Domain für ein Upgrade in Frage kommt. Eine Domain kann im Status In Bearbeitung hängen bleiben, wenn Validierungsprüfungen mit Fehlern fehlschlagen. Es gibt mehrere Gründe, warum eine Validierungsprüfung fehlschlagen kann. Informationen zur Behebung dieses Problems finden Sie unter Behebung von Validierungsfehlern. Folgen Sie den Schritten zur Fehlerbehebung im Zusammenhang mit den Validierungsfehlern und versuchen Sie erneut, Ihre Konfiguration zu ändern.

Ein neuer Satz von Ressourcen konnte nicht gestartet werden

Wenn Sie gleichzeitige Konfigurationsänderungen an Ihrem Cluster starten, bevor die erste Konfigurationsänderung abgeschlossen ist, kann Ihr Cluster hängen bleiben. Wenn Sie eine neue Konfigurationsänderung starten, warten Sie, bis sie abgeschlossen ist, bevor Sie eine weitere Konfigurationsänderung beginnen.

Die Validierungsprüfungen für Ihre Domain in der Validierungsphase bleiben während der gesamten Dauer der Konfigurationsänderung gültig. Wenn Ihre Konfiguration die Validierungsphase besteht, vermeiden Sie es, Ressourcen zu ändern, von denen Ihre Domain abhängt. Deaktivieren Sie beispielsweise nicht den AWS Key Management Service (AWS KMS)-Schlüssel, der für die Verschlüsselung verwendet wird.

Ihre Domain kann auch hängen bleiben, wenn ein ClusterBlockException-Fehler auftritt. Dies kann auf einen Mangel an verfügbarem Speicherplatz oder auf einen hohen JVM-Speicherdruck zurückzuführen sein. Weitere Informationen und Problembehandlung finden Sie unter ClusterBlockException.
Hinweis: Sie können die Kennzahlen FreeStorageSpace, MasterCPUUtilization und MasterJVMMemoryPressure in Amazon CloudWatch überprüfen.

Die Shard-Migration zum neuen Satz von Datenknoten ist noch nicht abgeschlossen

Nachdem die neuen Ressourcen von OpenSearch Service erstellt wurden, beginnt die Shard-Migration vom alten Satz von Datenknoten zum neuen Satz. Diese Phase kann je nach Auslastung und Größe des Clusters mehrere Minuten bis mehrere Stunden dauern.

Um die laufende Shard-Migration zwischen den alten Knoten und den neuen Knoten zu überwachen, führen Sie den folgenden API-Aufruf aus:

GET /<DOMAIN_ENDPOINT>/_cat/recovery?active_only=true

Die Shard-Migration kann aus den folgenden Gründen fehlschlagen:

  • Ihr OpenSearch Service Cluster befindet sich derzeit im roten Zustandsstatus. Wenn sich Ihr Cluster im roten Zustand befindet, beheben Sie den roten Cluster-Status, bis sich Ihr Cluster in einem fehlerfreien Zustand befindet. Weitere Informationen finden Sie unter Warum hat mein Amazon OpenSearch Service Cluster einen roten oder gelben Status?
  • Ihr Cluster ist überlastet und kann keine Ressourcen für die Shard-Migration zuweisen. Ein Cluster mit hohem CPU- und JVM-Druck kann überlastet werden. Überwachen Sie die CloudWatch-Metriken JVMMemoryPressure und CPUUtilization. Weitere Informationen finden Sie unter Metriken in CloudWatch anzeigen.
  • In der neuen Knotengruppe fehlt es an freiem Speicherplatz. Dieses Problem tritt auf, wenn während des Blau/Grün-Bereitstellungsprozesses neue Daten in den Cluster gelangen. Dieses Problem kann auch auftreten, wenn alte Knoten über große Shards verfügen, die den neuen Knoten nicht zugewiesen werden können.

Um die Größe Ihrer Shards zu sehen, verwenden Sie die Cat Shards API auf der Elasticsearch Website.
Um die Anzahl der Shards zu sehen, die jedem Knoten zugewiesen sind, verwenden Sie die Cat Allocation API auf der Elasticsearch Website.
Um herauszufinden, warum einige Shards den neuen Knoten nicht zugewiesen werden können, verwenden Sie die API zur Erklärung der Cluster-Zuordnung auf der Elasticsearch Website.
Wenn Sie alte Indizes haben, die Sie nicht mehr benötigen, können Sie die API zum Löschen von Indizes auf der Elasticsearch Website verwenden, um Speicherplatz freizugeben.

Wenn Ihr Shard keinem Knoten zugewiesen werden kann, weil er die maximale Anzahl von Wiederholungen überschritten hat, können Sie die Zuweisung erneut versuchen. Erhöhen Sie die Indexeinstellung „index.allocation.max_retries“, die diesem Shard zugeordnet ist, mithilfe des folgenden API-Aufrufs:

PUT <INDEX_NAME>/_settings
{
    "index.allocation.max_retries" : 10
}

Hinweis: Standardmäßig versucht der Cluster maximal fünfmal hintereinander, einen Shard zuzuweisen.

  • Aufgrund interner Hardwarefehler können die Shards auf alten Datenknoten während einer Migration stecken bleiben.
    Hinweis: Abhängig von Ihrem Hardwareproblem führt OpenSearch Service Selbstheilungsskripte aus, um die Knoten wieder in einen fehlerfreien Zustand zu versetzen.
  • Eine feststeckende Shard-Verlagerung, verursacht durch Shards, die an eine ältere Gruppe von Knoten geheftet sind. Um sicherzustellen, dass Shards nicht an Knoten angeheftet sind, überprüfen Sie die Indexeinstellungen. Oder überprüfen Sie, ob Ihr Cluster einen ClusterBlockException-Fehler aufweist.

Verwenden Sie die folgenden Befehle, um die Shards, die den neuen Knoten nicht zugewiesen werden können, und die entsprechenden Indexeinstellungen zu identifizieren:

GET /<DOMAIN_ENDPOINT>/_cluster/allocation/explain?pretty
GET /<DOMAIN_ENDPOINT>/<INDEX_NAME>/_settings?pretty

Prüfen Sie mithilfe der API zum Abrufen von Indexeinstellungen auf der Elasticsearch Website, ob eine dieser Einstellungen angezeigt wird:

{
    "index.routing.allocation.require._name": "NODE_NAME" (OR)
    "index.blocks.write": true
}

Wenn Sie „index.routing.allocation.require._name“: „<NODE_NAME>“ in Ihren Indexeinstellungen finden, dann setzen Sie diese Einstellung mithilfe des folgenden API-Aufrufs zurück:

PUT /<DOMAIN_ENDPOINT>/<INDEX_NAME>/_settings
{
    "index.routing.allocation.require._name": null
}

Weitere Informationen finden Sie unter Shard-Allokationsfilterung auf Indexebene auf der Elasticsearch Website.

Wenn Sie in Ihren Indexeinstellungen „index.blocks.write“: true sehen, dann hat Ihr Index einen Schreibblock. Dieses Schreibblockproblem kann durch einen ClusterBlockException-Fehler verursacht werden. Weitere Informationen finden Sie unter Wie behebe ich den Fehler 403 „index_create_block_exception“ oder „cluster_block_exception“ im OpenSearch Service?

Bewährte Vorgehensweisen

Gehen Sie wie folgt vor, um zu verhindern, dass Ihr OpenSearch Service Cluster im Status „In Bearbeitung“ hängen bleibt:

  • Stellen Sie sicher, dass Ihr Cluster den Blau/Grün-Bereitstellungsprozess unterstützt, bevor Sie eine Konfigurationsänderung starten.
  • Machen Sie einen Testlauf Ihrer Änderungen, bevor Sie die Konfigurationsänderungen starten.
  • Stellen Sie sicher, dass Ihr Cluster nicht überlastet ist.
  • Vermeiden Sie es, mehrere Konfigurationsänderungen gleichzeitig zu starten.
  • Erwägen Sie, eine Konfigurationsänderung zu verkehrsschwachen Zeiten zu starten.
  • Überwachen Sie den Fortschritt Ihrer Konfigurationsänderung.

Hinweis: Wenden Sie sich an den AWS-Support, wenn einer der folgenden Fälle eintritt:

  • Ihr Cluster bleibt länger als 24 Stunden im Status „In Bearbeitung“ hängen.
  • Ihre Domain steckt in der Phase „Ältere Ressourcen löschen“ fest.
AWS OFFICIAL
AWS OFFICIALAktualisiert vor 7 Monaten