network.asciidoc 3.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. [[modules-network]]
  2. == Network Settings
  3. There are several modules within a Node that use network based
  4. configuration, for example, the
  5. <<modules-transport,transport>> and
  6. <<modules-http,http>> modules. Node level
  7. network settings allows to set common settings that will be shared among
  8. all network based modules (unless explicitly overridden in each module).
  9. Be careful with host configuration! Never expose an unprotected instance
  10. to the public internet.
  11. The `network.bind_host` setting allows to control the host different network
  12. components will bind on. By default, the bind host will be `_local_`
  13. (loopback addresses such as `127.0.0.1`, `::1`).
  14. The `network.publish_host` setting allows to control the host the node will
  15. publish itself within the cluster so other nodes will be able to connect to it.
  16. Currently an elasticsearch node may be bound to multiple addresses, but only
  17. publishes one. If not specified, this defaults to the "best" address from
  18. `network.bind_host`, sorted by IPv4/IPv6 stack preference, then by reachability.
  19. The `network.host` setting is a simple setting to automatically set both
  20. `network.bind_host` and `network.publish_host` to the same host value.
  21. Both settings allows to be configured with either explicit host address(es)
  22. or host name(s). The settings also accept logical setting value(s) explained
  23. in the following table:
  24. [cols="<,<",options="header",]
  25. |=======================================================================
  26. |Logical Host Setting Value |Description
  27. |`_local_` |Will be resolved to loopback addresses
  28. |`_local:ipv4_` |Will be resolved to loopback IPv4 addresses (e.g. 127.0.0.1)
  29. |`_local:ipv6_` |Will be resolved to loopback IPv6 addresses (e.g. ::1)
  30. |`_site_` |Will be resolved to site-local addresses ("private network")
  31. |`_site:ipv4_` |Will be resolved to site-local IPv4 addresses (e.g. 192.168.0.1)
  32. |`_site:ipv6_` |Will be resolved to site-local IPv6 addresses (e.g. fec0::1)
  33. |`_global_` |Will be resolved to globally-scoped addresses ("publicly reachable")
  34. |`_global:ipv4_` |Will be resolved to globally-scoped IPv4 addresses (e.g. 8.8.8.8)
  35. |`_global:ipv6_` |Will be resolved to globally-scoped IPv6 addresses (e.g. 2001:4860:4860::8888)
  36. |`_[networkInterface]_` |Resolves to the addresses of the provided
  37. network interface. For example `_en0_`.
  38. |`_[networkInterface]:ipv4_` |Resolves to the ipv4 addresses of the
  39. provided network interface. For example `_en0:ipv4_`.
  40. |`_[networkInterface]:ipv6_` |Resolves to the ipv6 addresses of the
  41. provided network interface. For example `_en0:ipv6_`.
  42. |=======================================================================
  43. When the `discovery-ec2` plugin is installed, you can use
  44. {plugins}/discovery-ec2-discovery.html#discovery-ec2-network-host[ec2 specific host settings].
  45. When the `discovery-gce` plugin is installed, you can use
  46. {plugins}/discovery-gce-network-host.html[gce specific host settings].
  47. [float]
  48. [[tcp-settings]]
  49. === TCP Settings
  50. Any component that uses TCP (like the HTTP, Transport and Memcached)
  51. share the following allowed settings:
  52. [cols="<,<",options="header",]
  53. |=======================================================================
  54. |Setting |Description
  55. |`network.tcp.no_delay` |Enable or disable tcp no delay setting.
  56. Defaults to `true`.
  57. |`network.tcp.keep_alive` |Enable or disable tcp keep alive. Defaults
  58. to `true`.
  59. |`network.tcp.reuse_address` |Should an address be reused or not.
  60. Defaults to `true` on non-windows machines.
  61. |`network.tcp.send_buffer_size` |The size of the tcp send buffer size
  62. (in size setting format). By default not explicitly set.
  63. |`network.tcp.receive_buffer_size` |The size of the tcp receive buffer
  64. size (in size setting format). By default not explicitly set.
  65. |=======================================================================