Reallocating unassigned shards might solve the following situations:
- An "Error Accessing Store" dialog is displayed after signing in to the system:
- In the Store page, the status of the cluster is RED with unassigned shards:
The store is divided into nodes (some used to keep data, others can handle communications or manage the cluster). The type of each node can be found in the Nodes table under "Type" column, marked in red in the following screenshot:
Shards need to be allocated/assigned to data nodes in order to be able to be populated with data. If shards are unassigned to a data node then no data can flow to the system.
This situation is usually caused by unexpected recovery of the cluster, where automatic assignment of shards was not applicable at the time of recovery for unknown reason.
To fix the issue, you may execute the following script: /app/scripts/realloc_shards.sh <Node Name>
- The <Node Name> parameter should be the name of the data node (a node of type "D" in the nodes table)
The script scans all shards and reallocates unassigned shards to the data node provided.
In the example above, the script should be run as follows:
/app/scripts/realloc_shards.sh MonTier-es-raw-trans-Node-2
This operation may take a while, depending on your installation and the amount of data. Refreshing the screen in "head" application (available from Store page) will show up-to-date state of the assigned and unassigned shards.
In cell environments, unassigned shards can only reallocate to a Store node from the same cell member or cell manager.
i.e. if there are unassigned shards from index of node N002, they can be reallocated to Store node named MonTier-es-raw-trans-N002-Node-X.
Below is an example of a successful execution:
Reallocation node: MonTier-es-raw-trans-Node-2 Testing index 0;wdp-wsm_i2 About to reallocate. index=wdp-wsm_i2, shard=0, node=MonTier-es-raw-trans-Node-2 Reallocation http response status is: 200, output={"acknowledged":true,"state":{"version": Testing index 1;wdp-syslog-sys-auth_i1 About to reallocate. index=wdp-syslog-sys-auth_i1, shard=1, node=MonTier-es-raw-trans-Node-2 Reallocation http response status is: 200, output={"acknowledged":true,"state":{"version": Testing index 2;system-health_i1 About to reallocate. index=system-health_i1, shard=2, node=MonTier-es-raw-trans-Node-2 Reallocation http response status is: 200, output={"acknowledged":true,"state":{"version": Testing index 0;system-health_i1 About to reallocate. index=system-health_i1, shard=0, node=MonTier-es-raw-trans-Node-2 Reallocation http response status is: 200, output={"acknowledged":true,"state":{"version": ...
Below is an example of a unsuccessful execution:
Reallocation node: MonTier-es-raw-trans-Node-5 Testing index 0;wdp-syslog-sys-auth_i6 About to reallocate. index=wdp-syslog-sys-auth_i6, shard=0, node=MonTier-es-raw-trans-Node-5 Reallocation http response status is: 400, output={"error":{"root_cause":[{"type":"remote_ Testing index 0;wdp-syslog-sys-auth_i3 About to reallocate. index=wdp-syslog-sys-auth_i3, shard=0, node=MonTier-es-raw-trans-Node-5 Reallocation http response status is: 400, output={"error":{"root_cause":[{"type":"remote_ Testing index 1;logical-tran-full_i1 About to reallocate. index=logical-tran-full_i1, shard=1, node=MonTier-es-raw-trans-Node-5 Reallocation http response status is: 400, output={"error":{"root_cause":[{"type":"remote_ Testing index 1;wdp-config-service_i1 About to reallocate. index=wdp-config-service_i1, shard=1, node=MonTier-es-raw-trans-Node-5 Reallocation http response status is: 400, output={"error":{"root_cause":[{"type":"remote_ ...