123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- [[system-config]]
- == Important System Configuration
- Ideally, Elasticsearch should run alone on a server and use all of the
- resources available to it. In order to do so, you need to configure your
- operating system to allow the user running Elasticsearch to access more
- resources than allowed by default.
- The following settings *must* be addressed before going to production:
- * <<heap-size,Set JVM heap size>>
- * <<setup-configuration-memory,Disable swapping>>
- * <<file-descriptors,Increase file descriptors>>
- * <<vm-max-map-count,Ensure sufficient virtual memory>>
- * <<max-number-of-threads,Ensure sufficient threads>>
- [[dev-vs-prod]]
- [float]
- === Development mode vs production mode
- By default, Elasticsearch assumes that you are working in development mode.
- If any of the above settings are not configured correctly, a warning will be
- written to the log file, but you will be able to start and run your
- Elasticsearch node.
- As soon as you configure a network setting like `network.host`, Elasticsearch
- assumes that you are moving to production and will upgrade the above warnings
- to exceptions. These exceptions will prevent your Elasticsearch node from
- starting. This is an important safety measure to ensure that you will not
- lose data because of a malconfigured server.
- include::sysconfig/configuring.asciidoc[]
- include::sysconfig/heap_size.asciidoc[]
- include::sysconfig/swap.asciidoc[]
- include::sysconfig/file-descriptors.asciidoc[]
- include::sysconfig/virtual-memory.asciidoc[]
- include::sysconfig/threads.asciidoc[]
|