I understand that any node in an Elasticsearch cluster can be indexed into and the data will be sent to other cluster nodes.
In the case where 1 node goes down, is it the responsibility of the application to switch to another node in the cluster to index data to?
i.e. the application has to maintain a list of IPs or Hostnames of the cluster nodes and it needs to index the next node in the list in case the current node is unreachable.
Regarding the recovery of a node, for example, if node1 in a 3 node cluster goes down and during this time, nodes 2 and 3 continue to receive new index writes, when node1 recovers, will node1 automatically receive the new index writes from nodes 2 and 3?