Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Restart elasticsearch node

People also ask

How do I restart elasticsearch in Kubernetes?

Apply your updated Elasticsearch spec and the operator will perform rolling update for you. If for any reason you need to restart a pod, you use kubectl delete pod <es pod> -n <your es namespace> to remove the pod and the operator will spin up new one for you.


The correct way to restart a node is to shut it down, using either the shutdown API or sending a TERM signal to the process (eg with kill $PID).

Once shut down, you can start a new node using whatever you use to run elasticsearch, eg the service wrapper, or just starting it from the command line.

If you are using the service wrapper, you can restart a node by passing it the restart command: eg /etc/init.d/elasticsearch restart but that is just a convenience wrapper for the above.

The restart API has been disabled since version 0.11 as it was problematic.


Every time a node goes down and/or and new node comes up, the cluster redistributes the shards, which may not be desired when you just need to restart a node, therefore you can make use of Rolling restart:

  1. first disable shard allocation:

    PUT /_cluster/settings { "transient" : { "cluster.routing.allocation.enable" : "none" } }

  2. restart the node service elasticsearch restart

  3. Enable shard allocation:

    PUT /_cluster/settings { "transient" : { "cluster.routing.allocation.enable" : "all" } }

More on this: Here


There is a restart API analogous to the shutdown API. Just replace "shutdown" with "restart". See also the issue on github.


For restarting elasticserch service, first check the status and then restart that would give a clear picture

sudo service elasticsearch.service status -l    
sudo service elasticsearch.service restart