Shard rebalancing on Elasticsearch 1.7.1


(gpong) #1

Hi,
I have two nodes on my cluster lets say node1 and node2. After I restarting the node2 the shards is not balance anymore. All active shards is on node1. How to make the shards is balanced between two nodes??
Thanks

here is my config
############################# Recovery Throttling #############################

# These settings allow to control the process of shards allocation between
# nodes during initial recovery, replica allocation, rebalancing,
# or when adding and removing nodes.

# Set the number of concurrent recoveries happening on a node:
#
# 1. During the initial recovery
#
cluster.routing.allocation.node_initial_primaries_recoveries: 4
#
# 2. During adding/removing nodes, rebalancing, etc
#
cluster.routing.allocation.node_concurrent_recoveries: 2

# Set to throttle throughput when recovering (eg. 100mb, by default 20mb):
#
indices.recovery.max_bytes_per_sec: 100mb

# Set to limit the number of open concurrent streams when
# recovering a shard from a peer:
#
indices.recovery.concurrent_streams: 5
#cluster.routing.allocation.enable : all

################################## Discovery ##################################

# Discovery infrastructure ensures nodes can be found within a cluster
# and master node is elected. Multicast discovery is the default.

# Set to ensure a node sees N other master eligible nodes to be considered
# operational within the cluster. This should be set to a quorum/majority of 
# the master-eligible nodes in the cluster.
#
discovery.zen.minimum_master_nodes: 2
cluster.name: cluster_avatar
node.name: avatar_node1
http.cors.enabled: true
index.number_of_shards: 5
index.number_of_replicas: 1
transport.tcp.port: 9300
http.port: 9200

(Magnus B├Ąck) #2

Elasticsearch only balances the number of shards on each node. Where the primary shards are allocated is AFAIK not part of the equation. Why do you feel that this "imbalance" is a problem?


(gpong) #3

Thanks Magnus for the reply. When I tried to restart node1 and node2 at the same time, the active shards is balance between node1 and node 2. I try to understand how this works and the performance if the shard is balanced. And what the difference about performance and loading between this picture and the first picture above??

Thanks


(Vincent Tran) #4

Primary shards and replica shards have no performance difference. Both primary and replica shards are active. They all participate in the total effort of your cluster.

To understand how this works:
https://www.elastic.co/guide/en/elasticsearch/guide/current/distrib-read.html


(gpong) #5

Thanks Vincent for the reply


(system) #6