Elasticsearch Best YML Configuration

Elasticsearch Best YML Configuration

Merhaba arkadaşlar;

Bu gün sizlerle uzun zamandır kullandığım ve en ufak sorun yaşamadığım Elasticsearch YML yapılandırmasını palaşmak istedim.

Elasticsearch YML nedir?

En kısa şekliyle anlatmak gerekirse Elasticsearch’ün yapılandırma dosyasıdır. İlk açılışta statik olarak girilen bu konfigrasyonlar okunur ve açılan node ilk açılışta neler yapması gerektiğini bu yapılandırma dosyasından öğrenir.

Bu yapılandırmayı bir önceki yazımda belirttiğim JVM GC yapılandırması ile birlikte kullanmanızı tavsiye etmekteyim:

Bu iki yapılandırma ile birlikte 4-5 yıllık milyar’lık/tirilyon’luk datalar bulunan clusterlarda en ufak sıkıntı yaşamamaktayım.

İlk olarak YML dosyamızı açıyoruz ve içini tamamen siliyoruz:

sudo nano /etc/elasticsearch/elasticsearch.yml

İçini boşalttıktan sonra ekliyoruz:

cluster.name: Sabo
node.name: ${HOSTNAME}

cluster.routing.allocation.awareness.attributes: rack_id
indices.memory.min_index_buffer_size: 512mb
indices.memory.index_buffer_size: 20%


indices.breaker.total.use_real_memory: false
node.attr.rack_id: ${HOSTNAME}-rack_id
path.data: /var/lib/elasticsearch/
path.logs: /var/log/elasticsearch
bootstrap.memory_lock: true
network.host: _ens192_
http.port: 9200
transport.port: 9300
indices.recovery.max_bytes_per_sec: 600mb


discovery.seed_hosts: ["node1.sabahattindevrez.com","node2.sabahattindevrez.com","node3.sabahattindevrez.com"]

Bu yapılandırmayı tüm nodelara yapmayı unutmayın. Ardından nodelarımızı restartlıyoruz:

sudo systemctl restart elasticsearch.service

Şimdi tek yapmamız arama yapmanın zevkini çıkarmak 🙂

Elasticsearch Best YML Configuration anlatımımızın sonuna geldik. Bir dahakinde görüşmek üzere…