Elasticsearch.yml Configuration Parameters
Elasticsearch rpm kurulumundan sonra /etc/elasticsearch dizini altında elasticsearch’e ait konfigürasyon dosyaları oluşturulur. İlgili dizinde yer alan dosyalar aşağıdaki gibidir;
- elasticsearch.yml : Elasticsearch için konfigürasyonları tutar.
- jvm.options : Elasticsearch JVM konfigürasyonlarını tutar.
- log4j2.properties : Elasticsearch logging konfigürasyonlarını tutar.
Konfigürasyon dosyalarının formatı aşağıdaki gibidir;
path.data: /var/lib/elasticsearch
path.logs: /var/log/elasticsearch
Şu şekilde de olabilir ;
path:
data: /var/lib/elasticsearch
logs: /var/log/elasticsearch
Önemli Konfigürasyon Parametreleri
Data – Log Path
Path değişkeni data ve log dosyalarının tutulacağı dizinleri belirler. $ES_HOME dizini dışında bir lokasyona set edilmesi tavsiye edilir.
path.data: /var/data/elasticsearch
path.logs: /var/log/elasticsearch
Cluster Name
Bir elastic node’u sadece 1 cluster’a ait olabilir. İlgili cluster’ın adı ise cluster.name değişkeni ile belirlenir. Aynı cluster adının farklı ortamlarda kullanılması önerilmez.
cluster.name: logging-prod
Node Name
Elasticsearch instance’ları okunabilirliği arttırabilmek için bir node name kullanır. Kurulum esnasında ilgili node adını değiştirmek için node.name değişkeni kullanılır.
node.name: prod-data-2
Network Host
Default olarak elastic kurulduğunda server üzerindeki loopback adresleri bind eder. İlgili node’a çalıştığı sunucunun IP’si bind edilmelidir. Bu değer değiştirildiğinde elasticsearch development mod’dan produciton mode’a geçiş olarak algılar bu durumu, ve system ile ilgili parametrelerin kontrolünü buna göre yapar.
network.host: 192.168.1.10
Discovery Seed Hosts
Cluster’a katılacak node’ların tam bir listesi port adresleri bu değişken ile tanımlanır. Sadece IP yazıldığında default 9300 transport portu kullanılır. Clusterdaki nodeların kendi arasındaki iletişimi bu porttan sağlanır. Elasticsearch cluster oluşturulurken nodeların birbirini bulma sürecini yöneten processtir. Bu process bir elasticsearch node’u restart olduğunda veya node’lardan biri master node’un fail olduğunu düşündüğünde master node ile iletişim kurulana yada yeni bir master node seçilene kadar çalışır. Cluster’a katılacak node’ların tam listesi discovery.seed_hosts parametresinden alınır.
discovery.seed_hosts: [“192.168.56.1:9300”, “192.168.56.1:9310”]
Cluster Initial Master Node
Bu değişken ile master node olabilecek node’ların listesi belirlenir.(Master-eligible nodes) Bu değer cluster ilk başlatıldığında cluster bootstrap işlemi sırasında kullanılır. Bu değişkene verilen değerler node.name değerleri olmalıdır.
cluster.initial_master_nodes: [“node-1”, “node-2”]
Heap Size
Elasticsearch JVM heapsize’ı default olarak otomatik yönetir. Ancak bu değer override edilebilir. /etc/elasticsearch/jvm.options dosyası içerisinde aşağıdaki gibi set edilerek heap size değiştirilebilir. Max Heap size 31gb olabilir.
# Xms represents the initial size of total heap space
# Xmx represents the maximum size of total heap space
-Xms31g
-Xmx31g
- AWS nedir? – Cloud 101 - Mayıs 16, 2024
- Vector Databases - Mayıs 15, 2024
- Data Dünyası Nereye Gidiyor? - Mayıs 8, 2024