Docker Compose ile OpenSearch ve OpenSearch Dashboards Kurulumu
Merhaba,
Bu yazıda, Docker Compose kullanarak OpenSearch ve OpenSearch Dashboards’ı adım adım ayağa kaldıracağız ve kısaca inceleyeceğiz.
Haydi, başlayalım!
Docker Compose Yapılandırma Dosyasının Oluşturulması
Docker’ın sisteminizde kurulu olmasına ihtiyacımız olacak. Kurulum için linki hemen buraya bırakıyorum. https://docs.docker.com/engine/install/
İlk olarak, OpenSearch ve OpenSearch Dashboards servislerini tanımlayan bir docker-compose.yml
dosyası oluşturalım. Bu dosya, her iki servisin de nasıl başlatılacağını ve yapılandırılacağını belirler.
Aşağıya basit bir yapılandırma örneğini bırakıyorum:
version: '3'
services:
opensearch-node1:
image: opensearchproject/opensearch:latest
container_name: opensearch-node1
environment:
- cluster.name=opensearch-cluster
- node.name=opensearch-node1
- discovery.type=single-node
- bootstrap.memory_lock=true
- "OPENSEARCH_JAVA_OPTS=-Xms512m -Xmx512m"
- "DISABLE_INSTALL_DEMO_CONFIG=true"
- "DISABLE_SECURITY_PLUGIN=true"
ulimits:
memlock:
soft: -1
hard: -1
nofile:
soft: 65536
hard: 65536
volumes:
- opensearch-data:/usr/share/opensearch/data
ports:
- 9200:9200
- 9600:9600
networks:
- opensearch-net
opensearch-dashboards:
image: opensearchproject/opensearch-dashboards:latest
container_name: opensearch-dashboards
ports:
- 5601:5601
expose:
- "5601"
environment:
- 'OPENSEARCH_HOSTS=["http://opensearch-node1:9200"]'
- "DISABLE_SECURITY_DASHBOARDS_PLUGIN=true"
networks:
- opensearch-net
volumes:
opensearch-data:
networks:
opensearch-net:
Her projenin kendi ihtiyaçlarına ve gereksinimlerine göre yapılandırılması gerekir. Bu dosya, servislerin, ağların, kaynakların ve diğer Docker bileşenlerinin yapılandırılmasını sağlar ve projenin gereksinimlerine uygun olarak özelleştirilir.
Bu yapılandırma, single node bir OpenSearch ve OpenSearch Dashboards için bir kullanıcı arayüzü oluşturur.
Servislerin Başlatılması
Yapılandırma dosyanız hazır olduğunda, aşağıdaki komutu kullanarak hizmetleri başlatın:
docker-compose up -d
Bu komut, OpenSearch ve OpenSearch Dashboards container’larını arka planda başlatır.
Docker ve OpenSearch Durum Kontrolü
OpenSearch ve OpenSearch Dashboards’ın sorunsuz çalışıp çalışmadığını kontrol etmek için Docker Compose komutlarını kullanabilirsiniz. Terminal veya powershell üzerinden aşağıdaki komutları kullanarak servislerin durumunu kontrol edebilirsiniz:
docker-compose ps
Bu komut, Docker Compose ile başlatılan tüm container’ların durumunu listeler. Her bir servis için “Up” durumunda olduğunu görmelisiniz.
NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS
opensearch-dashboards opensearchproject/opensearch-dashboards:latest "./opensearch-dashbo…" opensearch-dashboards 26 minutes ago Up 26 minutes 0.0.0.0:5601->5601/tcp
opensearch-node1 opensearchproject/opensearch:latest "./opensearch-docker…" opensearch-node1 26 minutes ago Up 26 minutes 0.0.0.0:9200->9200/tcp, 9300/tcp, 0.0.0.0:9600->9600/tcp, 9650/tcp
Eğer bir hata ile karşılaşırsanız veya bir servis beklenildiği gibi çalışmıyorsa, logları inceleyerek sorunun kaynağını belirleyebilirsiniz:
docker-compose logs
Bu komut, servislerinizin log çıktılarını görüntüler, böylece hata ayıklama yapabilirsiniz.
Bu adımlarla, Docker Compose kullanarak OpenSearch ve OpenSearch Dashboards’ı başarıyla kurmuş ve temel veri işlemlerini gerçekleştirmiş olursunuz.
Farklı bir yöntem ile;
OpenSearch ve OpenSearch Dashboards’a erişmek için tarayıcınızda localhost:9200
ve localhost:5601
adresine gidin.
{
"name" : "opensearch-node1",
"cluster_name" : "opensearch-cluster",
"cluster_uuid" : "-LNwFV8BQWKIrJRnFEGV5g",
"version" : {
"distribution" : "opensearch",
"number" : "2.12.0",
"build_type" : "tar",
"build_hash" : "2c355ce1a427e4a528778d4054436b5c4b756221",
"build_date" : "2024-02-20T02:18:49.874618333Z",
"build_snapshot" : false,
"lucene_version" : "9.9.2",
"minimum_wire_compatibility_version" : "7.10.0",
"minimum_index_compatibility_version" : "7.0.0"
},
"tagline" : "The OpenSearch Project: https://opensearch.org/"
}
9200 portunda yukarıdaki json dosyasını görebiliyorsanız OpenSearch tarafında herşeyin yolunda olduğu yorumunu yapabilirsiniz.
5601 portunda da OpenSearch Dashboard’un yukarıdaki görselde olduğu gibi ayağa kalkmasını bekliyoruz.
DevTools ile İlk Adımlar
OpenSearch Dashboards’a erişmek için tarayıcınızda localhost:5601
adresine gidin. Burada, DevTools'u kullanarak veri yapılarınızı yönetebilirsiniz.
İlk adım olarak, bir index oluşturacağız. Bu index, verilerinizi saklayacağınız yapıdır. DevTools'da aşağıdaki komutu kullanarak yeni bir index oluşturabilirsiniz:
PUT /sample-index
{
"settings": {
"index": {
"number_of_shards": 1,
"number_of_replicas": 0
}
}
}
Bu komut, sample-index
adında yeni bir index oluşturur, tek bir shard ile ve replica olmadan. Tabi buradaki yapılandırma, test ve geliştirme amaçlıdır.
Ardından, OpenSearch Dashboards üzerinde, Management > Index Patterns bölümünden yeni oluşturduğunuz sample-index
için bir index pattern oluşturacağız.
Bu, Dashboards üzerinden verilerinizi sorgulayabileceğiniz yapıdır.
Veri Ekleme ve Gözlemleme
Oluşturduğunuz index’e örnek veri eklemek için, DevTools’a dönelim ve aşağıdaki komutu kullanarak veri ekleyelim:
POST /sample-index/_doc
{
"username": "ornek_kullanici",
"activity": "giris_yapti",
"created": "2023-01-01T12:00:00"
}
Bu komut, sample-index
index'ine yeni bir kayıt ekler.
Eklediğiniz verileri gözlemlemek için, OpenSearch Dashboards’ın Discover bölümüne gidin ve oluşturduğunuz index pattern’ı seçin. Burada, eklediğiniz verileri görebilir ve üzerinde çeşitli sorgular çalıştırabilirsiniz.
Bu yazımızda, Docker Compose kullanarak OpenSearch ve OpenSearch Dashboards’ı nasıl kolayca kurup yapılandıracağınızı adım adım gördük.
OpenSearch ve OpenSearch Dashboards ile çalışmaya başlarken bu yazı, temel adımları anlamanız ve uygulamanız için değerli bir kaynak olmasını umuyorum.
Sevgiler.