Elasticsearch ve Kibana (ELK Stack) Kurulumu

📅 29 Aralık 2025Emre Karabulut
⏱️ Yaklaşık 6 dakikalık okuma süresi

Elasticsearch ve Kibana Kurulumu: Adım Adım Rehber

Modern uygulama ve sistemlerin ürettiği büyük miktarda veriyi anlamlandırmak, sorunları hızlıca tespit etmek ve iş zekası elde etmek için güçlü araçlara ihtiyaç duyarız. Elasticsearch, bu verileri depolamak, aramak ve analiz etmek için tasarlanmış dağıtılmış bir arama ve analiz motorudur. Kibana ise Elasticsearch’te depolanan verileri görselleştirmek ve etkileşimli panolar oluşturmak için kullanılan bir web arayüzüdür. Birlikte, genellikle “ELK Stack” olarak bilinen Elastic Stack’in temelini oluştururlar.

Bu blog yazısında, bir Linux sunucusu (Ubuntu veya Debian tabanlı sistemler için uygundur) üzerine Elasticsearch ve Kibana’nın temel kurulumunu adım adım gerçekleştireceğiz. Amacımız, hızlıca çalışır durumda bir ortam oluşturarak veri analizi ve görselleştirme yolculuğunuza başlamanızı sağlamaktır.

Ön Gereksinimler

Kuruluma başlamadan önce sisteminizin güncel olduğundan ve Elasticsearch için gerekli olan Java JRE’nin kurulu olduğundan emin olmalıyız.

Sisteminizi güncelleyin:

sudo apt update && sudo apt upgrade -y

OpenJDK 17’yi kurun (önerilen sürüm):

sudo apt install openjdk-17-jre -y

Elasticsearch Kurulumu

Elasticsearch paketlerini yüklemek için Elastic’in APT deposunu eklememiz gerekiyor. Bu depo, en güncel ve kararlı sürümü almanızı sağlayacaktır.

Elasticsearch GPG anahtarını içe aktarın:

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

APT kaynak listesine Elastic deposunu ekleyin:

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

Paket listesini güncelleyin ve Elasticsearch’ü kurun:

sudo apt update
sudo apt install elasticsearch -y

Elasticsearch Yapılandırması

Elasticsearch’ün düzgün çalışması için bazı temel ayarları yapmamız gerekiyor. Yapılandırma dosyası /etc/elasticsearch/elasticsearch.yml konumundadır.

sudo nano /etc/elasticsearch/elasticsearch.yml

Aşağıdaki satırları bulun veya ekleyin (varsayılan değerlerini değiştirmeniz gerekebilir):

# Ağ ayarları (tüm arayüzlerden erişim için)
network.host: 0.0.0.0

# Başlangıçta tek düğümlü bir küme için (kendi host adınızı buraya yazın veya tek sunucu ise bu satırı kaldırabilirsiniz)
# Örneğin: cluster.initial_master_nodes: ["elk-server"]
cluster.initial_master_nodes: ["node-1"] 

# X-Pack Security'yi geçici olarak devre dışı bırakın (basit kurulum için)
xpack.security.enabled: false
xpack.security.enrollment.enabled: false
xpack.security.http.ssl.enabled: false
xpack.security.transport.ssl.enabled: false

Değişiklikleri kaydedin ve düzenleyiciden çıkın (Ctrl+O, Enter, Ctrl+X).

Heap Boyutunu Ayarlama: Elasticsearch, JVM üzerinde çalıştığı için heap boyutunun ayarlanması önemlidir. Bu ayar /etc/elasticsearch/jvm.options dosyasında yapılır. Genellikle sunucunun RAM’inin yarısı kadar (maksimum 31GB) bir değer ayarlanır. Örneğin, 8GB RAM’e sahip bir sunucuda 4GB ayarlanabilir:

sudo nano /etc/elasticsearch/jvm.options

Aşağıdaki satırları bulun ve düzenleyin:

# /etc/elasticsearch/jvm.options
-Xms4g
-Xmx4g

Sistem Ayarı (vm.max_map_count): Elasticsearch’ün dosya sisteminde mmap (memory map) kullanımını artırması için bu ayarı yapmalısınız. Aksi takdirde, düşük mmap sayısından dolayı hatalarla karşılaşabilirsiniz.

sudo sysctl -w vm.max_map_count=262144

Bu ayarın kalıcı olması için /etc/sysctl.conf dosyasına ekleyin:

echo "vm.max_map_count=262144" | sudo tee -a /etc/sysctl.conf

Elasticsearch Servisini Başlatma

Yapılandırma tamamlandıktan sonra Elasticsearch servisini başlatabilir ve sistem başlangıcında otomatik başlamasını sağlayabiliriz:

sudo systemctl daemon-reload
sudo systemctl enable elasticsearch
sudo systemctl start elasticsearch

Servisin durumunu kontrol edin:

sudo systemctl status elasticsearch

Çıktıda “active (running)” ifadesini görmeniz gerekir.

Elasticsearch Kurulumunu Test Etme

Elasticsearch’ün düzgün çalışıp çalışmadığını kontrol etmek için curl kullanabiliriz:

curl -X GET "http://localhost:9200"

Başarılı bir kurulumda, küme adı, sürüm bilgileri gibi JSON formatında bir yanıt almalısınız. Örnek bir çıktı şöyle görünecektir:

{
  "name" : "node-1",
  "cluster_name" : "elasticsearch",
  "cluster_uuid" : "...",
  "version" : {
    "number" : "8.x.x",
    "build_flavor" : "default",
    "build_type" : "deb",
    "build_hash" : "...",
    "build_date" : "...",
    "build_snapshot" : false,
    "lucene_version" : "...",
    "minimum_wire_compatibility_version" : "...",
    "minimum_index_compatibility_version" : "..."
  },
  "tagline" : "You Know, for Search"
}

Kibana Kurulumu

Kibana için de aynı GPG anahtarı ve depo kullanılır, bu yüzden Elasticsearch kurulumunda eklemiş olmanız yeterlidir.

Kibana’yı kurun:

sudo apt update
sudo apt install kibana -y

Kibana Yapılandırması

Kibana’nın Elasticsearch ile iletişim kurabilmesi ve web arayüzüne erişilebilmesi için bazı ayarlar yapılması gerekir. Yapılandırma dosyası /etc/kibana/kibana.yml konumundadır.

sudo nano /etc/kibana/kibana.yml

Aşağıdaki satırları bulun veya ekleyin:

# Kibana'nın çalışacağı port
server.port: 5601

# Kibana'nın dinleyeceği ağ arayüzü (tüm arayüzlerden erişim için)
server.host: "0.0.0.0"

# Elasticsearch sunucusunun adresi
elasticsearch.hosts: ["http://localhost:9200"]

# Eğer Elasticsearch'te güvenlik devre dışı bırakıldıysa, kullanıcı adı ve şifreye gerek yoktur.
# elasticsearch.username: "kibana_system"
# elasticsearch.password: "sifreniz"

Değişiklikleri kaydedin ve düzenleyiciden çıkın.

Kibana Servisini Başlatma

Yapılandırma tamamlandıktan sonra Kibana servisini başlatabilir ve sistem başlangıcında otomatik başlamasını sağlayabiliriz:

sudo systemctl daemon-reload
sudo systemctl enable kibana
sudo systemctl start kibana

Servisin durumunu kontrol edin:

sudo systemctl status kibana

Çıktıda “active (running)” ifadesini görmeniz gerekir.

Kibana Kurulumunu Test Etme

Bir web tarayıcısından http://SİZİN_SUNUCU_IP_ADRESİNİZ:5601 adresine giderek Kibana arayüzüne erişip erişemediğinizi kontrol edin. Kibana’nın hoş geldiniz ekranını görmeniz gerekmektedir.

Güvenlik Notu

Bu rehber, hızlı bir başlangıç için temel bir kurulumu göstermektedir. Üretim ortamlarında, Elasticsearch ve Kibana için TLS/SSL şifrelemesi, kullanıcı kimlik doğrulaması (X-Pack Security) ve ağ segmentasyonu gibi güvenlik önlemlerinin mutlaka yapılandırılması gerekmektedir. Bu ayarlar, Elastic Stack’inizi dış tehditlerden korumak için hayati öneme sahiptir.

Sonuç

Tebrikler! Elasticsearch ve Kibana’yı başarılı bir şekilde kurdunuz. Artık loglarınızı, metriklerinizi ve diğer verilerinizi toplamaya, depolamaya ve görselleştirmeye hazırsınız. Bir sonraki adım, veri kaynaklarınızı Elastic Stack’e entegre etmek olacaktır (örneğin, Filebeat, Metricbeat veya Logstash kullanarak). Bu temel kurulum, ELK Stack’in güçlü dünyasına adım atmanız için sağlam bir zemin oluşturacaktır.

Emre Karabulut
📊 Bu yazı 4 kez okundu.