In che modo posso riequilibrare la distribuzione di una partizione non uniforme nel mio cluster del servizio OpenSearch di Amazon?

5 minuti di lettura
0

Lo spazio su disco nel dominio del servizio OpenSearch di Amazon è distribuito in modo non uniforme tra i nodi. Di conseguenza, l'utilizzo del disco è fortemente distorto.

Breve descrizione

L'utilizzo del disco può essere fortemente distorto a causa dei seguenti motivi:

  • Dimensioni della partizione non uniforme in un cluster. Sebbene il servizio OpenSearch distribuisca uniformemente il numero di partizioni tra i nodi, dimensioni di partizione variabili richiedono diverse quantità di spazio su disco.
  • Spazio su disco disponibile su un nodo. Per ulteriori informazioni, consulta Disk-based shard allocation (Allocazione di partizioni basata su disco) sul sito Web di Elasticsearch.
  • Strategia di allocazione delle partizioni errata. Per ulteriori informazioni, consulta Demystifying OpenSearch Service shard allocation (Demistificazione dell'allocazione delle partizioni del servizio OpenSearch).

Per riequilibrare l'allocazione delle partizioni nel cluster del servizio OpenSearch, considera le seguenti opzioni:

  • Controlla l'allocazione delle partizioni, le dimensioni delle partizioni e la strategia di partizione dell'indice.
  • Assicurati che i frammenti abbiano la stessa dimensione in tutti gli indici.
  • Mantieni dimensioni condivise tra 10 GB e 50 GB per prestazioni migliori.
  • Aggiungi altri nodi di dati al cluster di OpenSearch Service.
  • Aggiorna la tua strategia di partizione.
  • Elimina gli indici vecchi o inutilizzati per liberare spazio su disco.

Risoluzione

Controlla l'allocazione delle partizioni, le dimensioni delle partizioni e la strategia di partizione dell'indice

Per verificare il numero di partizioni allocate a ciascun nodo e la quantità di spazio su disco utilizzato su ciascun nodo, utilizzare la seguente API:

GET _cat/allocation?v

Per controllare i frammenti allocati a ciascun nodo e la dimensione di ogni partizione, utilizzare la seguente API:

GET _cat/shards?v

Nota: questa API mostra che la dimensione delle partizioni può variare a seconda dei diversi indici.

La strategia di partizione non uniforme per gli indici può causare l'incrinabilità dei dati. In questo caso, le partizioni degli indici più grandi risiedono solo su pochi nodi. Per controllare la strategia di partizione per gli indici, utilizza la seguente API:

GET _cat/indices?v

Assicurati che le partizioni abbiano la stessa dimensione in tutti gli indici

Se la dimensione dell'indice varia in modo significativo, utilizza l'API dell'indice di rollover per creare un nuovo indice quando vengono raggiunte determinate dimensioni dell'indice. In alternativa, puoi utilizzare Index State Management (ISM) per creare un nuovo indice per il servizio OpenSearch versioni 7.1 e successive. Per ulteriori informazioni sul rollover di un alias utilizzando ISM, vedi rollover sul sito Web di Open Distro.

Mantieni la dimensione delle partizioni tra i 10 GB e i 50 GB per prestazioni migliori

Se disponi di una classe di istanze di grandi dimensioni, utilizza la scala Petabyte per il servizio OpenSearch di Amazon per determinare le dimensioni delle partizioni. Ad esempio, un dominio del servizio OpenSearch con diverse istanzei3.16xlarge.search può supportare partizioni di dimensioni fino a 100 GB perché sono disponibili più risorse. Per ulteriori informazioni sulla strategia di partizione, consulta Scelta del numero delle partizioni.

Aggiungi altri nodi di dati al cluster OpenSearch Service

Se il cluster di OpenSearch Service ha raggiunto livelli elevati di utilizzo del disco, aggiungere altri nodi di dati al cluster. L'aggiunta di nodi di dati aggiunge inoltre ulteriori risorse per migliorare le prestazioni del cluster.

Nota: il servizio OpenSearch non riequilibra automaticamente il cluster in caso di mancanza di spazio di archiviazione disponibile. Di conseguenza, se un nodo di dati esaurisce lo spazio di archiviazione libero, il cluster blocca qualsiasi scrittura. Per ulteriori informazioni sulla gestione dello spazio su disco, consulta In che modo posso risolvere i problemi relativi allo spazio di archiviazione insufficiente nel servizio OpenSearch di Amazon?

Aggiorna la tua strategia di partizione

Di default, il servizio OpenSearch di Amazon ha una strategia di partizione di 5:1 in cui ogni indice è diviso in cinque partizioni primarie. All'interno di ogni indice, ogni partizione primaria ha anche la propria replica. Il servizio OpenSearch assegna automaticamente le partizioni primarie e le partizioni di replica a nodi di dati separati e si assicura che ci sia un backup in caso di errore.

Per modificare il comportamento di default del servizio OpenSearch, progetta i tuoi indici in modo che le partizioni siano distribuite equamente per dimensione:

  • Per gli indici esistenti, utilizza l'API di reindicizzazione per modificare il numero di partizioni primarie. L'API _reindex può essere utilizzata per unire indici più piccoli in un indice più grande, oppure può essere utilizzata per dividere l'indice più grande. Quando l'indice più grande viene suddiviso in più partizioni primarie, le dimensioni della partizione diminuiscono.
  • Per i nuovi indici, utilizza l'API del modello dell'indice per definire il numero di partizioni primarie e di replica.

Quindi, aggiorna le impostazioni degli indici per le tue partizioni. Per ulteriori informazioni, consulta Update index settings API (Aggiornare le impostazioni degli indici) sul sito Web di Elasticsearch.

Elimina gli indici vecchi o inutilizzati per liberare spazio sul disco

OpenSearch Service o Elasticsearch versione 6.8 o successiva supportano ISM. Con ISM è possibile definire criteri di gestione personalizzati in modo che gli indici vecchi o inutilizzati vengano eliminati dopo un determinato periodo.


Informazioni correlate

Calcolo dei requisiti di storage

Iniziare a usare il servizio OpenSearch di Amazon: quante partizioni sono necessarie?

AWS UFFICIALE
AWS UFFICIALEAggiornata un anno fa