Elastisk sökning

Elasticsearch Shard Rebalancing Tutorial

Elasticsearch Shard Rebalancing Tutorial
En Elasticsearch-skärva är en enhet som gör att Elasticsearch-motorn kan distribuera data i ett kluster. I Elasticsearch säger vi att ett kluster är "balanserat" när det innehåller lika många skärvor på varje nod utan att ha en stor koncentration av skärvor på en enda nod. Beroende på hur du konfigurerar Elasticsearch utför den automatiskt skärbalansering i ditt kluster för att förbättra prestandan.

Automatisk återbalansering av skärvor överensstämmer med begränsningar och regler som tilldelningsfiltrering och tvingad medvetenhet, vilket leder till ett så effektivt och välbalanserat kluster som möjligt.

NOTERA: Förväxla inte omfördelning av skärvor, vilket är processen för att hitta och flytta icke tilldelade skärvor till de noder där de finns, med ombalansering. Ombalansering tar tilldelade skärvor och flyttar dem jämnt till olika noder, syftet är lika fördelning av skärvor per nod.

Hur man aktiverar automatisk ombalansering

För att aktivera automatisk återbalansering av kluster i Elasticsearch kan vi använda PUT-begäran to_cluster API endpoint och lägga till de inställningar vi behöver.

De tillgängliga inställningarna för dynamisk återbalansering av skärvor inkluderar:

Överväg begäran nedan för att tillåta automatisk återbalansering av skärvor för klustret.

PUT / _cluster / inställningar

"ihållande":
"klunga.dirigering.återbalansera.aktivera ":" primaries ",
"klunga.dirigering.tilldelning.allow_rebalance ":" alltid " ,
"klunga.dirigering.tilldelning.cluster_concurrent_rebalance ":" 2 "

Följande är cURL-kommandot:

curl -XPUT "http: // localhost: 9200 / _cluster / settings" -H 'Content-Type: application / json' -d '"persistent": "cluster.dirigering.återbalansera.aktivera ":" primaries "," cluster.dirigering.tilldelning.allow_rebalance ":" alltid "," kluster.dirigering.tilldelning.cluster_concurrent_rebalance ":" 2 " '

Detta kommando ska returnera ett svar när JSON-objektet bekräftar de inställningar som uppdateras.


”Erkänt”: sant,
"ihållande":
"kluster":
"routing":
"balansera om":
"enable": "primaries"
,
"allokering":
"allow_rebalance": "alltid",
"cluster_concurrent_rebalance": "2"



,
"övergående":

Manuell indexbalansering

Du kan också balansera en skärv manuellt för ett visst index. Jag skulle inte rekommendera det här alternativet eftersom Elasticsearch-standardalternativ för ombalansering är mycket effektiva.

Om behovet av manuell ombalansering skulle uppstå kan du dock använda följande begäran:


"Erkänd": sant,
"ihållande":
"kluster":
"routing":
"balansera om":
"enable": "primaries"
,
"allokering":
"allow_rebalance": "alltid",
"cluster_concurrent_rebalance": "2"



,
"övergående":

Kommandot cURL är:

curl -XPOST "http: // localhost: 9200 / _cluster / omdirigera" -H 'Content-Type: application / json' -d '"commands": ["move": "index": "kibana_sample_data_flights", "shard": 0, "from_node": "instans-0000000001", "to_node": "instans-0000000002"] '

NOTERA: Tänk på att om du utför en manuell återbalansering kan Elasticsearch flytta skärvorna automatiskt för att säkerställa bästa möjliga återbalansering.

Slutsats

Den här guiden guidade dig genom att uppdatera och ändra inställningarna för ett Elasticsearch-kluster för att möjliggöra automatisk återbalansering av skärvor. Artikeln omfattade också manuell ombalansering, om du behöver det.

Hur man förbättrar FPS i Linux?
FPS står för Bildrutor per sekund. FPS: s uppgift är att mäta bildfrekvensen i videouppspelningar eller spelprestanda. Med enkla ord betecknas antalet...
De bästa Oculus App Lab-spelen
Om du är Oculus-headsetägare måste du vara förtjust i sidoladdning. Sideladdning är processen för att installera icke-butiksinnehåll på ditt headset. ...
Topp 10 spel att spela på Ubuntu
Windows-plattformen har varit en av de dominerande plattformarna för spel på grund av den enorma andelen spel som utvecklas idag för att stödja Window...