Virtual memory

edit

By default, Elasticsearch uses memory mapping (mmap) to efficiently access indices. Usually, default values for virtual address space on Linux distributions are too low for Elasticsearch to work properly, which may result in out-of-memory exceptions. To increase virtual memory, ECK sets the recommended value by default.

The kernel setting vm.max_map_count=2621441 can be set on the host either directly or by a dedicated init container, which needs to be privileged. If the kernel setting is set directly, you might disable the init container in the Elasticsearch specification:

spec:
  setVmMaxMapCount: false

For more information, see the Elasticsearch documentation on Virtual memory.

Optionally, you can select a different type of file system implementation for the storage. For possible options, see the store module documentation.

spec:
  nodes:
  - nodeCount: 3
    config:
      index.store.type: niofs