Wie verwende ich Index State Management (ISM), um geringen Speicherplatz in Amazon OpenSearch Service zu verwalten?

Letzte Aktualisierung: 16.09.2021

Mein Amazon-OpenSearch-Service-Cluster hat wenig Speicherplatz. Wie verwende ich Index-Statusmanagement (Index State Management, ISM), um geringen Speicherplatz in Amazon OpenSearch Service zu verwalten?

Kurzbeschreibung

Mit Index State Management (ISM) können Sie Routineaufgaben automatisieren und dann auf Indizes und Indexmuster in OpenSearch Service anwenden. Mit ISM können Sie benutzerdefinierte Verwaltungsrichtlinien definieren, mit denen Sie Probleme wie wenig Festplattenspeicher aufrechterhalten können. Beispielsweise können Sie einen Rollover-Vorgang und eine ISM-Richtlinie verwenden, um das Löschen alter Indizes basierend auf Bedingungen wie der Indexgröße zu automatisieren. Der Rollover-Vorgang rollt über ein Ziel auf einen neuen Index, wenn ein vorhandener Index die definierte Bedingung erfüllt.

Führen Sie die folgenden Schritte aus, um mithilfe einer Operation wie Rollover eine ISM-Richtlinie für ein Indexmuster zu erstellen:

1.    Richten Sie Ihren Rollover-Index ein.

2.    Erstellen Sie eine ISM-Richtlinie.

3.    Hängen Sie die Richtlinie an einen Index an.

4.    Fügen Sie die Vorlage hinzu.

Nachdem Sie Ihre Richtlinie an einen Index angehängt haben, beginnt Ihr Index zu initialisieren und wechselt dann in verschiedene Zustände, bis der Rollover-Vorgang abgeschlossen ist. Weitere Informationen zum Rollover-Vorgang finden Sie unter Rollover auf der OpenDistro for Elasticsearch-Website.

Auflösung

Richten Sie Ihren Rollover-Index ein

Erstellen Sie einen Index und einen Alias, bei denen das Indexformat dem Indexmuster entspricht:

^.*-\d+$.

Wichtig: Stellen Sie sicher, dass Sie Ihren Rollover-Alias korrekt konfigurieren. Andernfalls erhalten Sie eine Fehlermeldung.

Im folgenden Beispiel wird „Test-Index-000001“ erstellt und mit mehreren Dokumenten gefüllt. Da in diesem Beispiel ein Rollover-Index verwendet wird, muss das Indexformat mit dem Muster übereinstimmen.

PUT test-index-000001/_doc/1
{
    "user" : "testuser",
    "post_date" : "2020-05-08T14:12:12",
    "message" : "ISM testing"
}

Ein Rollover-Index erfordert einen Alias, der auf den neuesten Index zeigt. Das bedeutet, dass Sie mit der folgenden Abfrage einen Alias („Testindex“) erstellen müssen:

POST /_aliases
{
    "actions" : [
        { "add" : { "index" : "test-index-000001", "alias" : "test-index" } }
    ]
}

Erstellen einer ISM-Richtlinie

Wählen Sie in OpenSearch Dashboards die Registerkarte Indexverwaltung und erstellen Sie eine ISM-Richtlinie für Ihren Rollover-Vorgang.

Beispiel:

{
    "policy": {
        "policy_id": "Roll_over_policy",
        "description": "A test policy. DO NOT USE FOR PRODUCTION!",
        "schema_version": 1,
        "error_notification": null,
        "default_state": "hot",
        "states": [
            {
                "name": "hot",
                "actions": [
                    {
                        "rollover": {
                            "min_size": "10mb"
                        }
                    }
                ],
                "transitions": [
                    {
                        "state_name": "warm"
                    }
                ]
            },
            {
                "name": "warm",
                "actions": [
                    {
                        "replica_count": {
                            "number_of_replicas": 2
                        }
                    }
                ],
                "transitions": []
            }
        ]
    }
}

In dieser ISM-Politik gibt es zwei definierte Staaten: „heiß“ und „warm“. „ Standardmäßig befindet sich Ihr Index im Status „heiß“. Der Index wechselt in den „warmen“ Zustand, sobald seine Größe 10 MB erreicht und ein neuer Rollover-Index erstellt wird. Im „warmen“ Zustand können Sie verschiedene Aktionen für den Index ausführen, z. B. die Anzahl der Replikate auf zwei ändern oder eine force_merge-Operation ausführen.

Anhängen der Richtlinie an einen Index

Führen Sie die folgenden Schritte aus, um Ihre ISM-Richtlinie an einen Index anzuhängen:

1.    Öffnen Sie OpenSearch Dashboards von der OpenSearch Service-Konsole aus.

2.    Wählen Sie die Registerkarte Indexverwaltung.

3.    Wählen Sie den Index aus, an den Sie Ihre ISM-Richtlinie anhängen möchten (z. B. „Testindex-000001").

4.    Wählen Sie Richtlinie anwenden.

5.    (Optional) Wenn Ihre Richtlinie Aktionen angibt, die einen Alias erfordern, geben Sie den Alias an und wählen Sie dann Übernehmen. Ihr Index wird unter der Liste der verwalteten Indizes angezeigt.

Vorlage hinzufügen

Fügen Sie die Richtlinie einem bestimmten Index wie „Test-Index-000002“ bei, der als Ergebnis der ISM-Politik erstellt wurde. Dieser Anhang stellt sicher, dass die Indizes auch überrollt werden, wenn die erforderliche Bedingung (wie Indexgröße) erfüllt ist.

Sie können eine Indexvorlage wie folgt verwenden:

PUT _template/template_1
{
  "index_patterns": [
    "test-index*"
  ],
  "settings": {
    "index": {
      "opendistro": {
        "index_state_management": {
          "policy_id": "Roll_over_policy",
          "rollover_alias": "test-index"
        }
      }
    }
  }
}

In diesem Beispiel lautet die JSON-Richtlinien-ID „Roll_Over_Policy“. Diese JSON-Vorlage stellt sicher, dass beim Erstellen des „Test-Index-000002" -Index die Rollover-Richtlinie angehängt wird:

GET test-index-000002/_settings
{
  "test-index-000002" : {
    "settings" : {
      "index" : {
        "opendistro" : {
          "index_state_management" : {
            "policy_id" : "Roll_over_policy",
            "rollover_alias" : "test-index"
          }
        },
        "number_of_shards" : "1",
        "provided_name" : "test-index-000002",
        "creation_date" : "1589031424388",
        "number_of_replicas" : "2",
        "uuid" : "DUHeUdTnSveeYsH9aIkt-Q",
        "version" : {
          "created" : "7010199"
        }
      }
    }
  }
}

Hinweis: Dieser Index wird auch unter dem Abschnitt Managed Indices auf der Registerkarte Indexverwaltung von OpenSearch Dashboard ausgefüllt.

ISM-Politik erklärt

Wenn eine ISM-Richtlinie an einen Index angehängt ist, wechselt der Index in den Status „Initialisierung“. Vom Status „Initialisierung“ wechselt der Index in den Status „Standard“, der in der Richtlinie definiert ist. Diese „Initialisierung“ -Operation und jede nachfolgende Operation können 30 bis 48 Minuten dauern. ISM nutzt diese Zeit, um politische Maßnahmen durchzuführen, prüft dann auf eventuelle Bedingungen und übergibt den Index in verschiedene Zustände. Ein zufälliger Jitter von 0-60 % wird ebenfalls hinzugefügt, um sicherzustellen, dass keine Aktivitätsschübe von allen Indizes gleichzeitig ausgeht.

Hinweis: Für einen Rollover-Vorgang ist ein Index „abgeschlossen“, nachdem der Index überrollt wurde, in einen „warmen“ Zustand übergeht und die Anzahl der Replikate aktualisiert wurde.

Wenn Sie eine ISM-Richtlinie verwenden und der Index nicht ordnungsgemäß migriert wird, überprüfen Sie den Status des ISM.

Verwenden Sie die folgende Syntax, um den Status der Migration für einen bestimmten Index zu überprüfen:

GET _ultrawarm/migration/<put_index_name_here>/_status

Verwenden Sie die folgende Syntax, um eine zusammenfassende Migration aller Indizes zu erhalten:

GET _ultrawarm/migration/_status?

Amazon OpenSearch Service ist der Nachfolger von Amazon Elasticsearch Service.


War dieser Artikel hilfreich?


Benötigen Sie Hilfe zur Fakturierung oder technischen Support?