Il ribilanciamento automatico del frammento è conforme a restrizioni e regole come il filtraggio di allocazione e la consapevolezza forzata, portando al cluster più efficiente e ben bilanciato possibile.
NOTA: Non confondere la riallocazione del frammento, che è il processo di ricerca e spostamento di frammenti non assegnati ai nodi in cui risiedono, con il riequilibrio. Il riequilibrio prende frammenti assegnati e li sposta in modo uniforme a vari nodi, lo scopo è la pari distribuzione di frammenti per nodo.
Come abilitare il ribilanciamento automatico
Per abilitare il riequilibrio del cluster automatico in ElaSticSearch, possiamo utilizzare l'endpoint API TO_CLEST PUT e aggiungere le impostazioni di cui abbiamo bisogno.
Le impostazioni disponibili per il riequilibrio di shard dinamico includono:
Prendi in considerazione la richiesta di seguito per consentire il riequilibrio del frammento automatico per il cluster.
Put /_cluster /ImpostazioniQuello che segue è il comando Curl:
Curl -xput "http: // localhost: 9200/_cluster/impostazioni" -H 'Content -Type: Application/Json' -d '"persistente": "cluster.routing.riequilibrare.Abilita ":" primarie "," cluster.routing.allocazione.abilit_rebalance ":" sempre "," cluster.routing.allocazione.cluster_concurrent_reberance ":" 2 " 'Questo comando dovrebbe restituire una risposta poiché l'oggetto JSON riconosce le impostazioni che vengono aggiornate.
Indice manuale Ribilanciamento
Puoi anche riequilibrare manualmente un frammento per un indice specifico. Non consiglierei questa opzione perché le opzioni di riequilibrio predefinite di Elasticsearch sono molto efficienti.
Tuttavia, se dovesse sorgere la necessità di eseguire un riequilibrio manuale, è possibile utilizzare la seguente richiesta:
Il comando Curl è:
Curl -xpost "http: // localhost: 9200/_cluster/reroute" -h 'content -type: applicazione/json' -d '"comandi": ["move": "indice": "kibana_sample_data_flights", " "shard": 0, "from_node": "istanza-0000000001", "to_node": "istanza-0000000002"] 'NOTA: Tieni presente che se si esegue un riequilibrio manuale, Elasticsearch può spostare automaticamente i frammenti per garantire il miglior ribilanciamento possibile.
Conclusione
Questa guida ti ha accompagnato attraverso l'aggiornamento e la modifica delle impostazioni per un cluster Elasticsearch per abilitare il riequilibrio automatico del frammento. L'articolo ha anche coperto il riequilibrio manuale, se lo hai bisogno.