Elasticsearch Kurulumu ve Yapılandırılması

📅 1 Ağustos 2025Emre Karabulut
⏱️ Yaklaşık 2 dakikalık okuma süresi

🔧 1. Sistem Gereksinimleri

  • En az 4 GB RAM (üretim ortamı için daha fazla önerilir)
  • Java 17 (Elastic 8.x ile birlikte gelir)
  • 64-bit işletim sistemi
  • 9200 ve 9300 portlarının açık olması

📥 2. Elasticsearch Kurulumu (Debian/Ubuntu için)

🔹 A. GPG Anahtarını ve Repo’yu Ekleyin

curl -fsSL https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo gpg --dearmor -o /usr/share/keyrings/elasticsearch-keyring.gpg

echo "deb [signed-by=/usr/share/keyrings/elasticsearch-keyring.gpg] https://artifacts.elastic.co/packages/8.x/apt stable main" | sudo tee /etc/apt/sources.list.d/elastic-8.x.list

sudo apt update

🔹 B. Elasticsearch’i Kurun

sudo apt install elasticsearch

⚙️ 3. Elasticsearch Yapılandırması

🔹 A. Yapılandırma Dosyası

/etc/elasticsearch/elasticsearch.yml dosyasını düzenleyin:

yaml# Temel Ayarlar
cluster.name: my-cluster
node.name: node-1

# Network Ayarları
network.host: 0.0.0.0
http.port: 9200

# Diğer Düğümler ile Haberleşme
discovery.seed_hosts: ["127.0.0.1"]
cluster.initial_master_nodes: ["node-1"]

Not: network.host‘u dış dünyaya açmak isterseniz 0.0.0.0 yerine özel IP’nizi belirtin.


🔐 4. Güvenlik Ayarları (HTTPS ve Kullanıcı Ekleme)

🔹 A. Elasticsearch İlk Ayar Komutu (Security ve TLS otomatik yapılandırılır)

sudo /usr/share/elasticsearch/bin/elasticsearch-reset-password -u elastic

Bu komutla elastic kullanıcı şifresini sıfırlarsın. Sunucu başlangıcında çıktıda HTTPS URL ve kullanıcı bilgileri yazacaktır.


▶️ 5. Elasticsearch Servisini Başlat ve Etkinleştir

sudo systemctl enable elasticsearch
sudo systemctl start elasticsearch

🔹 Durum Kontrolü:

curl -k -u elastic https://localhost:9200

🔍 6. Kibana (Opsiyonel) Kurulumu

Kibana, Elasticsearch verilerini görselleştirmek için kullanılır. Kurulumu:

sudo apt install kibana

Yapılandırma dosyası:

#/etc/kibana/kibana.yml
server.port: 5601
server.host: "0.0.0.0"
elasticsearch.hosts: ["https://localhost:9200"]

Başlatma:

sudo systemctl enable kibana
sudo systemctl start kibana

🧪 7. Test & Doğrulama

curl -k -u elastic https://localhost:9200/_cluster/health?pretty

📁 Örnek Elasticsearch Veri Ekleme

curl -X POST "localhost:9200/test-index/_doc/1" -H 'Content-Type: application/json' -u elastic -d'
{
"title": "Merhaba Dünya",
"kategori": "deneme"
}'

Veriyi okuma:

curl -X GET "localhost:9200/test-index/_doc/1" -u elastic
Emre Karabulut
📊 Bu yazı 38 kez okundu.