node.asciidoc 1.5 KB

1234567891011121314151617181920212223242526272829303132
  1. [[modules-node]]
  2. == Node
  3. *elasticsearch* allows to configure a node to either be allowed to store
  4. data locally or not. Storing data locally basically means that shards of
  5. different indices are allowed to be allocated on that node. By default,
  6. each node is considered to be a data node, and it can be turned off by
  7. setting `node.data` to `false`.
  8. This is a powerful setting allowing to simply create smart load
  9. balancers that take part in some of different API processing. Lets take
  10. an example:
  11. We can start a whole cluster of data nodes which do not even start an
  12. HTTP transport by setting `http.enabled` to `false`. Such nodes will
  13. communicate with one another using the
  14. <<modules-transport,transport>> module. In front
  15. of the cluster we can start one or more "non data" nodes which will
  16. start with HTTP enabled. All HTTP communication will be performed
  17. through these "non data" nodes.
  18. The benefit of using that is first the ability to create smart load
  19. balancers. These "non data" nodes are still part of the cluster, and
  20. they redirect operations exactly to the node that holds the relevant
  21. data. The other benefit is the fact that for scatter / gather based
  22. operations (such as search), these nodes will take part of the
  23. processing since they will start the scatter process, and perform the
  24. actual gather processing.
  25. This relieves the data nodes to do the heavy duty of indexing and
  26. searching, without needing to process HTTP requests (parsing), overload
  27. the network, or perform the gather processing.