Elasticsearch ve Kibana

Elasticsearch açık kaynaklı bir arama motorudur. Arka planda Apache Lucene arama motorunu çalıştırır. Apache Lucene, yüksek performanslı bir metin arama motorudur.

Elasticsearch, verileri dokümanlar (documents) kullanarak işler. Bu dokümanlar, verilerin mantıksal bir şekilde gruplandırılmasını sağlar. Elasticsearch bu dokümanlara hızlıca erişir ve verileri aranabilir hale getirir.

Elasticsearch, Logstash ve Kibana ile beraber ELK yığınının parçalarından biridir. Bir veri depolama,arama ve analiz etme platformudur.

Logstash faklı kaynaklardan gelen(kafka, veritabanı vb.) verileri alır ve uygun adrese yönlendirir.

Elasticsearch alınan verileri analiz eder, kayıtlarını tutar ve arama işlemlerini yapar.

Kibana analiz görselleştirme uygulamasıdır.

Docker Container İçinde Elasticsearch ve Kibana’yı Çalıştırma

docker-compose.yml adında bir yaml dosyası oluşturulur ve bu dosya bir klasör altına kaydedilir. Terminalden bu klasörün olduğu konuma gidilir ve docker-compose up komutu çalıştırılır. localhost:9200 ile elasticsearch’ün çalışıp çalışmadığı kontrol edilir. localhost:5601 ile kibana bağlantısı kurulur.

Docker-compose file içeriği;

version: "3.0"
services:
  elasticsearch:
    container_name: es-container
    image: docker.elastic.co/elasticsearch/elasticsearch:8.6.2
    environment:
      - xpack.security.enabled=false
      - "discovery.type=single-node"
    networks:
      - es-net
    ports:
      - 9200:9200
  kibana:
    container_name: kb-container
    image: docker.elastic.co/kibana/kibana:8.6.2
    environment:
      - ELASTICSEARCH_HOSTS=http://es-container:9200
    networks:
      - es-net
    depends_on:
      - elasticsearch
    ports:
      - 5601:5601
networks:
  es-net:
    driver: bridge