{"id":35830,"date":"2025-12-04T10:40:51","date_gmt":"2025-12-04T07:40:51","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/?p=35830"},"modified":"2025-12-04T10:40:51","modified_gmt":"2025-12-04T07:40:51","slug":"ubuntu-22-04-uzerine-elasticsearch-kurulumu-ve-yapilandirmasi","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/ubuntu-22-04-uzerine-elasticsearch-kurulumu-ve-yapilandirmasi\/","title":{"rendered":"Ubuntu 22.04 \u00dczerine Elasticsearch Kurulumu ve Yap\u0131land\u0131rmas\u0131"},"content":{"rendered":"<p><body><\/p>\n<h2>Ubuntu 22.04 \u00dczerine Elasticsearch Kurulumu ve Yap\u0131land\u0131rmas\u0131<\/h2>\n<p>Elasticsearch, da\u011f\u0131t\u0131lm\u0131\u015f, RESTful bir arama ve analiz motorudur. B\u00fcy\u00fck veri k\u00fcmeleri \u00fczerinde h\u0131zl\u0131 arama, analiz ve g\u00f6rselle\u015ftirme yetenekleri sunar. Log y\u00f6netimi, tam metin arama, g\u00fcvenlik analizi, i\u015f zekas\u0131 ve uygulama performans izleme gibi \u00e7e\u015fitli alanlarda yayg\u0131n olarak kullan\u0131lmaktad\u0131r. Geli\u015fmi\u015f sorgulama yetenekleri, \u00f6l\u00e7eklenebilirli\u011fi ve JSON tabanl\u0131 API&#8217;si sayesinde geli\u015ftiriciler ve sistem y\u00f6neticileri i\u00e7in vazge\u00e7ilmez bir ara\u00e7 haline gelmi\u015ftir.<\/p>\n<p>Bu kapsaml\u0131 teknik makale, Ubuntu 22.04 LTS (Uzun S\u00fcreli Destek) s\u00fcr\u00fcm\u00fc \u00fczerine Elasticsearch&#8217;\u00fcn en g\u00fcncel 8.x s\u00fcr\u00fcm\u00fcn\u00fcn nas\u0131l kurulaca\u011f\u0131n\u0131 ve temel d\u00fczeyde nas\u0131l yap\u0131land\u0131r\u0131laca\u011f\u0131n\u0131 ad\u0131m ad\u0131m a\u00e7\u0131klayacakt\u0131r. Ubuntu 22.04, kararl\u0131l\u0131\u011f\u0131 ve g\u00fcncel paket deste\u011fi nedeniyle sunucu ortamlar\u0131nda s\u0131k\u00e7a tercih edilen bir i\u015fletim sistemidir. Elasticsearch 8.x s\u00fcr\u00fcm\u00fcyle birlikte gelen g\u00fcvenlik odakl\u0131 de\u011fi\u015fikliklere \u00f6zellikle dikkat ederek, sisteminizi g\u00fcvenli ve verimli bir \u015fekilde kurman\u0131za yard\u0131mc\u0131 olaca\u011f\u0131z. Makalenin sonunda, kurulumunuzu do\u011frulayacak ve olas\u0131 sorunlara kar\u015f\u0131 \u00e7\u00f6z\u00fcm \u00f6nerileri sunaca\u011f\u0131z.<\/p>\n<h3>\u00d6n Gereksinimler<\/h3>\n<p>Elasticsearch kurulumuna ba\u015flamadan \u00f6nce a\u015fa\u011f\u0131daki \u00f6n gereksinimlerin kar\u015f\u0131land\u0131\u011f\u0131ndan emin olmal\u0131s\u0131n\u0131z:<\/p>\n<p>*   <strong>\u0130\u015fletim Sistemi:<\/strong> Ubuntu 22.04 LTS kurulu bir sunucu veya sanal makine.<br \/>\n*   <strong>Kullan\u0131c\u0131 Yetkileri:<\/strong> <code>sudo<\/code> ayr\u0131cal\u0131klar\u0131na sahip bir kullan\u0131c\u0131 hesab\u0131.<br \/>\n*   <strong>Sistem Kaynaklar\u0131:<\/strong><br \/>\n    *   <strong>RAM:<\/strong> \u00dcretim ortamlar\u0131 i\u00e7in minimum 8 GB RAM \u00f6nerilir. Test veya geli\u015ftirme ortamlar\u0131 i\u00e7in 4 GB RAM yeterli olabilir, ancak performans s\u0131n\u0131rlamalar\u0131 ya\u015fanabilir. Elasticsearch heap boyutunu belirlerken bu kritik bir fakt\u00f6rd\u00fcr.<br \/>\n    *   <strong>CPU:<\/strong> En az 2 \u00e7ekirdekli bir i\u015flemci.<br \/>\n    *   <strong>Disk Alan\u0131:<\/strong> Elasticsearch&#8217;\u00fcn verilerini depolayaca\u011f\u0131 yeterli disk alan\u0131. Disk performans\u0131, Elasticsearch performans\u0131 i\u00e7in hayati \u00f6neme sahiptir. SSD kullan\u0131m\u0131 \u015fiddetle tavsiye edilir.<br \/>\n*   <strong>A\u011f Ba\u011flant\u0131s\u0131:<\/strong> Sunucunun internete eri\u015fimi olmal\u0131d\u0131r, zira gerekli paketler ve depolar indirilecektir.<br \/>\n*   <strong>Java Geli\u015ftirme Kiti (JDK):<\/strong> Elasticsearch, \u00e7al\u0131\u015fmak i\u00e7in bir Java Sanal Makinesi (JVM) gerektirir. Elasticsearch 8.x i\u00e7in OpenJDK 17 veya daha yenisi \u00f6nerilir.<\/p>\n<p>Bu gereksinimler sa\u011fland\u0131\u011f\u0131nda, Elasticsearch kurulumuna g\u00fcvenle ba\u015flayabiliriz.<\/p>\n<h3>Sistem G\u00fcncelleme ve Gerekli Paketlerin Kurulumu<\/h3>\n<p>Kuruluma ba\u015flamadan \u00f6nce, Ubuntu sisteminizin g\u00fcncel oldu\u011fundan ve gerekli temel paketlerin y\u00fckl\u00fc oldu\u011fundan emin olmal\u0131y\u0131z.<\/p>\n<h4>Sistemi G\u00fcncelleme<\/h4>\n<p>\u0130lk olarak, paket listesini g\u00fcncelleyelim ve mevcut paketleri y\u00fckseltelim:<\/p>\n<pre><code class=\"language-bash\">sudo apt update\nsudo apt upgrade -y<\/code><\/pre>\n<p>Bu komutlar, sisteminizdeki t\u00fcm paketlerin en son s\u00fcr\u00fcmlerine g\u00fcncellenmesini sa\u011flar.<\/p>\n<h4>Java Geli\u015ftirme Kitini (JDK) Kurma<\/h4>\n<p>Elasticsearch, \u00e7al\u0131\u015fmak i\u00e7in Java&#8217;ya ihtiya\u00e7 duyar. Elasticsearch 8.x i\u00e7in OpenJDK 17 \u00f6nerilir. <code>apt-transport-https<\/code> paketi, HTTPS \u00fczerinden paket depolar\u0131na eri\u015fim i\u00e7in gereklidir.<\/p>\n<pre><code class=\"language-bash\">sudo apt install apt-transport-https openjdk-17-jdk -y<\/code><\/pre>\n<p>Kurulum tamamland\u0131ktan sonra, Java&#8217;n\u0131n do\u011fru bir \u015fekilde kurulup kurulmad\u0131\u011f\u0131n\u0131 kontrol edebilirsiniz:<\/p>\n<pre><code class=\"language-bash\">java -version<\/code><\/pre>\n<p>\u00c7\u0131kt\u0131 olarak <code>openjdk version \"17.0.x\"<\/code> benzeri bir sat\u0131r g\u00f6rmelisiniz. Bu, Java&#8217;n\u0131n ba\u015far\u0131yla kuruldu\u011funu g\u00f6sterir.<\/p>\n<h3>Elasticsearch APT Deposunu Ekleme<\/h3>\n<p>Elasticsearch&#8217;\u00fc resmi Elastic deposundan kurmak, en g\u00fcncel s\u00fcr\u00fcmleri ve g\u00fcvenlik yamalar\u0131n\u0131 alman\u0131z\u0131 sa\u011flar.<\/p>\n<h4>Elasticsearch GPG Anahtar\u0131n\u0131 \u0130\u00e7e Aktarma<\/h4>\n<p>Depodan indirilen paketlerin b\u00fct\u00fcnl\u00fc\u011f\u00fcn\u00fc do\u011frulamak i\u00e7in Elastic&#8217;in GPG anahtar\u0131n\u0131 sisteminize eklemelisiniz. <code>apt-key<\/code> komutu Ubuntu 22.04&#8217;te deprecated oldu\u011fu i\u00e7in, anahtar\u0131 <code>gpg --dearmor<\/code> ile <code>\/usr\/share\/keyrings<\/code> dizinine kaydetme y\u00f6ntemini kullanaca\u011f\u0131z:<\/p>\n<pre><code class=\"language-bash\">wget -qO - https:\/\/artifacts.elastic.co\/GPG-KEY-elasticsearch | sudo gpg --dearmor -o \/usr\/share\/keyrings\/elasticsearch-keyring.gpg<\/code><\/pre>\n<p>Bu komut, GPG anahtar\u0131n\u0131 indirir ve g\u00fcvenli bir \u015fekilde anahtar halkas\u0131na ekler.<\/p>\n<h4>Elasticsearch Deposunu Kaynak Listesine Ekleme<\/h4>\n<p>\u015eimdi, Elasticsearch 8.x paketlerini i\u00e7eren depoyu sisteminizin kaynak listesine ekleyelim:<\/p>\n<pre><code class=\"language-bash\">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<\/code><\/pre>\n<p>Bu komut, <code>elastic-8.x.list<\/code> ad\u0131nda yeni bir dosya olu\u015fturur ve Elasticsearch deposunun adresini bu dosyaya yazar. <code>signed-by<\/code> parametresi, anahtar\u0131n konumunu belirtir.<\/p>\n<p>Depoyu ekledikten sonra, sisteminizin paket \u00f6nbelle\u011fini g\u00fcncellemeniz gerekir:<\/p>\n<pre><code class=\"language-bash\">sudo apt update<\/code><\/pre>\n<p>Bu ad\u0131m, yeni eklenen depodaki paket bilgilerinin al\u0131nmas\u0131n\u0131 sa\u011flar.<\/p>\n<h3>Elasticsearch Kurulumu<\/h3>\n<p>T\u00fcm \u00f6n haz\u0131rl\u0131klar tamamland\u0131\u011f\u0131na g\u00f6re, art\u0131k Elasticsearch&#8217;\u00fc kurabiliriz.<\/p>\n<pre><code class=\"language-bash\">sudo apt install elasticsearch -y<\/code><\/pre>\n<p>Bu komut, Elasticsearch paketini ve ba\u011f\u0131ml\u0131l\u0131klar\u0131n\u0131 indirip kuracakt\u0131r. Kurulum s\u0131ras\u0131nda herhangi bir hata olu\u015fmazsa, Elasticsearch ba\u015far\u0131yla sisteminize y\u00fcklenmi\u015f demektir.<\/p>\n<h4>Elasticsearch Servisini Y\u00f6netme<\/h4>\n<p>Kurulumdan sonra, Elasticsearch varsay\u0131lan olarak otomatik ba\u015flat\u0131lacak ve \u00e7al\u0131\u015f\u0131r duruma gelecektir. Servisi manuel olarak ba\u015flatmak, durdurmak veya durumunu kontrol etmek i\u00e7in a\u015fa\u011f\u0131daki <code>systemctl<\/code> komutlar\u0131n\u0131 kullanabilirsiniz:<\/p>\n<p>*   <strong>Elasticsearch servisini ba\u015flatma:<\/strong><\/p>\n<pre><code class=\"language-bash\">sudo systemctl start elasticsearch<\/code><\/pre>\n<p>*   <strong>Elasticsearch servisini durdurma:<\/strong><\/p>\n<pre><code class=\"language-bash\">sudo systemctl stop elasticsearch<\/code><\/pre>\n<p>*   <strong>Elasticsearch servisini yeniden ba\u015flatma:<\/strong><\/p>\n<pre><code class=\"language-bash\">sudo systemctl restart elasticsearch<\/code><\/pre>\n<p>*   <strong>Elasticsearch servisinin durumunu kontrol etme:<\/strong><\/p>\n<pre><code class=\"language-bash\">sudo systemctl status elasticsearch<\/code><\/pre>\n<p>    Durum kontrol\u00fc \u00e7\u0131kt\u0131s\u0131nda <code>active (running)<\/code> ifadesini g\u00f6rmelisiniz.<br \/>\n*   <strong>Sistem ba\u015flang\u0131c\u0131nda otomatik ba\u015flatmay\u0131 etkinle\u015ftirme:<\/strong> (Bu, <code>apt install<\/code> ile otomatik olarak yap\u0131l\u0131r, ancak kontrol etmekte fayda var.)<\/p>\n<pre><code class=\"language-bash\">sudo systemctl enable elasticsearch<\/code><\/pre>\n<h3>Elasticsearch Yap\u0131land\u0131rmas\u0131<\/h3>\n<p>Elasticsearch&#8217;\u00fcn ana yap\u0131land\u0131rma dosyas\u0131 <code>\/etc\/elasticsearch\/elasticsearch.yml<\/code> konumundad\u0131r. Bu dosya, k\u00fcme ad\u0131, d\u00fc\u011f\u00fcm ad\u0131, a\u011f ayarlar\u0131, veri ve log yollar\u0131 gibi bir\u00e7ok \u00f6nemli ayar\u0131 i\u00e7erir. Elasticsearch 8.x ile birlikte g\u00fcvenlik varsay\u0131lan olarak etkinle\u015ftirilmi\u015ftir, bu da yap\u0131land\u0131rma s\u00fcrecini biraz farkl\u0131la\u015ft\u0131r\u0131r.<\/p>\n<h4>Yap\u0131land\u0131rma Dosyas\u0131 Konumu<\/h4>\n<p>Ana yap\u0131land\u0131rma dosyas\u0131:<\/p>\n<pre><code class=\"language-\">\/etc\/elasticsearch\/elasticsearch.yml<\/code><\/pre>\n<p>JVM se\u00e7enekleri dosyas\u0131 (heap boyutu gibi):<\/p>\n<pre><code class=\"language-\">\/etc\/elasticsearch\/jvm.options<\/code><\/pre>\n<h4>Temel Yap\u0131land\u0131rmalar<\/h4>\n<p>Yap\u0131land\u0131rma dosyas\u0131n\u0131 d\u00fczenlemek i\u00e7in bir metin d\u00fczenleyici kullan\u0131n (\u00f6rne\u011fin, <code>nano<\/code>):<\/p>\n<pre><code class=\"language-bash\">sudo nano \/etc\/elasticsearch\/elasticsearch.yml<\/code><\/pre>\n<p>A\u015fa\u011f\u0131daki temel ayarlar\u0131 g\u00f6zden ge\u00e7irelim ve gerekti\u011finde de\u011fi\u015ftirelim:<\/p>\n<p>*   <strong><code>cluster.name<\/code>:<\/strong> Elasticsearch k\u00fcmenizin ad\u0131. Ayn\u0131 k\u00fcmede yer alan t\u00fcm d\u00fc\u011f\u00fcmlerin ayn\u0131 k\u00fcme ad\u0131na sahip olmas\u0131 gerekir. Geli\u015ftirme ortam\u0131nda varsay\u0131lan olarak b\u0131rak\u0131labilir, ancak \u00fcretimde benzersiz bir ad vermeniz \u00f6nerilir.<\/p>\n<pre><code class=\"language-yaml\">cluster.name: my-elastic-cluster<\/code><\/pre>\n<p>*   <strong><code>node.name<\/code>:<\/strong> Bu d\u00fc\u011f\u00fcm\u00fcn ad\u0131. Her d\u00fc\u011f\u00fcm i\u00e7in benzersiz olmal\u0131d\u0131r.<\/p>\n<pre><code class=\"language-yaml\">node.name: node-1<\/code><\/pre>\n<p>*   <strong><code>path.data<\/code>:<\/strong> Elasticsearch verilerinin depolanaca\u011f\u0131 dizin. Varsay\u0131lan olarak <code>\/var\/lib\/elasticsearch<\/code>&#8216;tur. Y\u00fcksek performansl\u0131 bir diskte olmas\u0131 tavsiye edilir.<\/p>\n<pre><code class=\"language-yaml\">path.data: \/var\/lib\/elasticsearch<\/code><\/pre>\n<p>*   <strong><code>path.logs<\/code>:<\/strong> Elasticsearch loglar\u0131n\u0131n depolanaca\u011f\u0131 dizin. Varsay\u0131lan olarak <code>\/var\/log\/elasticsearch<\/code>&#8216;tur.<\/p>\n<pre><code class=\"language-yaml\">path.logs: \/var\/log\/elasticsearch<\/code><\/pre>\n<p>*   <strong><code>network.host<\/code>:<\/strong> Elasticsearch&#8217;\u00fcn hangi a\u011f aray\u00fczlerinden gelen ba\u011flant\u0131lar\u0131 dinleyece\u011fini belirler.<br \/>\n    *   <code>localhost<\/code> veya <code>127.0.0.1<\/code>: Sadece yerel makineden eri\u015filebilir.<br \/>\n    *   <code>0.0.0.0<\/code>: T\u00fcm a\u011f aray\u00fczlerinden eri\u015filebilir (dikkatli kullan\u0131lmal\u0131, g\u00fcvenlik duvar\u0131 ile korunmal\u0131).<br \/>\n    *   Belirli bir IP adresi: Sadece o IP adresinden eri\u015filebilir.<\/p>\n<pre><code class=\"language-yaml\">network.host: 0.0.0.0 # veya sunucunuzun IP adresi<\/code><\/pre>\n<p>    <strong>\u00d6NEML\u0130:<\/strong> <code>network.host<\/code> de\u011ferini <code>0.0.0.0<\/code> olarak ayarlarsan\u0131z, Elasticsearch&#8217;e d\u0131\u015far\u0131dan eri\u015fim sa\u011flanaca\u011f\u0131n\u0131 unutmay\u0131n. Bu durumda g\u00fcvenlik duvar\u0131n\u0131z\u0131 do\u011fru \u015fekilde yap\u0131land\u0131rman\u0131z kritik \u00f6neme sahiptir.<br \/>\n*   <strong><code>http.port<\/code>:<\/strong> Elasticsearch&#8217;\u00fcn HTTP API&#8217;si i\u00e7in dinleyece\u011fi port. Varsay\u0131lan 9200&#8217;d\u00fcr.<\/p>\n<pre><code class=\"language-yaml\">http.port: 9200<\/code><\/pre>\n<p>*   <strong><code>discovery.type<\/code>:<\/strong> Tek d\u00fc\u011f\u00fcml\u00fc bir kurulum yap\u0131yorsan\u0131z, k\u00fcme ke\u015fif mekanizmas\u0131n\u0131 <code>single-node<\/code> olarak ayarlaman\u0131z gerekir. Bu, \u00fcretimde birden fazla d\u00fc\u011f\u00fcm i\u00e7in ge\u00e7erli de\u011fildir.<\/p>\n<pre><code class=\"language-yaml\">discovery.type: single-node<\/code><\/pre>\n<p>    Bu ayar genellikle Elasticsearch&#8217;\u00fcn ilk kurulumunda otomatik olarak ayarlan\u0131r, ancak kontrol etmekte fayda var.<\/p>\n<p>De\u011fi\u015fiklikleri kaydettikten sonra (Nano&#8217;da <code>Ctrl+O<\/code>, <code>Enter<\/code>, <code>Ctrl+X<\/code>), Elasticsearch servisini yeniden ba\u015flatman\u0131z gerekir:<\/p>\n<pre><code class=\"language-bash\">sudo systemctl restart elasticsearch<\/code><\/pre>\n<h4>Elasticsearch 8.x G\u00fcvenlik Yap\u0131land\u0131rmas\u0131<\/h4>\n<p>Elasticsearch 8.x ile birlikte g\u00fcvenlik (TLS\/SSL ve kimlik do\u011frulama) varsay\u0131lan olarak etkinle\u015ftirilmi\u015ftir. Bu, ilk kurulumda otomatik olarak bir dizi g\u00fcvenlik ayar\u0131 ve s\u00fcreci devreye sokar.<\/p>\n<p>Kurulumdan sonra, Elasticsearch size a\u015fa\u011f\u0131daki gibi \u00f6nemli bilgiler i\u00e7eren bir \u00e7\u0131kt\u0131 verebilir (veya loglarda bulabilirsiniz):<br \/>\n*   <code>elastic<\/code> kullan\u0131c\u0131s\u0131n\u0131n otomatik olu\u015fturulan parolas\u0131.<br \/>\n*   Kibana&#8217;y\u0131 Elasticsearch&#8217;e ba\u011flamak i\u00e7in kullan\u0131lacak bir enrollment token.<br \/>\n*   Ba\u015fka d\u00fc\u011f\u00fcmleri k\u00fcmeye eklemek i\u00e7in kullan\u0131lacak enrollment token&#8217;lar.<\/p>\n<p><strong>Bu bilgileri kesinlikle kaydetmeli ve g\u00fcvenli bir yerde saklamal\u0131s\u0131n\u0131z!<\/strong> E\u011fer ka\u00e7\u0131rd\u0131ysan\u0131z, a\u015fa\u011f\u0131daki komutlarla parolalar\u0131 s\u0131f\u0131rlayabilir ve tokenlar\u0131 yeniden olu\u015fturabilirsiniz.<\/p>\n<p><strong>1. <code>elastic<\/code> Kullan\u0131c\u0131s\u0131 i\u00e7in Parola Ayarlama\/S\u0131f\u0131rlama:<\/strong><br \/>\nElasticsearch, <code>elastic<\/code> ad\u0131nda s\u00fcper kullan\u0131c\u0131 yetkilerine sahip bir kullan\u0131c\u0131 olu\u015fturur. Kurulum s\u0131ras\u0131nda otomatik bir parola atan\u0131r. Bu parolay\u0131 de\u011fi\u015ftirmek veya ilk kez ayarlamak i\u00e7in a\u015fa\u011f\u0131daki interaktif komutu kullanabilirsiniz:<\/p>\n<pre><code class=\"language-bash\">sudo \/usr\/share\/elasticsearch\/bin\/elasticsearch-setup-passwords interactive<\/code><\/pre>\n<p>Bu komut, <code>elastic<\/code>, <code>kibana_system<\/code>, <code>logstash_system<\/code>, <code>beats_system<\/code>, <code>remote_monitoring_user<\/code> gibi yerle\u015fik kullan\u0131c\u0131lar i\u00e7in parola ayarlaman\u0131z\u0131 isteyecektir. G\u00fc\u00e7l\u00fc parolalar belirlemeye \u00f6zen g\u00f6sterin.<\/p>\n<p><strong>2. Enrollment Token Olu\u015fturma (Kibana veya Di\u011fer D\u00fc\u011f\u00fcmler \u0130\u00e7in):<\/strong><br \/>\nE\u011fer Kibana&#8217;y\u0131 kurup Elasticsearch&#8217;e ba\u011flayacaksan\u0131z veya k\u00fcmeye ba\u015fka d\u00fc\u011f\u00fcmler ekleyecekseniz, enrollment tokenlara ihtiyac\u0131n\u0131z olacakt\u0131r.<\/p>\n<p>*   <strong>Kibana i\u00e7in enrollment token olu\u015fturma:<\/strong><\/p>\n<pre><code class=\"language-bash\">sudo \/usr\/share\/elasticsearch\/bin\/elasticsearch-create-enrollment-token -s kibana<\/code><\/pre>\n<p>    Bu komut, Kibana&#8217;n\u0131n Elasticsearch&#8217;e g\u00fcvenli bir \u015fekilde ba\u011flanmas\u0131 i\u00e7in kullan\u0131lacak bir token \u00fcretecektir. \u00c7\u0131kt\u0131daki token&#8217;\u0131 kopyalay\u0131n.<\/p>\n<p>*   <strong>Yeni bir Elasticsearch d\u00fc\u011f\u00fcm\u00fc i\u00e7in enrollment token olu\u015fturma:<\/strong><\/p>\n<pre><code class=\"language-bash\">sudo \/usr\/share\/elasticsearch\/bin\/elasticsearch-create-enrollment-token -s node<\/code><\/pre>\n<p>    Bu token, yeni bir d\u00fc\u011f\u00fcm\u00fcn mevcut k\u00fcmeye kat\u0131lmas\u0131 i\u00e7in kullan\u0131l\u0131r.<\/p>\n<p><strong>3. Sertifikalar:<\/strong><br \/>\nElasticsearch 8.x, TLS\/SSL sertifikalar\u0131n\u0131 da otomatik olarak olu\u015fturur ve kullan\u0131r. Bu sertifikalar <code>\/etc\/elasticsearch\/certs<\/code> dizininde bulunur. \u00d6zellikle <code>http_ca.crt<\/code> dosyas\u0131, Elasticsearch ile g\u00fcvenli ba\u011flant\u0131 kurarken (\u00f6rne\u011fin <code>curl<\/code> veya Kibana \u00fczerinden) g\u00fcvenilen CA sertifikas\u0131 olarak kullan\u0131labilir.<\/p>\n<h4>JVM Ayarlar\u0131 (Heap Boyutu)<\/h4>\n<p>Elasticsearch&#8217;\u00fcn performans\u0131n\u0131n \u00f6nemli bir k\u0131sm\u0131, JVM&#8217;e ayr\u0131lan heap belle\u011fiyle (RAM) ili\u015fkilidir. Heap boyutu, <code>\/etc\/elasticsearch\/jvm.options<\/code> dosyas\u0131nda yap\u0131land\u0131r\u0131l\u0131r.<\/p>\n<pre><code class=\"language-bash\">sudo nano \/etc\/elasticsearch\/jvm.options<\/code><\/pre>\n<p>A\u015fa\u011f\u0131daki sat\u0131rlar\u0131 bulmal\u0131s\u0131n\u0131z:<\/p>\n<pre><code class=\"language-\">-Xms4g\n-Xmx4g<\/code><\/pre>\n<p>*   <code>-Xms<\/code>: Ba\u015flang\u0131\u00e7 heap boyutu.<br \/>\n*   <code>-Xmx<\/code>: Maksimum heap boyutu.<\/p>\n<p>Bu iki de\u011fer genellikle ayn\u0131 ayarlan\u0131r. Kural olarak, sunucunuzdaki toplam RAM&#8217;in yar\u0131s\u0131 kadar, ancak 30.5 GB&#8217;\u0131 ge\u00e7meyecek \u015fekilde bir de\u011fer belirlemelisiniz. \u00d6rne\u011fin, 8 GB RAM&#8217;e sahip bir sunucu i\u00e7in 4 GB uygun bir de\u011ferdir. E\u011fer 16 GB RAM&#8217;iniz varsa, 8 GB ay\u0131rabilirsiniz. E\u011fer 64 GB RAM&#8217;iniz varsa, 30.5 GB ay\u0131rman\u0131z \u00f6nerilir (JVM Garbage Collector&#8217;\u0131n verimli \u00e7al\u0131\u015fmas\u0131 i\u00e7in).<\/p>\n<p>De\u011fi\u015fiklikleri kaydettikten sonra Elasticsearch servisini yeniden ba\u015flatmay\u0131 unutmay\u0131n.<\/p>\n<h4>Swapping&#8217;i Devre D\u0131\u015f\u0131 B\u0131rakma<\/h4>\n<p>Elasticsearch, diskte swap alan\u0131 kullanmaktan ho\u015flanmaz, \u00e7\u00fcnk\u00fc bu durum performans\u0131 ciddi \u015fekilde d\u00fc\u015f\u00fcr\u00fcr. Swapping&#8217;i tamamen devre d\u0131\u015f\u0131 b\u0131rakmak veya minimuma indirmek \u00f6nemlidir.<\/p>\n<p>Ge\u00e7ici olarak swap&#8217;\u0131 kapatmak i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">sudo swapoff -a<\/code><\/pre>\n<p>Kal\u0131c\u0131 olarak swap kullan\u0131m\u0131n\u0131 azaltmak i\u00e7in <code>\/etc\/sysctl.conf<\/code> dosyas\u0131n\u0131 d\u00fczenleyin:<\/p>\n<pre><code class=\"language-bash\">sudo nano \/etc\/sysctl.conf<\/code><\/pre>\n<p>Dosyan\u0131n sonuna a\u015fa\u011f\u0131daki sat\u0131r\u0131 ekleyin:<\/p>\n<pre><code class=\"language-\">vm.swappiness=1<\/code><\/pre>\n<p>De\u011fi\u015fiklikleri uygulamak i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">sudo sysctl -p<\/code><\/pre>\n<p>Bu ayar, \u00e7ekirde\u011fe swap alan\u0131n\u0131 kullanma e\u011filimini minimuma indirmesini s\u00f6yler.<\/p>\n<h4>Dosya Tan\u0131mlay\u0131c\u0131 Limitlerini Art\u0131rma<\/h4>\n<p>Elasticsearch, \u00e7ok say\u0131da dosya tan\u0131mlay\u0131c\u0131ya (file descriptors) ihtiya\u00e7 duyar. Varsay\u0131lan limitler genellikle yetersizdir. Bu limitleri art\u0131rmak i\u00e7in <code>\/etc\/security\/limits.conf<\/code> dosyas\u0131n\u0131 d\u00fczenlemelisiniz:<\/p>\n<pre><code class=\"language-bash\">sudo nano \/etc\/security\/limits.conf<\/code><\/pre>\n<p>Dosyan\u0131n sonuna a\u015fa\u011f\u0131daki sat\u0131rlar\u0131 ekleyin:<\/p>\n<pre><code class=\"language-\">elasticsearch - nofile 65536\nelasticsearch - memlock unlimited<\/code><\/pre>\n<p>*   <code>nofile 65536<\/code>: Elasticsearch kullan\u0131c\u0131s\u0131 i\u00e7in a\u00e7\u0131labilir dosya say\u0131s\u0131n\u0131 65536&#8217;ya y\u00fckseltir.<br \/>\n*   <code>memlock unlimited<\/code>: Elasticsearch&#8217;\u00fcn belle\u011fi kilitlemesine izin verir, b\u00f6ylece JVM heap&#8217;i swap&#8217;e yaz\u0131lamaz. Bu <code>mlockall<\/code> ayar\u0131 i\u00e7in gereklidir ve <code>elasticsearch.yml<\/code> dosyas\u0131nda <code>bootstrap.memory_lock: true<\/code> olarak ayarlan\u0131r (varsay\u0131lan olarak yorum sat\u0131r\u0131 halindedir). G\u00fcvenlik a\u00e7\u0131s\u0131ndan bu ayar\u0131 etkinle\u015ftirmek faydal\u0131 olabilir, ancak \u00f6nce <code>memlock unlimited<\/code> ayar\u0131n\u0131 yapmal\u0131s\u0131n\u0131z.<\/p>\n<p>Bu de\u011fi\u015fikliklerin etkili olmas\u0131 i\u00e7in oturumu kapat\u0131p tekrar a\u00e7man\u0131z veya sunucuyu yeniden ba\u015flatman\u0131z gerekebilir.<\/p>\n<h3>G\u00fcvenlik Duvar\u0131 Yap\u0131land\u0131rmas\u0131 (UFW)<\/h3>\n<p>E\u011fer sunucunuzda UFW (Uncomplicated Firewall) etkinse, Elasticsearch&#8217;e d\u0131\u015far\u0131dan eri\u015fime izin vermek i\u00e7in ilgili portlar\u0131 a\u00e7man\u0131z gerekir.<\/p>\n<p>*   <strong>Elasticsearch HTTP Portu (9200):<\/strong><\/p>\n<pre><code class=\"language-bash\">sudo ufw allow 9200\/tcp<\/code><\/pre>\n<p>*   <strong>Elasticsearch Transport Portu (9300):<\/strong> Bu port, k\u00fcme i\u00e7indeki d\u00fc\u011f\u00fcmlerin birbirleriyle ileti\u015fim kurmas\u0131 i\u00e7in kullan\u0131l\u0131r. Tek d\u00fc\u011f\u00fcml\u00fc kurulumlarda d\u0131\u015far\u0131dan eri\u015fime kapal\u0131 olabilir, ancak birden fazla d\u00fc\u011f\u00fcm\u00fcn\u00fcz varsa veya gelecekte ekleyecekseniz a\u00e7man\u0131z gerekir.<\/p>\n<pre><code class=\"language-bash\">sudo ufw allow 9300\/tcp<\/code><\/pre>\n<p>*   <strong>Kibana Portu (5601 &#8211; \u0130leride kuracaksan\u0131z):<\/strong><\/p>\n<pre><code class=\"language-bash\">sudo ufw allow 5601\/tcp<\/code><\/pre>\n<p>*   <strong>G\u00fcvenlik duvar\u0131n\u0131 etkinle\u015ftirme (e\u011fer etkin de\u011filse):<\/strong><\/p>\n<pre><code class=\"language-bash\">sudo ufw enable<\/code><\/pre>\n<p>*   <strong>G\u00fcvenlik duvar\u0131 durumunu kontrol etme:<\/strong><\/p>\n<pre><code class=\"language-bash\">sudo ufw status<\/code><\/pre>\n<p>    \u00c7\u0131kt\u0131da 9200 ve 9300 portlar\u0131n\u0131n (veya a\u00e7t\u0131\u011f\u0131n\u0131z di\u011fer portlar\u0131n) izinli oldu\u011funu g\u00f6rmelisiniz.<\/p>\n<h3>Elasticsearch&#8217;\u00fc Test Etme<\/h3>\n<p>T\u00fcm yap\u0131land\u0131rmalar tamamland\u0131ktan sonra, Elasticsearch&#8217;\u00fcn d\u00fczg\u00fcn \u00e7al\u0131\u015f\u0131p \u00e7al\u0131\u015fmad\u0131\u011f\u0131n\u0131 kontrol edebiliriz. Elasticsearch 8.x varsay\u0131lan olarak HTTPS ve kimlik do\u011frulama kulland\u0131\u011f\u0131 i\u00e7in test komutumuz buna uygun olmal\u0131d\u0131r.<\/p>\n<p>Bir terminalden <code>curl<\/code> komutu ile test edelim:<\/p>\n<pre><code class=\"language-bash\">curl --cacert \/etc\/elasticsearch\/certs\/http_ca.crt -u elastic:<elastic_kullanici_parolasi> https:\/\/localhost:9200<\/code><\/pre>\n<p>*   <code>--cacert \/etc\/elasticsearch\/certs\/http_ca.crt<\/code>: Elasticsearch&#8217;\u00fcn otomatik olu\u015fturdu\u011fu CA sertifikas\u0131n\u0131 belirtiriz. Bu, <code>curl<\/code>&#8216;\u0131n sunucunun kimli\u011fini do\u011frulamas\u0131na yard\u0131mc\u0131 olur.<br \/>\n*   <code>-u elastic:<elastic_kullanici_parolasi><\/code>: <code>elastic<\/code> kullan\u0131c\u0131s\u0131 ve belirledi\u011finiz parolay\u0131 kullanarak kimlik do\u011frulamas\u0131 yapar.<br \/>\n*   <code>https:\/\/localhost:9200<\/code>: Elasticsearch&#8217;\u00fcn HTTP API&#8217;sine HTTPS \u00fczerinden ba\u011flan\u0131r.<\/p>\n<p>E\u011fer her \u015fey yolundaysa, Elasticsearch d\u00fc\u011f\u00fcm\u00fcn\u00fcn durumu, s\u00fcr\u00fcm\u00fc ve di\u011fer bilgileri i\u00e7eren bir JSON \u00e7\u0131kt\u0131s\u0131 almal\u0131s\u0131n\u0131z. \u00c7\u0131kt\u0131da <code>cluster_name<\/code>, <code>cluster_uuid<\/code>, <code>version<\/code> gibi alanlar\u0131 g\u00f6rmeniz, Elasticsearch&#8217;\u00fcn ba\u015far\u0131yla \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131 g\u00f6sterir.<\/p>\n<pre><code class=\"language-json\">{\n  \"name\" : \"node-1\",\n  \"cluster_name\" : \"my-elastic-cluster\",\n  \"cluster_uuid\" : \"...\",\n  \"version\" : {\n    \"number\" : \"8.x.x\",\n    \"build_flavor\" : \"default\",\n    \"build_type\" : \"deb\",\n    \"build_hash\" : \"...\",\n    \"build_date\" : \"...\",\n    \"build_snapshot\" : false,\n    \"lucene_version\" : \"...\",\n    \"minimum_wire_compatibility_version\" : \"...\",\n    \"minimum_index_compatibility_version\" : \"...\"\n  },\n  \"tagline\" : \"You Know, for Search\"\n}<\/code><\/pre>\n<p>Bu \u00e7\u0131kt\u0131y\u0131 al\u0131yorsan\u0131z, tebrikler! Elasticsearch sunucunuz ba\u015far\u0131yla kurulmu\u015f ve yap\u0131land\u0131r\u0131lm\u0131\u015ft\u0131r.<\/p>\n<h3>Kibana Kurulumu (\u0130ste\u011fe Ba\u011fl\u0131 ama \u015eiddetle Tavsiye Edilir)<\/h3>\n<p>Kibana, Elasticsearch verilerini g\u00f6rselle\u015ftirmek, y\u00f6netmek ve analiz etmek i\u00e7in kullan\u0131lan a\u00e7\u0131k kaynakl\u0131 bir kullan\u0131c\u0131 aray\u00fcz\u00fcd\u00fcr. Elasticsearch Stack&#8217;in \u00f6nemli bir par\u00e7as\u0131d\u0131r ve kurulumu olduk\u00e7a kolayd\u0131r.<\/p>\n<h4>Kibana Kurulumu<\/h4>\n<p>Daha \u00f6nce Elasticsearch deposunu ekledi\u011fimiz i\u00e7in Kibana&#8217;y\u0131 da ayn\u0131 depodan kolayca kurabiliriz:<\/p>\n<pre><code class=\"language-bash\">sudo apt install kibana -y<\/code><\/pre>\n<p>Kurulum tamamland\u0131ktan sonra, Kibana servisini etkinle\u015ftirip ba\u015flatal\u0131m:<\/p>\n<pre><code class=\"language-bash\">sudo systemctl enable kibana\nsudo systemctl start kibana<\/code><\/pre>\n<p>Kibana servisinin durumunu kontrol edelim:<\/p>\n<pre><code class=\"language-bash\">sudo systemctl status kibana<\/code><\/pre>\n<p><code>active (running)<\/code> \u00e7\u0131kt\u0131s\u0131n\u0131 g\u00f6rmelisiniz.<\/p>\n<h4>Kibana Yap\u0131land\u0131rmas\u0131<\/h4>\n<p>Kibana&#8217;n\u0131n ana yap\u0131land\u0131rma dosyas\u0131 <code>\/etc\/kibana\/kibana.yml<\/code> konumundad\u0131r.<\/p>\n<pre><code class=\"language-bash\">sudo nano \/etc\/kibana\/kibana.yml<\/code><\/pre>\n<p>A\u015fa\u011f\u0131daki temel ayarlar\u0131 g\u00f6zden ge\u00e7irelim:<\/p>\n<p>*   <strong><code>server.port<\/code>:<\/strong> Kibana&#8217;n\u0131n dinleyece\u011fi port. Varsay\u0131lan 5601&#8217;dir.<\/p>\n<pre><code class=\"language-yaml\">server.port: 5601<\/code><\/pre>\n<p>*   <strong><code>server.host<\/code>:<\/strong> Kibana&#8217;n\u0131n hangi a\u011f aray\u00fczlerinden gelen ba\u011flant\u0131lar\u0131 dinleyece\u011fini belirler. D\u0131\u015far\u0131dan eri\u015filebilir olmas\u0131 i\u00e7in <code>0.0.0.0<\/code> olarak ayarlay\u0131n.<\/p>\n<pre><code class=\"language-yaml\">server.host: \"0.0.0.0\"<\/code><\/pre>\n<p>*   <strong><code>elasticsearch.hosts<\/code>:<\/strong> Kibana&#8217;n\u0131n ba\u011flanaca\u011f\u0131 Elasticsearch \u00f6rne\u011finin adresi. Elasticsearch 8.x&#8217;te HTTPS kulland\u0131\u011f\u0131 i\u00e7in <code>https:\/\/<\/code> ile ba\u015flamal\u0131d\u0131r.<\/p>\n<pre><code class=\"language-yaml\">elasticsearch.hosts: [\"https:\/\/localhost:9200\"]<\/code><\/pre>\n<p>*   <strong>Elasticsearch 8.x ile G\u00fcvenli Ba\u011flant\u0131:<\/strong><br \/>\n    Kibana&#8217;n\u0131n Elasticsearch 8.x&#8217;e g\u00fcvenli bir \u015fekilde ba\u011flanmas\u0131 i\u00e7in, <code>elasticsearch.username<\/code> ve <code>elasticsearch.password<\/code> yerine genellikle bir enrollment token kullan\u0131l\u0131r. Ancak, bu ayarlar da kullan\u0131labilir.<\/p>\n<p>    E\u011fer Kibana&#8217;y\u0131 ilk kez \u00e7al\u0131\u015ft\u0131r\u0131yorsan\u0131z ve <code>elasticsearch-create-enrollment-token -s kibana<\/code> ile bir token olu\u015fturduysan\u0131z, Kibana aray\u00fcz\u00fcne ilk eri\u015fti\u011finizde bu token&#8217;\u0131 girmeniz istenir.<\/p>\n<p>    Kibana, Elasticsearch ile g\u00fcvenli bir \u015fekilde ileti\u015fim kurmak i\u00e7in Elasticsearch&#8217;\u00fcn CA sertifikas\u0131n\u0131 kullanmal\u0131d\u0131r. Varsay\u0131lan kurulumda bu otomatik olarak y\u00f6netilir. E\u011fer sorun ya\u015farsan\u0131z, <code>elasticsearch.ssl.certificateAuthorities<\/code> ayar\u0131n\u0131 <code>\/etc\/elasticsearch\/certs\/http_ca.crt<\/code> olarak belirtebilirsiniz.<\/p>\n<p>Yap\u0131land\u0131rma dosyas\u0131ndaki de\u011fi\u015fiklikleri kaydettikten sonra Kibana servisini yeniden ba\u015flat\u0131n:<\/p>\n<pre><code class=\"language-bash\">sudo systemctl restart kibana<\/code><\/pre>\n<h4>Kibana i\u00e7in G\u00fcvenlik Duvar\u0131 Yap\u0131land\u0131rmas\u0131<\/h4>\n<p>E\u011fer UFW kullan\u0131yorsan\u0131z, Kibana&#8217;ya d\u0131\u015far\u0131dan eri\u015fime izin vermek i\u00e7in 5601 portunu a\u00e7man\u0131z gerekir:<\/p>\n<pre><code class=\"language-bash\">sudo ufw allow 5601\/tcp<\/code><\/pre>\n<h4>Kibana&#8217;ya Taray\u0131c\u0131dan Eri\u015fim<\/h4>\n<p>Art\u0131k bir web taray\u0131c\u0131s\u0131 a\u00e7\u0131p sunucunuzun IP adresini ve Kibana portunu kullanarak eri\u015febilirsiniz:<\/p>\n<pre><code class=\"language-\">http:\/\/<sunucu_ip_adresi>:5601<\/code><\/pre>\n<p>\u0130lk eri\u015fimde, Kibana sizden bir enrollment token isteyecektir. Elasticsearch sunucusunda olu\u015fturdu\u011funuz Kibana enrollment token&#8217;\u0131n\u0131 buraya yap\u0131\u015ft\u0131r\u0131n ve devam edin. Ard\u0131ndan, <code>elastic<\/code> kullan\u0131c\u0131s\u0131n\u0131n parolas\u0131n\u0131 girmeniz istenecektir. Ba\u015far\u0131l\u0131 bir \u015fekilde giri\u015f yapt\u0131ktan sonra Kibana kontrol paneline eri\u015feceksiniz.<\/p>\n<h3>S\u0131k Kar\u015f\u0131la\u015f\u0131lan Sorunlar ve \u00c7\u00f6z\u00fcmleri<\/h3>\n<p>Kurulum ve yap\u0131land\u0131rma s\u0131ras\u0131nda kar\u015f\u0131la\u015fabilece\u011finiz baz\u0131 yayg\u0131n sorunlar ve \u00e7\u00f6z\u00fcmleri a\u015fa\u011f\u0131da listelenmi\u015ftir:<\/p>\n<p>*   <strong>Elasticsearch Ba\u015flam\u0131yor (Heap Size Hatas\u0131):<\/strong><br \/>\n    *   <strong>Belirti:<\/strong> <code>sudo systemctl status elasticsearch<\/code> komutu <code>failed<\/code> durumunu g\u00f6sterir ve loglarda <code>OutOfMemoryError<\/code> veya <code>max virtual memory areas vm.max_map_count [65530] is too low<\/code> gibi hatalar g\u00f6r\u00fcrs\u00fcn\u00fcz.<br \/>\n    *   <strong>\u00c7\u00f6z\u00fcm:<\/strong> <code>\/etc\/elasticsearch\/jvm.options<\/code> dosyas\u0131ndaki <code>-Xms<\/code> ve <code>-Xmx<\/code> de\u011ferlerini sunucunuzun RAM&#8217;inin yar\u0131s\u0131 olacak \u015fekilde ayarlay\u0131n (maksimum 30.5 GB). Ayr\u0131ca, <code>vm.max_map_count<\/code> hatas\u0131 i\u00e7in <code>sudo sysctl -w vm.max_map_count=262144<\/code> komutunu \u00e7al\u0131\u015ft\u0131r\u0131n ve kal\u0131c\u0131 hale getirmek i\u00e7in <code>\/etc\/sysctl.conf<\/code> dosyas\u0131na <code>vm.max_map_count=262144<\/code> ekleyin.<\/p>\n<p>*   <strong>A\u011f Ba\u011flant\u0131 Sorunlar\u0131 \/ D\u0131\u015far\u0131dan Eri\u015filemiyor:<\/strong><br \/>\n    *   <strong>Belirti:<\/strong> <code>curl<\/code> veya taray\u0131c\u0131 ile eri\u015fmeye \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131zda ba\u011flant\u0131 reddediliyor veya zaman a\u015f\u0131m\u0131na u\u011fruyor.<br \/>\n    *   <strong>\u00c7\u00f6z\u00fcm:<\/strong><br \/>\n        *   <code>\/etc\/elasticsearch\/elasticsearch.yml<\/code> dosyas\u0131ndaki <code>network.host<\/code> ayar\u0131n\u0131 kontrol edin. D\u0131\u015far\u0131dan eri\u015fim i\u00e7in <code>0.0.0.0<\/code> veya sunucunuzun d\u0131\u015f IP adresini kullan\u0131n.<br \/>\n        *   G\u00fcvenlik duvar\u0131 (UFW) ayarlar\u0131n\u0131 kontrol edin. <code>sudo ufw status<\/code> komutu ile 9200 (Elasticsearch) ve 5601 (Kibana) portlar\u0131n\u0131n a\u00e7\u0131k oldu\u011fundan emin olun.<\/p>\n<p>*   <strong>Elasticsearch 8.x G\u00fcvenlik Hatalar\u0131 (Kimlik Do\u011frulama \/ Sertifika):<\/strong><br \/>\n    *   <strong>Belirti:<\/strong> <code>curl<\/code> komutunda <code>Authentication required<\/code> veya <code>SSL handshake failed<\/code> gibi hatalar al\u0131yorsunuz. Kibana, Elasticsearch&#8217;e ba\u011flanam\u0131yor.<br \/>\n    *   <strong>\u00c7\u00f6z\u00fcm:<\/strong><br \/>\n        *   <code>elastic<\/code> kullan\u0131c\u0131s\u0131n\u0131n parolas\u0131n\u0131 do\u011fru girdi\u011finizden emin olun. Gerekirse <code>sudo \/usr\/share\/elasticsearch\/bin\/elasticsearch-setup-passwords interactive<\/code> ile parolay\u0131 s\u0131f\u0131rlay\u0131n.<br \/>\n        *   <code>curl<\/code> komutunda <code>--cacert \/etc\/elasticsearch\/certs\/http_ca.crt<\/code> parametresini kulland\u0131\u011f\u0131n\u0131zdan emin olun.<br \/>\n        *   Kibana&#8217;n\u0131n Elasticsearch&#8217;e ba\u011flan\u0131rken do\u011fru enrollment token&#8217;\u0131 veya kimlik bilgilerini kulland\u0131\u011f\u0131ndan emin olun.<\/p>\n<p>*   <strong>Disk Alan\u0131 Yetersizli\u011fi:<\/strong><br \/>\n    *   <strong>Belirti:<\/strong> Elasticsearch loglar\u0131nda disk alan\u0131 uyar\u0131lar\u0131 veya yazma hatalar\u0131 g\u00f6r\u00fcyorsunuz.<br \/>\n    *   <strong>\u00c7\u00f6z\u00fcm:<\/strong> <code>\/var\/lib\/elasticsearch<\/code> dizinindeki disk kullan\u0131m\u0131n\u0131 kontrol edin (<code>df -h<\/code>). Gereksiz verileri silin veya Elasticsearch&#8217;\u00fcn veri yolunu daha geni\u015f bir diske ta\u015f\u0131y\u0131n.<\/p>\n<p>*   <strong>Dosya Tan\u0131mlay\u0131c\u0131 Limitleri Hatas\u0131:<\/strong><br \/>\n    *   <strong>Belirti:<\/strong> Loglarda <code>max file descriptors<\/code> ile ilgili uyar\u0131lar veya hatalar g\u00f6r\u00fcyorsunuz.<br \/>\n    *   <strong>\u00c7\u00f6z\u00fcm:<\/strong> <code>\/etc\/security\/limits.conf<\/code> dosyas\u0131nda <code>elasticsearch - nofile 65536<\/code> ve <code>elasticsearch - memlock unlimited<\/code> ayarlar\u0131n\u0131n yap\u0131ld\u0131\u011f\u0131ndan ve oturumu kapat\u0131p tekrar a\u00e7t\u0131\u011f\u0131n\u0131zdan emin olun.<\/p>\n<p>Herhangi bir sorunla kar\u015f\u0131la\u015ft\u0131\u011f\u0131n\u0131zda, Elasticsearch&#8217;\u00fcn log dosyalar\u0131n\u0131 (<code>\/var\/log\/elasticsearch\/<\/code>) kontrol etmek, sorunun k\u00f6kenini anlamak i\u00e7in en iyi ba\u015flang\u0131\u00e7 noktas\u0131d\u0131r.<\/p>\n<h3>Sonu\u00e7<\/h3>\n<p>Bu makalede, Ubuntu 22.04 i\u015fletim sistemi \u00fczerine Elasticsearch&#8217;\u00fcn en g\u00fcncel 8.x s\u00fcr\u00fcm\u00fcn\u00fcn nas\u0131l kurulaca\u011f\u0131n\u0131 ve temel d\u00fczeyde nas\u0131l yap\u0131land\u0131r\u0131laca\u011f\u0131n\u0131 ad\u0131m ad\u0131m ele ald\u0131k. Kurulum \u00f6ncesi \u00f6n gereksinimlerden ba\u015flayarak, Java&#8217;n\u0131n y\u00fcklenmesi, Elasticsearch deposunun eklenmesi, ana paketin kurulmas\u0131 ve ard\u0131ndan <code>elasticsearch.yml<\/code> dosyas\u0131nda temel a\u011f ve k\u00fcme ayarlar\u0131n\u0131n nas\u0131l yap\u0131laca\u011f\u0131n\u0131 g\u00f6sterdik. \u00d6zellikle Elasticsearch 8.x ile birlikte gelen g\u00fcvenlik odakl\u0131 de\u011fi\u015fikliklere (varsay\u0131lan TLS\/SSL ve kimlik do\u011frulama, enrollment token&#8217;lar) vurgu yaparak, g\u00fcvenli bir kurulumun ad\u0131mlar\u0131n\u0131 detayland\u0131rd\u0131k. Ayr\u0131ca, JVM heap ayarlar\u0131, swap&#8217;in devre d\u0131\u015f\u0131 b\u0131rak\u0131lmas\u0131 ve dosya tan\u0131mlay\u0131c\u0131 limitlerinin art\u0131r\u0131lmas\u0131 gibi performans ve kararl\u0131l\u0131k i\u00e7in kritik olan sistem seviyesi optimizasyonlar\u0131 da ele ald\u0131k. Son olarak, Kibana&#8217;n\u0131n kurulumunu ve Elasticsearch ile entegrasyonunu a\u00e7\u0131klayarak, verilerinizi g\u00f6rselle\u015ftirmek ve y\u00f6netmek i\u00e7in g\u00fc\u00e7l\u00fc bir araca sahip olman\u0131z\u0131 sa\u011flad\u0131k.<\/p>\n<p>Art\u0131k Ubuntu 22.04 sunucunuzda \u00e7al\u0131\u015fan g\u00fcvenli ve yap\u0131land\u0131r\u0131lm\u0131\u015f bir Elasticsearch \u00f6rne\u011finiz var. Bu, b\u00fcy\u00fck veri k\u00fcmeleri \u00fczerinde g\u00fc\u00e7l\u00fc arama ve analiz yeteneklerini kullanmaya ba\u015flamak i\u00e7in sa\u011flam bir temel olu\u015fturur.<\/p>\n<p><strong>Bir Sonraki Ad\u0131mlar:<\/strong><\/p>\n<p>*   <strong>Veri \u0130ndeksleme:<\/strong> Elasticsearch&#8217;e veri g\u00f6ndermeyi \u00f6\u011frenin. REST API&#8217;si veya \u00e7e\u015fitli istemci k\u00fct\u00fcphaneleri arac\u0131l\u0131\u011f\u0131yla indeksleme yapabilirsiniz.<br \/>\n*   <strong>API Kullan\u0131m\u0131:<\/strong> Elasticsearch&#8217;\u00fcn zengin REST API&#8217;sini ke\u015ffederek sorgulama, indeks y\u00f6netimi ve k\u00fcme sa\u011fl\u0131\u011f\u0131 kontrol\u00fc gibi i\u015flemleri yap\u0131n.<br \/>\n*   <strong>K\u00fcmeleme:<\/strong> Tek d\u00fc\u011f\u00fcml\u00fc kurulumunuzu birden fazla d\u00fc\u011f\u00fcm i\u00e7eren bir k\u00fcmeye nas\u0131l d\u00f6n\u00fc\u015ft\u00fcrece\u011finizi ara\u015ft\u0131r\u0131n.<br \/>\n*   <strong>Elastic Stack Bile\u015fenleri:<\/strong> Logstash (veri i\u015fleme) ve Beats (hafif veri g\u00f6ndericiler) gibi Elastic Stack&#8217;in di\u011fer bile\u015fenlerini ke\u015ffederek kapsaml\u0131 bir veri toplama ve analiz altyap\u0131s\u0131 kurun.<\/p>\n<p>Elasticsearch&#8217;\u00fcn g\u00fcc\u00fcn\u00fc ke\u015ffetmeye devam edin ve veri odakl\u0131 uygulamalar\u0131n\u0131zda ve altyap\u0131n\u0131zda devrim yarat\u0131n!<\/body><\/p>\n","protected":false},"excerpt":{"rendered":"Ubuntu 22.04 \u00dczerine Elasticsearch Kurulumu ve Yap\u0131land\u0131rmas\u0131\nElasticsearch, da\u011f\u0131t\u0131lm\u0131\u015f, RESTful bir arama ve analiz motorudur. B\u00fcy\u00fck veri","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"csco_page_header_type":"","csco_page_load_nextpost":"","csco_page_subscribe_form":"","csco_page_contact_form":"","footnotes":""},"categories":[1468],"tags":[],"class_list":{"0":"post-35830","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-ubuntu","7":"cs-entry","8":"cs-video-wrap"},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v20.5 (Yoast SEO v25.3.1) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Ubuntu 22.04 \u00dczerine Elasticsearch Kurulumu ve Yap\u0131land\u0131rmas\u0131 - Kodlar\u0131n Gizemli D\u00fcnyas\u0131<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/fatihsoysal.com\/blog\/ubuntu-22-04-uzerine-elasticsearch-kurulumu-ve-yapilandirmasi\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Ubuntu 22.04 \u00dczerine Elasticsearch Kurulumu ve Yap\u0131land\u0131rmas\u0131\" \/>\n<meta property=\"og:description\" content=\"Ubuntu 22.04 \u00dczerine Elasticsearch Kurulumu ve Yap\u0131land\u0131rmas\u0131 Elasticsearch, da\u011f\u0131t\u0131lm\u0131\u015f, RESTful bir arama ve analiz motorudur. B\u00fcy\u00fck veri\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/ubuntu-22-04-uzerine-elasticsearch-kurulumu-ve-yapilandirmasi\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2025-12-04T07:40:51+00:00\" \/>\n<meta name=\"author\" content=\"Fatih Soysal\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Yazan:\" \/>\n\t<meta name=\"twitter:data1\" content=\"Fatih Soysal\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tahmini okuma s\u00fcresi\" \/>\n\t<meta name=\"twitter:data2\" content=\"18 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/ubuntu-22-04-uzerine-elasticsearch-kurulumu-ve-yapilandirmasi\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/ubuntu-22-04-uzerine-elasticsearch-kurulumu-ve-yapilandirmasi\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"Ubuntu 22.04 \u00dczerine Elasticsearch Kurulumu ve Yap\u0131land\u0131rmas\u0131\",\"datePublished\":\"2025-12-04T07:40:51+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/ubuntu-22-04-uzerine-elasticsearch-kurulumu-ve-yapilandirmasi\/\"},\"wordCount\":3119,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"articleSection\":[\"Ubuntu\"],\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/ubuntu-22-04-uzerine-elasticsearch-kurulumu-ve-yapilandirmasi\/#respond\"]}],\"copyrightYear\":\"2025\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/ubuntu-22-04-uzerine-elasticsearch-kurulumu-ve-yapilandirmasi\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/ubuntu-22-04-uzerine-elasticsearch-kurulumu-ve-yapilandirmasi\/\",\"name\":\"Ubuntu 22.04 \u00dczerine Elasticsearch Kurulumu ve Yap\u0131land\u0131rmas\u0131 - Kodlar\u0131n Gizemli D\u00fcnyas\u0131\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2025-12-04T07:40:51+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/ubuntu-22-04-uzerine-elasticsearch-kurulumu-ve-yapilandirmasi\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/ubuntu-22-04-uzerine-elasticsearch-kurulumu-ve-yapilandirmasi\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/ubuntu-22-04-uzerine-elasticsearch-kurulumu-ve-yapilandirmasi\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Ubuntu 22.04 \u00dczerine Elasticsearch Kurulumu ve Yap\u0131land\u0131rmas\u0131\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/\",\"name\":\"Fatihsoysal.com\",\"description\":\"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim\",\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"tr\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\",\"name\":\"Fatih Soysal\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"tr\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"contentUrl\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"width\":512,\"height\":512,\"caption\":\"Fatih Soysal\"},\"logo\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\"},\"description\":\"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Ubuntu 22.04 \u00dczerine Elasticsearch Kurulumu ve Yap\u0131land\u0131rmas\u0131 - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/fatihsoysal.com\/blog\/ubuntu-22-04-uzerine-elasticsearch-kurulumu-ve-yapilandirmasi\/","og_locale":"tr_TR","og_type":"article","og_title":"Ubuntu 22.04 \u00dczerine Elasticsearch Kurulumu ve Yap\u0131land\u0131rmas\u0131","og_description":"Ubuntu 22.04 \u00dczerine Elasticsearch Kurulumu ve Yap\u0131land\u0131rmas\u0131 Elasticsearch, da\u011f\u0131t\u0131lm\u0131\u015f, RESTful bir arama ve analiz motorudur. B\u00fcy\u00fck veri","og_url":"https:\/\/fatihsoysal.com\/blog\/ubuntu-22-04-uzerine-elasticsearch-kurulumu-ve-yapilandirmasi\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2025-12-04T07:40:51+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"18 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/ubuntu-22-04-uzerine-elasticsearch-kurulumu-ve-yapilandirmasi\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/ubuntu-22-04-uzerine-elasticsearch-kurulumu-ve-yapilandirmasi\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"Ubuntu 22.04 \u00dczerine Elasticsearch Kurulumu ve Yap\u0131land\u0131rmas\u0131","datePublished":"2025-12-04T07:40:51+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/ubuntu-22-04-uzerine-elasticsearch-kurulumu-ve-yapilandirmasi\/"},"wordCount":3119,"commentCount":0,"publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"articleSection":["Ubuntu"],"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fatihsoysal.com\/blog\/ubuntu-22-04-uzerine-elasticsearch-kurulumu-ve-yapilandirmasi\/#respond"]}],"copyrightYear":"2025","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/ubuntu-22-04-uzerine-elasticsearch-kurulumu-ve-yapilandirmasi\/","url":"https:\/\/fatihsoysal.com\/blog\/ubuntu-22-04-uzerine-elasticsearch-kurulumu-ve-yapilandirmasi\/","name":"Ubuntu 22.04 \u00dczerine Elasticsearch Kurulumu ve Yap\u0131land\u0131rmas\u0131 - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2025-12-04T07:40:51+00:00","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/ubuntu-22-04-uzerine-elasticsearch-kurulumu-ve-yapilandirmasi\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/ubuntu-22-04-uzerine-elasticsearch-kurulumu-ve-yapilandirmasi\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/ubuntu-22-04-uzerine-elasticsearch-kurulumu-ve-yapilandirmasi\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Ubuntu 22.04 \u00dczerine Elasticsearch Kurulumu ve Yap\u0131land\u0131rmas\u0131"}]},{"@type":"WebSite","@id":"https:\/\/fatihsoysal.com\/blog\/#website","url":"https:\/\/fatihsoysal.com\/blog\/","name":"Fatihsoysal.com","description":"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim","publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"tr"},{"@type":["Person","Organization"],"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1","name":"Fatih Soysal","image":{"@type":"ImageObject","inLanguage":"tr","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","contentUrl":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","width":512,"height":512,"caption":"Fatih Soysal"},"logo":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/"},"description":"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.","url":"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/"}]}},"yoast_meta":{"yoast_wpseo_title":"","yoast_wpseo_metadesc":"","yoast_wpseo_canonical":""},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/35830","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/comments?post=35830"}],"version-history":[{"count":1,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/35830\/revisions"}],"predecessor-version":[{"id":35831,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/35830\/revisions\/35831"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=35830"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=35830"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=35830"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}