Elasticseach Nedir
Elasticsearch lucene tabanlı döküman indexleyen metin arama motorudur. Kısaca uygulamalarınız arkasında google search benzeri bir yapı kurarak dökümanları elasticsearch ile indexleyip arama işlevini bu altyapı üzerinden yapabilirsiniz.
Bu dökümanda sadece windows sunucular için kurulum işlemine deyineceğim.
Elasticsearch
Öncelikle elasticsearch ve kibana yüklemesini yapın. Ben c:\elactic dizini kullandığımdan indirilen zip dosyaları c:\elastic dizinine elasticsearch ve kibana dizinleri olarak açın.
Java sürümü kontrol edilmelidir (sürüm 1.7 yada yüksek olmalı). Bunun için
JAVA -versionkullanılır. Ayrıca JAVA_HOME çevrel değişkeni kontrol edilmeli. Bu değişken JDK dizinini göstermelidir.
SET JAVA_HOMEkomutu ile kontrol ediyoruz ve yok ise JDK yüklüyoruz yada dizini ayarlıyoruz.
Bu işlemden sonra konfigürasyonlara başlayalım. Konfigürasyonda editör kullanmamız gerekecek. Notepad++ tavsiye edilir.
Önce elasticsearch/config/elasticsearch.yml dosyasını editör ile açın.
cluster.name, node.name, bootstrap.mlockall
alanlarını ayarlayın. Örnek değerler:
cluster.name "scorpio_dev_1"
node.name node-1
bootstrap.mlockall true
İleride index dynamic mapper sorun çıkmasın diye dosya içine alttaki satırı ekliyoruz
index.mapper.dynamic: false
elasticsearch/bin klasöründen
elasticsearch.batçalıştırıyoruz ve elasticsearch'ün sorunsuz çalıştığını kontrol ediyoruz.
Kontrol için önce herhangibir tarayıcıda
http://localhost:9200/adresine gidelim aşağıdaki gibi json response almalıyız
{
"name": "node-1",
"cluster_name": "scorpio_dev_1",
"version": {
"number": "2.3.2",
"build_hash": "b9e4a6acad4008027e4038f6abed7f7dba346f94",
"build_timestamp": "2016-04-21T16:03:47Z",
"build_snapshot": false,
"lucene_version": "5.5.0"
},
"tagline": "You Know, for Search"
}
Sonra _cluster API kullanarak tarayıcıya
http://localhost:9200/_cluster/healthadresini girelim. Aşağıdaki sonucu almalıyız.
{
"cluster_name": "scorpio_dev_1",
"status": "green",
"timed_out": false,
"number_of_nodes": 1,
"number_of_data_nodes": 1,
"active_primary_shards": 0,
"active_shards": 0,
"relocating_shards": 0,
"initializing_shards": 0,
"unassigned_shards": 0,
"delayed_unassigned_shards": 0,
"number_of_pending_tasks": 0,
"number_of_in_flight_fetch": 0,
"task_max_waiting_in_queue_millis": 0,
"active_shards_percent_as_number": 100
}
KIBANA Kurulum
Siteden indirdiğimiz kibana dosyalarını C:\elastic\kibana dizinine açalım.kibana\bin içinden
kibana.batçalıştıralım. Bu aşamada 5601 portu için erişim izni ister erişim izni verelim.
Tarayıcıda
http://localhost:5601/statussayfasını açtığımızda Green yazısını göreceğiz. Bu aşamada en az bir index açmamız gerekiyor. Indexleri elasticsearch veritabanı olarak düşünebilirsiniz. Bu işlemler için önce chrome tarayıcımıza sense plugin yükleyeceğiz. Bu plugini linkten açılan sayfadan add to chrome düğmesi ile yüklersiniz. Chrome üzerine gelecek icona tıklayara sense plugini açabiliriz.
Elasticsearchten rest api çalıştırmamız gerekiyor. Basitçe bunu sense plugin ile yapabiliriz
Aşağıdaki kodu sense'in sol tarafına ekliyoruz. Index adımız testindex olsun.
PUT testindexRestApinin sonucu
{
"settings" : {
"index" : {
"number_of_shards" : 3,
"number_of_replicas" : 2
}
}
}
"acknowledged": truegelmesi lazım.
Indexi tarayıcımızdan
http://localhost:9200/testindexadresi ile kontrol edebiliriz. Dönen JSON sonucunda indeks bilgileri yeralır.
Sonrasında tarayıcıdan
http://localhost:5601/adresini açtığımızda kibana ekrana gelir. Bu aşamada indeks desenini tanımlamamız lazım testindex yada test* (ileride açacağımız diğer veritabanları varsa).
Ayrıca Index contains time-based events kapatıyoruz (örneğimizde zaman temelli event yok kabul ettik)
Create düğmesine bastığımızda kibana kurulumu tamamlamış olduk
Marvel Kurulum
Marvel linkinden uygulamayı indirelim.Öncelikle Elasticsearch açık ise kapatalım.
cmdile komut istemine geçerek
cd C:\elastic\elasticsearch\binelasticsearch bin dizinine geçelim.
Burada license plugin yüklememiz gerekiyor ve akabinde marvel-agent yüklememiz gerekiyor.
Install sırasında izin istiyor y(yes) olarak geçmemiz lazım.
plugin install license
plugin install marvel-agent
Bu işlemlerle elasticsearch, kibana ve marvel agent kurulumu tamamlamış olduk. Uygulamamızdan servis olarak bağlanarak arama motoru olarak kullanabiliriz. Oda başka bir makaleye kalsın.
Hiç yorum yok:
Yorum Gönder