{"id":33096,"date":"2025-10-29T12:41:18","date_gmt":"2025-10-29T09:41:18","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/?p=33096"},"modified":"2025-10-29T12:41:18","modified_gmt":"2025-10-29T09:41:18","slug":"elasticsearchu-centos-7-uzerine-kurulumu-ve-yapilandirmasi-kapsamli-bir-rehber","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/elasticsearchu-centos-7-uzerine-kurulumu-ve-yapilandirmasi-kapsamli-bir-rehber\/","title":{"rendered":"Elasticsearch&#8217;\u00fc CentOS 7 \u00dczerine Kurulumu ve Yap\u0131land\u0131rmas\u0131: Kapsaml\u0131 Bir Rehber"},"content":{"rendered":"<p><body><\/p>\n<h2>Elasticsearch&#8217;\u00fc CentOS 7 \u00dczerine Kurulumu ve Yap\u0131land\u0131rmas\u0131: Kapsaml\u0131 Bir Rehber<\/h2>\n<h2>Giri\u015f<\/h2>\n<p>G\u00fcn\u00fcm\u00fcz\u00fcn veri odakl\u0131 d\u00fcnyas\u0131nda, b\u00fcy\u00fck hacimli verileri h\u0131zl\u0131 ve verimli bir \u015fekilde aramak, analiz etmek ve g\u00f6rselle\u015ftirmek i\u015fletmeler i\u00e7in kritik bir \u00f6neme sahiptir. Elasticsearch, bu ihtiyac\u0131 kar\u015f\u0131lamak \u00fczere tasarlanm\u0131\u015f, da\u011f\u0131t\u0131k, RESTful ve JSON tabanl\u0131 g\u00fc\u00e7l\u00fc bir arama ve analiz motorudur. Apache Lucene \u00fczerine in\u015fa edilmi\u015f olan Elasticsearch, tam metin arama, log analizi, g\u00fcvenlik analizi, i\u015f metrikleri ve daha bir\u00e7ok kullan\u0131m senaryosu i\u00e7in ideal bir \u00e7\u00f6z\u00fcmd\u00fcr. Genellikle Logstash ve Kibana ile birlikte &#8220;ELK Stack&#8221; (Elastic Stack) olarak bilinen bir ekosistemin merkezi bile\u015fenidir.<\/p>\n<p>Bu kapsaml\u0131 rehberde, CentOS 7 i\u015fletim sistemi \u00fczerinde Elasticsearch&#8217;\u00fcn nas\u0131l kurulaca\u011f\u0131n\u0131 ve temel d\u00fczeyde nas\u0131l yap\u0131land\u0131r\u0131laca\u011f\u0131n\u0131 ad\u0131m ad\u0131m inceleyece\u011fiz. CentOS 7, sunucu ortamlar\u0131nda yayg\u0131n olarak kullan\u0131lan stabil ve g\u00fcvenilir bir Linux da\u011f\u0131t\u0131m\u0131 olmas\u0131 nedeniyle bu rehber i\u00e7in tercih edilmi\u015ftir. Amac\u0131m\u0131z, kurulumdan temel yap\u0131land\u0131rmaya, servis y\u00f6netiminden g\u00fcvenlik duvar\u0131 ayarlar\u0131na kadar t\u00fcm s\u00fcre\u00e7leri detayl\u0131 bir \u015fekilde a\u00e7\u0131klayarak, okuyucular\u0131n kendi Elasticsearch ortamlar\u0131n\u0131 ba\u015far\u0131yla kurmalar\u0131n\u0131 sa\u011flamakt\u0131r.<\/p>\n<h2>\u00d6n Gereksinimler<\/h2>\n<p>Elasticsearch kurulumuna ba\u015flamadan \u00f6nce, sisteminizin belirli gereksinimleri kar\u015f\u0131lad\u0131\u011f\u0131ndan emin olmal\u0131y\u0131z. Bu \u00f6n gereksinimler, kurulumun sorunsuz ilerlemesi ve Elasticsearch&#8217;\u00fcn optimum performansla \u00e7al\u0131\u015fmas\u0131 i\u00e7in hayati \u00f6neme sahiptir.<\/p>\n<h3>Sistem Gereksinimleri<\/h3>\n<p>*   <strong>\u0130\u015fletim Sistemi:<\/strong> CentOS 7 y\u00fckl\u00fc bir sunucu.<br \/>\n*   <strong>RAM:<\/strong> Minimum 4 GB RAM \u00f6nerilir. \u00dcretim ortamlar\u0131 i\u00e7in 8 GB veya daha fazlas\u0131 \u015fiddetle tavsiye edilir. Elasticsearch, Java tabanl\u0131 oldu\u011fu i\u00e7in heap belle\u011fi i\u00e7in \u00f6nemli miktarda RAM kullan\u0131r.<br \/>\n*   <strong>CPU:<\/strong> Minimum 2 \u00e7ekirdekli bir i\u015flemci. Veri hacmine ve sorgu karma\u015f\u0131kl\u0131\u011f\u0131na ba\u011fl\u0131 olarak daha fazla \u00e7ekirdek gerekebilir.<br \/>\n*   <strong>Disk Alan\u0131:<\/strong> En az 20 GB bo\u015f disk alan\u0131 \u00f6nerilir. Veri hacminiz artt\u0131k\u00e7a bu alan\u0131n da artmas\u0131 gerekecektir. Y\u00fcksek performans i\u00e7in SSD diskler tercih edilmelidir.<br \/>\n*   <strong>Sudo Yetkileri:<\/strong> Kurulum ve yap\u0131land\u0131rma i\u015flemleri i\u00e7in <code>sudo<\/code> yetkilerine sahip bir kullan\u0131c\u0131 hesab\u0131na ihtiyac\u0131n\u0131z olacakt\u0131r.<br \/>\n*   <strong>\u0130nternet Ba\u011flant\u0131s\u0131:<\/strong> Paket indirme ve g\u00fcncelleme i\u015flemleri i\u00e7in aktif bir internet ba\u011flant\u0131s\u0131 gereklidir.<\/p>\n<h3>Java Geli\u015ftirme Kiti (JDK)<\/h3>\n<p>Elasticsearch, Java sanal makinesi (JVM) \u00fczerinde \u00e7al\u0131\u015f\u0131r. Bu nedenle, sisteminizde uyumlu bir Java Geli\u015ftirme Kiti (JDK) kurulu olmas\u0131 zorunludur. Elasticsearch&#8217;\u00fcn g\u00fcncel s\u00fcr\u00fcmleri OpenJDK 8 veya OpenJDK 11&#8217;i desteklemektedir. Bu rehberde OpenJDK 8 kurulumunu g\u00f6sterece\u011fiz, ancak OpenJDK 11 de benzer ad\u0131mlarla kurulabilir.<\/p>\n<h3>Sistem G\u00fcncellemeleri<\/h3>\n<p>Kuruluma ba\u015flamadan \u00f6nce, sisteminizin g\u00fcncel oldu\u011fundan emin olmak iyi bir pratiktir. Bu, olas\u0131 ba\u011f\u0131ml\u0131l\u0131k sorunlar\u0131n\u0131 ve g\u00fcvenlik a\u00e7\u0131klar\u0131n\u0131 \u00f6nlemeye yard\u0131mc\u0131 olur.<\/p>\n<pre><code class=\"language-bash\">sudo yum update -y\nsudo yum upgrade -y<\/code><\/pre>\n<p>Bu komutlar, sisteminizdeki t\u00fcm y\u00fckl\u00fc paketleri g\u00fcncelleyecektir.<\/p>\n<h2>Java Kurulumu<\/h2>\n<p>Elasticsearch&#8217;\u00fcn \u00e7al\u0131\u015fmas\u0131 i\u00e7in gerekli olan Java Geli\u015ftirme Kiti&#8217;ni (JDK) kurarak devam edelim. CentOS 7&#8217;de OpenJDK&#8217;yi kurmak olduk\u00e7a basittir.<\/p>\n<h3>OpenJDK 8 Kurulumu<\/h3>\n<p>A\u015fa\u011f\u0131daki komutu kullanarak OpenJDK 8&#8217;i kurabiliriz:<\/p>\n<pre><code class=\"language-bash\">sudo yum install java-1.8.0-openjdk-devel -y<\/code><\/pre>\n<p><code>java-1.8.0-openjdk-devel<\/code> paketi, hem Java Runtime Environment (JRE) hem de Java Development Kit (JDK) bile\u015fenlerini i\u00e7erir. Elasticsearch&#8217;\u00fcn geli\u015ftirme bile\u015fenlerine ihtiyac\u0131 olmasa da, <code>devel<\/code> paketi genellikle tam bir Java ortam\u0131 sa\u011flar.<\/p>\n<h3>Java S\u00fcr\u00fcm\u00fcn\u00fc Do\u011frulama<\/h3>\n<p>Kurulum tamamland\u0131ktan sonra, Java&#8217;n\u0131n do\u011fru bir \u015fekilde kurulup kurulmad\u0131\u011f\u0131n\u0131 ve s\u00fcr\u00fcm\u00fcn\u00fc kontrol edebiliriz:<\/p>\n<pre><code class=\"language-bash\">java -version<\/code><\/pre>\n<p>\u00c7\u0131kt\u0131 a\u015fa\u011f\u0131daki gibi bir \u015fey olmal\u0131d\u0131r:<\/p>\n<pre><code class=\"language-\">openjdk version \"1.8.0_XXX\"\nOpenJDK Runtime Environment (build 1.8.0_XXX-bXX)\nOpenJDK 64-Bit Server VM (build 25.XXX-bXX, mixed mode)<\/code><\/pre>\n<p>Bu \u00e7\u0131kt\u0131, Java 8&#8217;in ba\u015far\u0131yla kuruldu\u011funu g\u00f6sterir.<\/p>\n<h2>Elasticsearch Deposu Ekleme<\/h2>\n<p>Elasticsearch&#8217;\u00fc yum paket y\u00f6neticisi arac\u0131l\u0131\u011f\u0131yla kurabilmek i\u00e7in, Elastic&#8217;in resmi deposunu sistemimize eklememiz gerekmektedir. Bu, hem kurulumu kolayla\u015ft\u0131racak hem de gelecekteki g\u00fcncellemeleri y\u00f6netmeyi basitle\u015ftirecektir.<\/p>\n<h3>GPG Anahtar\u0131n\u0131 \u0130\u00e7e Aktarma<\/h3>\n<p>Elasticsearch paketlerinin b\u00fct\u00fcnl\u00fc\u011f\u00fcn\u00fc do\u011frulamak i\u00e7in Elastic&#8217;in GPG anahtar\u0131n\u0131 i\u00e7e aktarmam\u0131z gerekir. Bu anahtar, indirilen paketlerin Elastic taraf\u0131ndan imzaland\u0131\u011f\u0131n\u0131 ve \u00fczerinde oynanmad\u0131\u011f\u0131n\u0131 garanti eder.<\/p>\n<pre><code class=\"language-bash\">sudo rpm --import https:\/\/artifacts.elastic.co\/GPG-KEY-elasticsearch<\/code><\/pre>\n<h3>Elasticsearch Depo Dosyas\u0131n\u0131 Olu\u015fturma<\/h3>\n<p>\u015eimdi, yum paket y\u00f6neticisinin Elasticsearch paketlerini nerede bulaca\u011f\u0131n\u0131 belirten bir depo dosyas\u0131 olu\u015fturaca\u011f\u0131z. Bu dosyay\u0131 <code>\/etc\/yum.repos.d\/<\/code> dizini alt\u0131nda olu\u015fturmal\u0131y\u0131z.<\/p>\n<pre><code class=\"language-bash\">sudo vi \/etc\/yum.repos.d\/elasticsearch.repo<\/code><\/pre>\n<p>A\u00e7\u0131lan edit\u00f6re a\u015fa\u011f\u0131daki i\u00e7eri\u011fi yap\u0131\u015ft\u0131r\u0131n:<\/p>\n<pre><code class=\"language-\">[elasticsearch-7.x]\nname=Elasticsearch repository for 7.x packages\nbaseurl=https:\/\/artifacts.elastic.co\/packages\/7.x\/yum\ngpgcheck=1\ngpgkey=https:\/\/artifacts.elastic.co\/GPG-KEY-elasticsearch\nenabled=1\nautorefresh=1\ntype=rpm-md<\/code><\/pre>\n<p>*   <code>[elasticsearch-7.x]<\/code>: Deponun ad\u0131n\u0131 tan\u0131mlar.<br \/>\n*   <code>name<\/code>: Deponun a\u00e7\u0131klay\u0131c\u0131 ad\u0131d\u0131r.<br \/>\n*   <code>baseurl<\/code>: Elasticsearch paketlerinin bulundu\u011fu URL&#8217;dir. Burada 7.x serisi i\u00e7in olan depoyu kullan\u0131yoruz.<br \/>\n*   <code>gpgcheck=1<\/code>: GPG anahtar\u0131 ile paket b\u00fct\u00fcnl\u00fc\u011f\u00fc kontrol\u00fcn\u00fcn yap\u0131laca\u011f\u0131n\u0131 belirtir.<br \/>\n*   <code>gpgkey<\/code>: GPG anahtar\u0131n\u0131n URL&#8217;ini belirtir.<br \/>\n*   <code>enabled=1<\/code>: Bu deponun etkin oldu\u011funu belirtir.<br \/>\n*   <code>autorefresh=1<\/code>: Depo meta verilerinin otomatik olarak yenilenmesini sa\u011flar.<br \/>\n*   <code>type=rpm-md<\/code>: Depo t\u00fcr\u00fcn\u00fc belirtir.<\/p>\n<p>Dosyay\u0131 kaydedip kapat\u0131n (<code>:wq<\/code> komutuyla vi edit\u00f6r\u00fcnde).<\/p>\n<h2>Elasticsearch Kurulumu<\/h2>\n<p>Elasticsearch deposunu sistemimize ekledikten sonra, art\u0131k Elasticsearch paketini kolayca kurabiliriz.<\/p>\n<h3>Yum ile Kurulum<\/h3>\n<p>A\u015fa\u011f\u0131daki komutu kullanarak Elasticsearch&#8217;\u00fc kurun:<\/p>\n<pre><code class=\"language-bash\">sudo yum install elasticsearch -y<\/code><\/pre>\n<p>Bu komut, Elasticsearch paketini ve ba\u011f\u0131ml\u0131l\u0131klar\u0131n\u0131 indirecek ve sisteminize kuracakt\u0131r. Kurulum s\u0131ras\u0131nda, GPG anahtar\u0131n\u0131 do\u011frulamak isteyip istemedi\u011finiz sorulabilir; <code>y<\/code> tu\u015funa basarak onaylay\u0131n.<\/p>\n<h3>Kurulum Sonras\u0131 Dosya Yollar\u0131<\/h3>\n<p>Kurulum tamamland\u0131\u011f\u0131nda, Elasticsearch&#8217;\u00fcn ana dizinleri ve dosyalar\u0131 a\u015fa\u011f\u0131daki konumlarda bulunur:<\/p>\n<p>*   <strong>Yap\u0131land\u0131rma Dosyalar\u0131:<\/strong> <code>\/etc\/elasticsearch\/<\/code> dizini alt\u0131nda bulunur. En \u00f6nemli dosya <code>elasticsearch.yml<\/code>&#8216;dir.<br \/>\n*   <strong>Veri Dizinleri:<\/strong> <code>\/var\/lib\/elasticsearch\/<\/code> dizini, Elasticsearch&#8217;\u00fcn indeks verilerini ve di\u011fer kal\u0131c\u0131 verilerini depolar.<br \/>\n*   <strong>Log Dizinleri:<\/strong> <code>\/var\/log\/elasticsearch\/<\/code> dizini, Elasticsearch&#8217;\u00fcn log dosyalar\u0131n\u0131 i\u00e7erir. Sorun giderme i\u00e7in bu dizindeki loglar\u0131 kontrol etmek \u00f6nemlidir.<br \/>\n*   <strong>Binari ve Komut Dosyalar\u0131:<\/strong> <code>\/usr\/share\/elasticsearch\/<\/code> dizini, Elasticsearch&#8217;\u00fcn \u00e7al\u0131\u015ft\u0131r\u0131labilir dosyalar\u0131n\u0131 ve k\u00fct\u00fcphanelerini bar\u0131nd\u0131r\u0131r.<\/p>\n<h2>Elasticsearch Yap\u0131land\u0131rmas\u0131<\/h2>\n<p>Elasticsearch, kutudan \u00e7\u0131kt\u0131\u011f\u0131 haliyle temel i\u015flevsellik sunsa da, \u00fcretim ortamlar\u0131nda veya belirli kullan\u0131m senaryolar\u0131nda performans ve g\u00fcvenlik i\u00e7in baz\u0131 yap\u0131land\u0131rma ayarlar\u0131n\u0131n yap\u0131lmas\u0131 kritik \u00f6neme sahiptir. Ana yap\u0131land\u0131rma dosyas\u0131 <code>\/etc\/elasticsearch\/elasticsearch.yml<\/code>&#8216;dir. Bu dosyay\u0131 d\u00fczenlerken dikkatli olun ve her de\u011fi\u015fiklikten sonra Elasticsearch servisini yeniden ba\u015flatmay\u0131 unutmay\u0131n.<\/p>\n<h3>Temel Yap\u0131land\u0131rma Ayarlar\u0131 (<code>\/etc\/elasticsearch\/elasticsearch.yml<\/code>)<\/h3>\n<p>Bu dosya YAML format\u0131ndad\u0131r ve yorum sat\u0131rlar\u0131 (<code>#<\/code> ile ba\u015flayanlar) ile a\u00e7\u0131klanm\u0131\u015ft\u0131r. \u0130htiya\u00e7 duydu\u011funuz ayarlar\u0131n yorum sat\u0131rlar\u0131n\u0131 kald\u0131rarak veya yenilerini ekleyerek yap\u0131land\u0131rma yapabilirsiniz.<\/p>\n<pre><code class=\"language-bash\">sudo vi \/etc\/elasticsearch\/elasticsearch.yml<\/code><\/pre>\n<p>A\u015fa\u011f\u0131daki temel ayarlar\u0131 d\u00fczenleyelim:<\/p>\n<p>1.  <strong>K\u00fcme Ad\u0131 (cluster.name):<\/strong><br \/>\n    Elasticsearch, birden fazla d\u00fc\u011f\u00fcm\u00fcn bir araya gelerek bir k\u00fcme olu\u015fturdu\u011fu da\u011f\u0131t\u0131k bir sistemdir. K\u00fcme ad\u0131, ayn\u0131 k\u00fcmede yer alacak t\u00fcm d\u00fc\u011f\u00fcmler i\u00e7in ayn\u0131 olmal\u0131d\u0131r.<\/p>\n<pre><code class=\"language-yaml\">cluster.name: my-application-cluster<\/code><\/pre>\n<p>    Benzersiz ve a\u00e7\u0131klay\u0131c\u0131 bir isim se\u00e7in.<\/p>\n<p>2.  <strong>D\u00fc\u011f\u00fcm Ad\u0131 (node.name):<\/strong><br \/>\n    Her Elasticsearch d\u00fc\u011f\u00fcm\u00fcn\u00fcn k\u00fcme i\u00e7inde benzersiz bir ad\u0131 olmal\u0131d\u0131r. Bu, d\u00fc\u011f\u00fcmleri y\u00f6netirken ve izlerken kolayl\u0131k sa\u011flar.<\/p>\n<pre><code class=\"language-yaml\">node.name: node-1<\/code><\/pre>\n<p>    Veya sunucunun hostname&#8217;ini kullanabilirsiniz:<\/p>\n<pre><code class=\"language-yaml\">node.name: ${node.name}<\/code><\/pre>\n<p>3.  <strong>Veri ve Log Yollar\u0131 (path.data, path.logs):<\/strong><br \/>\n    Elasticsearch&#8217;\u00fcn veri ve log dosyalar\u0131n\u0131 depolayaca\u011f\u0131 yollar\u0131 belirtir. Varsay\u0131lan yollar genellikle yeterlidir, ancak disk d\u00fczeniniz farkl\u0131ysa bunlar\u0131 de\u011fi\u015ftirebilirsiniz.<\/p>\n<pre><code class=\"language-yaml\">path.data: \/var\/lib\/elasticsearch\n    path.logs: \/var\/log\/elasticsearch<\/code><\/pre>\n<p>4.  <strong>A\u011f Ayarlar\u0131 (network.host):<\/strong><br \/>\n    Bu ayar, Elasticsearch&#8217;\u00fcn hangi a\u011f aray\u00fczlerinden gelen ba\u011flant\u0131lar\u0131 dinleyece\u011fini belirler.<br \/>\n    *   <code>network.host: 127.0.0.1<\/code> (Sadece yerel makineden eri\u015fim, varsay\u0131lan)<br \/>\n    *   <code>network.host: 0.0.0.0<\/code> (T\u00fcm a\u011f aray\u00fczlerinden eri\u015fim, dikkatli kullan\u0131lmal\u0131)<br \/>\n    *   <code>network.host: 192.168.1.10<\/code> (Belirli bir IP adresinden eri\u015fim)<br \/>\n    *   <code>network.host: _site_<\/code> (Yerel a\u011f IP adresleri)<br \/>\n    *   <code>network.host: _local_<\/code> (Geri d\u00f6ng\u00fc adresi ve yerel a\u011f IP adresleri)<\/p>\n<p>    E\u011fer ba\u015fka makinelerden eri\u015fim sa\u011flamak istiyorsan\u0131z, sunucunuzun IP adresini veya <code>0.0.0.0<\/code> kullanman\u0131z gerekir. G\u00fcvenlik nedeniyle, <code>0.0.0.0<\/code> kullan\u0131l\u0131yorsa g\u00fcvenlik duvar\u0131 ayarlar\u0131n\u0131n do\u011fru yap\u0131ld\u0131\u011f\u0131ndan emin olun.<\/p>\n<pre><code class=\"language-yaml\">network.host: 0.0.0.0<\/code><\/pre>\n<p>5.  <strong>HTTP Portu (http.port):<\/strong><br \/>\n    Elasticsearch&#8217;\u00fcn REST API&#8217;sini dinleyece\u011fi portu belirtir. Varsay\u0131lan olarak 9200&#8217;d\u00fcr.<\/p>\n<pre><code class=\"language-yaml\">http.port: 9200<\/code><\/pre>\n<p>6.  <strong>Ke\u015fif Ayarlar\u0131 (Discovery Settings &#8211; \u00dcretim Ortamlar\u0131 \u0130\u00e7in \u00d6nemli):<\/strong><br \/>\n    \u00dcretim ortamlar\u0131nda, \u00f6zellikle birden fazla d\u00fc\u011f\u00fcml\u00fc bir k\u00fcme kuruyorsan\u0131z, ke\u015fif ayarlar\u0131 \u00f6nemlidir. Bu ayarlar, d\u00fc\u011f\u00fcmlerin birbirini nas\u0131l bulaca\u011f\u0131n\u0131 belirler. Tek d\u00fc\u011f\u00fcml\u00fc bir kurulum i\u00e7in bu ayarlar\u0131n \u00e7o\u011fu varsay\u0131lan olarak b\u0131rak\u0131labilir, ancak <code>discovery.type<\/code> ayar\u0131 \u00f6nemlidir.<\/p>\n<p>    *   <strong>Tek D\u00fc\u011f\u00fcml\u00fc K\u00fcme \u0130\u00e7in:<\/strong><\/p>\n<pre><code class=\"language-yaml\">discovery.type: single-node<\/code><\/pre>\n<p>        Bu ayar, Elasticsearch&#8217;\u00fcn tek bir d\u00fc\u011f\u00fcm olarak \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131 ve k\u00fcme olu\u015fturma \u00e7abalar\u0131na girmeyece\u011fini belirtir.<\/p>\n<p>    *   <strong>\u00c7ok D\u00fc\u011f\u00fcml\u00fc K\u00fcme \u0130\u00e7in:<\/strong><br \/>\n        Birden fazla d\u00fc\u011f\u00fcm\u00fcn\u00fcz varsa, <code>discovery.seed_hosts<\/code> ayar\u0131n\u0131 kullanarak d\u00fc\u011f\u00fcmlerin birbirini bulmas\u0131n\u0131 sa\u011flayabilirsiniz.<\/p>\n<pre><code class=\"language-yaml\"># discovery.seed_hosts: [\"host1\", \"host2\"]\n        # cluster.initial_master_nodes: [\"node-1\", \"node-2\"]<\/code><\/pre>\n<p>        Bu ayarlar i\u00e7in daha fazla detayl\u0131 bilgiye Elasticsearch dok\u00fcmantasyonundan ula\u015fabilirsiniz.<\/p>\n<h3>Bellek Ayarlar\u0131 (JVM Options)<\/h3>\n<p>Elasticsearch&#8217;\u00fcn performans\u0131 \u00fczerinde en b\u00fcy\u00fck etkiye sahip ayarlardan biri, Java Sanal Makinesi (JVM) i\u00e7in ayr\u0131lan heap belle\u011fidir. Bu ayarlar <code>\/etc\/elasticsearch\/jvm.options<\/code> dosyas\u0131nda yap\u0131l\u0131r.<\/p>\n<pre><code class=\"language-bash\">sudo vi \/etc\/elasticsearch\/jvm.options<\/code><\/pre>\n<p>\u00d6nemli ayarlar <code>Xms<\/code> ve <code>Xmx<\/code>&#8216;tir. Bunlar, JVM&#8217;nin kullanaca\u011f\u0131 minimum ve maksimum heap boyutunu belirler.<\/p>\n<pre><code class=\"language-\">-Xms2g\n-Xmx2g<\/code><\/pre>\n<p>*   <strong>Kural:<\/strong> <code>Xms<\/code> ve <code>Xmx<\/code> de\u011ferleri ayn\u0131 olmal\u0131d\u0131r. Bu, JVM&#8217;nin heap boyutunu dinamik olarak de\u011fi\u015ftirmesini engeller ve daha stabil bir performans sa\u011flar.<br \/>\n*   <strong>Kural:<\/strong> Ayr\u0131lan heap boyutu, sistemdeki toplam RAM&#8217;in yar\u0131s\u0131ndan fazla olmamal\u0131d\u0131r. Bunun nedeni, i\u015fletim sisteminin ve di\u011fer i\u015flemlerin de RAM&#8217;e ihtiya\u00e7 duymas\u0131d\u0131r. Ayr\u0131ca, Lucene&#8217;in (Elasticsearch&#8217;\u00fcn temelini olu\u015fturan k\u00fct\u00fcphane) i\u015fletim sistemi sayfa \u00f6nbelle\u011fini kullanabilmesi i\u00e7in yeterli bo\u015f RAM b\u0131rak\u0131lmal\u0131d\u0131r.<br \/>\n*   <strong>Kural:<\/strong> Heap boyutu asla 31 GB&#8217;\u0131 ge\u00e7memelidir. Bunun nedeni, Java&#8217;daki &#8220;s\u0131k\u0131\u015ft\u0131r\u0131lm\u0131\u015f i\u015faret\u00e7iler&#8221; (compressed ordinary object pointers &#8211; oops) mekanizmas\u0131d\u0131r. 32 GB ve \u00fczeri heap boyutlar\u0131nda, bu optimizasyon devre d\u0131\u015f\u0131 kal\u0131r ve daha fazla bellek kullan\u0131lmas\u0131na ra\u011fmen performans d\u00fc\u015f\u00fc\u015fleri ya\u015fanabilir. Bu nedenle, 64 GB RAM&#8217;li bir sunucuda bile 31 GB heap ay\u0131rmak, 32 GB ayarlamaktan daha iyi performans verebilir.<\/p>\n<p>\u00d6rne\u011fin, sunucunuzda 8 GB RAM varsa, <code>-Xms4g<\/code> ve <code>-Xmx4g<\/code> ayarlayabilirsiniz.<\/p>\n<h3>Sistem Ayarlar\u0131<\/h3>\n<p>Elasticsearch&#8217;\u00fcn kararl\u0131 \u00e7al\u0131\u015fmas\u0131 i\u00e7in i\u015fletim sistemi seviyesinde de baz\u0131 ayarlar\u0131n yap\u0131lmas\u0131 gerekebilir.<\/p>\n<p>1.  <strong><code>vm.max_map_count<\/code> Ayar\u0131:<\/strong><br \/>\n    Elasticsearch, Lucene taraf\u0131ndan kullan\u0131lan \u00e7ok say\u0131da mmap (memory map) dosyas\u0131 a\u00e7ar. Yetersiz <code>vm.max_map_count<\/code> de\u011feri, &#8220;max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]&#8221; gibi hatalara neden olabilir. Bu de\u011feri kal\u0131c\u0131 olarak ayarlamak i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">sudo sysctl -w vm.max_map_count=262144\n    echo \"vm.max_map_count=262144\" | sudo tee -a \/etc\/sysctl.conf\n    sudo sysctl -p<\/code><\/pre>\n<p>2.  <strong>A\u00e7\u0131k Dosya Limiti (ulimit):<\/strong><br \/>\n    Elasticsearch, her indeks ve shard i\u00e7in bir\u00e7ok dosya tutar. Bu nedenle, a\u00e7\u0131k dosya limiti (file descriptors) y\u00fcksek olmal\u0131d\u0131r. Elasticsearch varsay\u0131lan olarak bu limiti kendi i\u00e7inde ayarlamaya \u00e7al\u0131\u015fsa da, sistem seviyesinde de kontrol etmek \u00f6nemlidir. \u00d6nerilen minimum de\u011fer 65536&#8217;d\u0131r.<\/p>\n<pre><code class=\"language-bash\"># Ge\u00e7ici olarak ayarlamak i\u00e7in (sadece mevcut oturum i\u00e7in)\n    ulimit -n 65536\n\n    # Kal\u0131c\u0131 olarak ayarlamak i\u00e7in (reboot sonras\u0131 da ge\u00e7erli olur)\n    sudo vi \/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\n    elasticsearch - memlock unlimited<\/code><\/pre>\n<p>    Bu ayarlar, <code>elasticsearch<\/code> kullan\u0131c\u0131s\u0131 i\u00e7in ge\u00e7erli olacakt\u0131r.<\/p>\n<p>3.  <strong>Swapping&#8217;i Devre D\u0131\u015f\u0131 B\u0131rakma:<\/strong><br \/>\n    Elasticsearch, Java heap&#8217;inin asla diske takas edilmemesini (swap out) tercih eder. Swapping, performans\u0131 ciddi \u015fekilde d\u00fc\u015f\u00fcrebilir.<br \/>\n    Bunu devre d\u0131\u015f\u0131 b\u0131rakman\u0131n birka\u00e7 yolu vard\u0131r:<br \/>\n    *   <strong>Ge\u00e7ici olarak:<\/strong> <code>sudo swapoff -a<\/code><br \/>\n    *   <strong>Kal\u0131c\u0131 olarak:<\/strong> <code>\/etc\/fstab<\/code> dosyas\u0131ndan swap sat\u0131r\u0131n\u0131 yorum sat\u0131r\u0131 yapmak veya silmek.<\/p>\n<p>    Alternatif olarak, Elasticsearch&#8217;\u00fcn <code>elasticsearch.yml<\/code> dosyas\u0131nda <code>bootstrap.memory_lock: true<\/code> ayar\u0131n\u0131 etkinle\u015ftirerek JVM&#8217;nin belle\u011fi kilitlemesini sa\u011flayabilirsiniz. Bu ayar\u0131 kullanabilmek i\u00e7in, <code>memlock unlimited<\/code> ayar\u0131n\u0131 <code>limits.conf<\/code> dosyas\u0131na ekledi\u011finizden emin olun.<\/p>\n<pre><code class=\"language-yaml\">bootstrap.memory_lock: true<\/code><\/pre>\n<p>    Bu ayar\u0131 yapt\u0131ktan sonra, Elasticsearch&#8217;\u00fc ba\u015flatmadan \u00f6nce <code>ulimit -l unlimited<\/code> komutunu \u00e7al\u0131\u015ft\u0131rman\u0131z gerekebilir veya <code>limits.conf<\/code> dosyas\u0131nda <code>elasticsearch - memlock unlimited<\/code> ayar\u0131n\u0131 yapman\u0131z gerekir.<\/p>\n<p>T\u00fcm yap\u0131land\u0131rma de\u011fi\u015fikliklerini yapt\u0131ktan sonra dosyay\u0131 kaydedip kapat\u0131n.<\/p>\n<h2>Elasticsearch Servisini Ba\u015flatma ve Y\u00f6netme<\/h2>\n<p>Yap\u0131land\u0131rma tamamland\u0131ktan sonra, Elasticsearch servisini ba\u015flatabilir ve y\u00f6netimini yapabiliriz. Elasticsearch, <code>systemd<\/code> ile entegre bir \u015fekilde gelir.<\/p>\n<h3>Servisi Ba\u015flatma<\/h3>\n<p>Elasticsearch servisini ba\u015flatmak i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">sudo systemctl start elasticsearch<\/code><\/pre>\n<h3>Servisi Otomatik Ba\u015flatma<\/h3>\n<p>Sistemin yeniden ba\u015flat\u0131lmas\u0131 durumunda Elasticsearch&#8217;\u00fcn otomatik olarak ba\u015flamas\u0131n\u0131 sa\u011flamak i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">sudo systemctl enable elasticsearch<\/code><\/pre>\n<h3>Servis Durumunu Kontrol Etme<\/h3>\n<p>Servisin \u00e7al\u0131\u015f\u0131p \u00e7al\u0131\u015fmad\u0131\u011f\u0131n\u0131 kontrol etmek i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">sudo systemctl status elasticsearch<\/code><\/pre>\n<p>E\u011fer servis ba\u015far\u0131l\u0131 bir \u015fekilde \u00e7al\u0131\u015f\u0131yorsa, \u00e7\u0131kt\u0131da <code>active (running)<\/code> ifadesini g\u00f6rmelisiniz.<\/p>\n<h3>Servisi Yeniden Ba\u015flatma<\/h3>\n<p>Yap\u0131land\u0131rma dosyalar\u0131nda de\u011fi\u015fiklik yapt\u0131ktan sonra, de\u011fi\u015fikliklerin etkili olmas\u0131 i\u00e7in servisi yeniden ba\u015flatman\u0131z gerekir:<\/p>\n<pre><code class=\"language-bash\">sudo systemctl restart elasticsearch<\/code><\/pre>\n<h3>Servisi Durdurma<\/h3>\n<p>Elasticsearch servisini durdurmak i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">sudo systemctl stop elasticsearch<\/code><\/pre>\n<h3>Loglar\u0131 Kontrol Etme<\/h3>\n<p>E\u011fer Elasticsearch servisi ba\u015flamazsa veya sorunlar ya\u015farsan\u0131z, log dosyalar\u0131n\u0131 kontrol etmek ilk ad\u0131md\u0131r.<\/p>\n<pre><code class=\"language-bash\">sudo journalctl -u elasticsearch -f<\/code><\/pre>\n<p>Bu komut, Elasticsearch servisinin anl\u0131k loglar\u0131n\u0131 g\u00f6sterir. Ayr\u0131ca, <code>\/var\/log\/elasticsearch\/<\/code> dizinindeki log dosyalar\u0131n\u0131 da inceleyebilirsiniz.<\/p>\n<h2>G\u00fcvenlik Duvar\u0131 Ayarlar\u0131<\/h2>\n<p>E\u011fer sunucunuzda bir g\u00fcvenlik duvar\u0131 (firewall) etkinse ve Elasticsearch&#8217;e ba\u015fka makinelerden eri\u015fim sa\u011flamak istiyorsan\u0131z, Elasticsearch&#8217;\u00fcn kulland\u0131\u011f\u0131 portlar\u0131 a\u00e7man\u0131z gerekir. CentOS 7&#8217;de varsay\u0131lan g\u00fcvenlik duvar\u0131 <code>firewalld<\/code>&#8216;dir.<\/p>\n<p>Elasticsearch genellikle iki ana port kullan\u0131r:<br \/>\n*   <strong>9200\/tcp:<\/strong> REST API i\u00e7in kullan\u0131l\u0131r. HTTP istekleri bu port \u00fczerinden yap\u0131l\u0131r.<br \/>\n*   <strong>9300\/tcp:<\/strong> K\u00fcme ileti\u015fimi i\u00e7in kullan\u0131l\u0131r. D\u00fc\u011f\u00fcmler aras\u0131 ileti\u015fim bu port \u00fczerinden ger\u00e7ekle\u015fir.<\/p>\n<p>A\u015fa\u011f\u0131daki komutlarla bu portlar\u0131 a\u00e7\u0131n:<\/p>\n<pre><code class=\"language-bash\">sudo firewall-cmd --add-port=9200\/tcp --permanent\nsudo firewall-cmd --add-port=9300\/tcp --permanent<\/code><\/pre>\n<p>De\u011fi\u015fikliklerin etkili olmas\u0131 i\u00e7in g\u00fcvenlik duvar\u0131n\u0131 yeniden y\u00fckleyin:<\/p>\n<pre><code class=\"language-bash\">sudo firewall-cmd --reload<\/code><\/pre>\n<p>E\u011fer sadece yerel makineden eri\u015fim sa\u011flayacaksan\u0131z (\u00f6rne\u011fin Kibana ayn\u0131 sunucu \u00fczerinde kuruluysa), bu portlar\u0131 d\u0131\u015far\u0131ya a\u00e7man\u0131za gerek yoktur. Ancak <code>network.host<\/code> ayar\u0131n\u0131 <code>127.0.0.1<\/code> veya <code>_local_<\/code> olarak b\u0131rakman\u0131z gerekir.<\/p>\n<h2>Kurulumun Do\u011frulanmas\u0131<\/h2>\n<p>Elasticsearch servisi \u00e7al\u0131\u015fmaya ba\u015flad\u0131ktan ve g\u00fcvenlik duvar\u0131 ayarlar\u0131 yap\u0131ld\u0131ktan sonra, kurulumun ba\u015far\u0131l\u0131 olup olmad\u0131\u011f\u0131n\u0131 do\u011frulamam\u0131z gerekir. Bunu bir <code>curl<\/code> komutuyla yapabiliriz.<\/p>\n<p>Yerel makineden do\u011frulama:<\/p>\n<pre><code class=\"language-bash\">curl -X GET \"http:\/\/localhost:9200\"<\/code><\/pre>\n<p>E\u011fer <code>network.host<\/code> ayar\u0131n\u0131 sunucunuzun IP adresine veya <code>0.0.0.0<\/code>&#8216;a ayarlad\u0131ysan\u0131z ve d\u0131\u015far\u0131dan eri\u015fmek istiyorsan\u0131z, <code>localhost<\/code> yerine sunucunuzun IP adresini kullan\u0131n:<\/p>\n<pre><code class=\"language-bash\">curl -X GET \"http:\/\/YOUR_SERVER_IP:9200\"<\/code><\/pre>\n<p>Ba\u015far\u0131l\u0131 bir kurulum durumunda, a\u015fa\u011f\u0131daki gibi bir JSON \u00e7\u0131kt\u0131s\u0131 almal\u0131s\u0131n\u0131z:<\/p>\n<pre><code class=\"language-json\">{\n  \"name\" : \"node-1\",\n  \"cluster_name\" : \"my-application-cluster\",\n  \"cluster_uuid\" : \"YOUR_CLUSTER_UUID\",\n  \"version\" : {\n    \"number\" : \"7.X.X\",\n    \"build_flavor\" : \"default\",\n    \"build_type\" : \"rpm\",\n    \"build_hash\" : \"YOUR_BUILD_HASH\",\n    \"build_date\" : \"YYYY-MM-DDTHH:MM:SS.SSSZ\",\n    \"build_snapshot\" : false,\n    \"lucene_version\" : \"8.X.X\",\n    \"minimum_wire_compatibility_version\" : \"6.8.0\",\n    \"minimum_index_compatibility_version\" : \"6.0.0-beta1\"\n  },\n  \"tagline\" : \"You Know, for Search\"\n}<\/code><\/pre>\n<p>Bu \u00e7\u0131kt\u0131, Elasticsearch&#8217;\u00fcn \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131, k\u00fcme ad\u0131n\u0131, d\u00fc\u011f\u00fcm ad\u0131n\u0131 ve s\u00fcr\u00fcm bilgilerini g\u00f6sterir.<\/p>\n<p>Ek do\u011frulama komutlar\u0131:<\/p>\n<p>*   <strong>K\u00fcmedeki d\u00fc\u011f\u00fcmleri listeleme:<\/strong><\/p>\n<pre><code class=\"language-bash\">curl -X GET \"http:\/\/localhost:9200\/_cat\/nodes?v\"<\/code><\/pre>\n<p>    \u00c7\u0131kt\u0131:<\/p>\n<pre><code class=\"language-\">ip        heap.percent ram.percent cpu load_1m load_5m load_15m node.role master name\n    127.0.0.1            X           X   X    X.XX    X.XX     X.XX dilm      *      node-1<\/code><\/pre>\n<p>*   <strong>K\u00fcmedeki indeksleri listeleme:<\/strong><\/p>\n<pre><code class=\"language-bash\">curl -X GET \"http:\/\/localhost:9200\/_cat\/indices?v\"<\/code><\/pre>\n<p>    Hen\u00fcz bir indeks olu\u015fturmad\u0131\u011f\u0131n\u0131z i\u00e7in bu komut bo\u015f bir \u00e7\u0131kt\u0131 veya sadece dahili indeksleri g\u00f6sterecektir.<\/p>\n<h2>Temel Elasticsearch \u0130\u015flemleri (\u00d6rnekler)<\/h2>\n<p>Kurulumu do\u011frulad\u0131ktan sonra, Elasticsearch&#8217;\u00fcn nas\u0131l \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131 anlamak i\u00e7in birka\u00e7 temel API i\u015flemi yapabiliriz.<\/p>\n<h3>1. \u0130ndeks Olu\u015fturma<\/h3>\n<p>Elasticsearch&#8217;te veriler indekslerde saklan\u0131r. Bir indeks, ili\u015fkisel veritaban\u0131ndaki bir tabloya benzer.<\/p>\n<pre><code class=\"language-bash\">curl -X PUT \"http:\/\/localhost:9200\/my_first_index?pretty\" -H 'Content-Type: application\/json' -d'\n{\n  \"settings\": {\n    \"number_of_shards\": 1,\n    \"number_of_replicas\": 0\n  }\n}\n'<\/code><\/pre>\n<p>*   <code>PUT \/my_first_index<\/code>: <code>my_first_index<\/code> ad\u0131nda yeni bir indeks olu\u015fturur.<br \/>\n*   <code>number_of_shards<\/code>: \u0130ndeksin ka\u00e7 par\u00e7aya (shard) b\u00f6l\u00fcnece\u011fini belirtir. Da\u011f\u0131t\u0131k ortamlar i\u00e7in \u00f6nemlidir. Tek d\u00fc\u011f\u00fcml\u00fc kurulumda 1 yeterlidir.<br \/>\n*   <code>number_of_replicas<\/code>: Her shard&#8217;\u0131n ka\u00e7 kopyas\u0131n\u0131n (replica) olaca\u011f\u0131n\u0131 belirtir. Veri g\u00fcvenli\u011fi ve okuma performans\u0131 i\u00e7in \u00f6nemlidir. Tek d\u00fc\u011f\u00fcml\u00fc kurulumda 0 olarak ayarlan\u0131r, \u00e7\u00fcnk\u00fc replikalar farkl\u0131 d\u00fc\u011f\u00fcmlerde bar\u0131nd\u0131r\u0131lmal\u0131d\u0131r.<\/p>\n<h3>2. Belge Ekleme<\/h3>\n<p>\u0130ndekse veri eklemek i\u00e7in <code>_doc<\/code> endpoint&#8217;ini kullan\u0131r\u0131z. Elasticsearch, g\u00f6nderdi\u011finiz JSON belgesini otomatik olarak indeksler ve bir kimlik (ID) atar.<\/p>\n<pre><code class=\"language-bash\">curl -X POST \"http:\/\/localhost:9200\/my_first_index\/_doc?pretty\" -H 'Content-Type: application\/json' -d'\n{\n  \"title\": \"Elasticsearch Kurulum Rehberi\",\n  \"author\": \"Tech Guru\",\n  \"publish_date\": \"2023-10-27\",\n  \"content\": \"Bu rehber, CentOS 7 \u00fczerinde Elasticsearch kurulumunu ad\u0131m ad\u0131m anlatmaktad\u0131r.\"\n}\n'<\/code><\/pre>\n<p>Bu komut, otomatik olarak bir ID atar. Belgeye belirli bir ID atamak isterseniz <code>PUT<\/code> metodunu kullanabilirsiniz:<\/p>\n<pre><code class=\"language-bash\">curl -X PUT \"http:\/\/localhost:9200\/my_first_index\/_doc\/1?pretty\" -H 'Content-Type: application\/json' -d'\n{\n  \"title\": \"Kibana Kurulumu\",\n  \"author\": \"Data Explorer\",\n  \"publish_date\": \"2023-10-28\",\n  \"content\": \"Kibana, Elasticsearch verilerini g\u00f6rselle\u015ftirmek i\u00e7in kullan\u0131l\u0131r.\"\n}\n'<\/code><\/pre>\n<h3>3. Belge Sorgulama<\/h3>\n<p>Belirli bir ID&#8217;ye sahip belgeyi almak i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">curl -X GET \"http:\/\/localhost:9200\/my_first_index\/_doc\/1?pretty\"<\/code><\/pre>\n<h3>4. Arama Yapma<\/h3>\n<p>\u0130ndekste tam metin aramas\u0131 yapmak i\u00e7in <code>_search<\/code> endpoint&#8217;ini kullan\u0131r\u0131z.<\/p>\n<pre><code class=\"language-bash\">curl -X GET \"http:\/\/localhost:9200\/my_first_index\/_search?q=kurulum&pretty\"<\/code><\/pre>\n<p>Bu komut, <code>kurulum<\/code> kelimesini i\u00e7eren belgeleri arar.<\/p>\n<p>Daha geli\u015fmi\u015f aramalar i\u00e7in Query DSL (Domain Specific Language) kullanabilirsiniz:<\/p>\n<pre><code class=\"language-bash\">curl -X GET \"http:\/\/localhost:9200\/my_first_index\/_search?pretty\" -H 'Content-Type: application\/json' -d'\n{\n  \"query\": {\n    \"match\": {\n      \"content\": \"CentOS\"\n    }\n  }\n}\n'<\/code><\/pre>\n<p>Bu komut, <code>content<\/code> alan\u0131nda &#8220;CentOS&#8221; kelimesini i\u00e7eren belgeleri arar.<\/p>\n<h3>5. \u0130ndeks Silme<\/h3>\n<p>Bir indeksi ve i\u00e7indeki t\u00fcm verileri silmek i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">curl -X DELETE \"http:\/\/localhost:9200\/my_first_index?pretty\"<\/code><\/pre>\n<h2>Ek Yap\u0131land\u0131rma ve Optimizasyon \u0130pu\u00e7lar\u0131<\/h2>\n<p>Elasticsearch&#8217;\u00fc \u00fcretim ortam\u0131nda kullan\u0131rken veya daha b\u00fcy\u00fck veri setleriyle \u00e7al\u0131\u015f\u0131rken, performans ve kararl\u0131l\u0131\u011f\u0131 art\u0131rmak i\u00e7in ek yap\u0131land\u0131rma ve optimizasyon ipu\u00e7lar\u0131n\u0131 g\u00f6z \u00f6n\u00fcnde bulundurman\u0131z \u00f6nemlidir.<\/p>\n<p>1.  <strong>Heap Boyutu (JVM Memory):<\/strong> Daha \u00f6nce de belirtildi\u011fi gibi, <code>Xms<\/code> ve <code>Xmx<\/code> de\u011ferleri, toplam RAM&#8217;in yar\u0131s\u0131 ve asla 31 GB&#8217;\u0131 ge\u00e7meyecek \u015fekilde ayarlanmal\u0131d\u0131r. Bu, hem JVM hem de i\u015fletim sistemi sayfa \u00f6nbelle\u011fi i\u00e7in yeterli bellek b\u0131rak\u0131lmas\u0131n\u0131 sa\u011flar.<\/p>\n<p>2.  <strong>Disk Tipi ve H\u0131z\u0131:<\/strong> Elasticsearch disk yo\u011fun bir uygulamad\u0131r. Y\u00fcksek h\u0131zl\u0131 SSD&#8217;ler, okuma\/yazma performans\u0131n\u0131 \u00f6nemli \u00f6l\u00e7\u00fcde art\u0131r\u0131r. RAID 0 veya RAID 10 gibi yap\u0131land\u0131rmalar da d\u00fc\u015f\u00fcn\u00fclebilir.<\/p>\n<p>3.  <strong>Sharding ve Replicas Stratejisi:<\/strong><br \/>\n    *   <strong>Shard Say\u0131s\u0131:<\/strong> Bir indeksi ka\u00e7 shard&#8217;a b\u00f6lece\u011finiz, veri hacminize ve arama performans hedeflerinize ba\u011fl\u0131d\u0131r. \u00c7ok fazla shard, k\u00fcme y\u00f6netim y\u00fck\u00fcn\u00fc art\u0131rabilir; \u00e7ok az shard ise paralelle\u015fmeyi k\u0131s\u0131tlar.<br \/>\n    *   <strong>Replica Say\u0131s\u0131:<\/strong> Replikalar, shard&#8217;lar\u0131n kopyalar\u0131d\u0131r ve veri g\u00fcvenli\u011fi (bir d\u00fc\u011f\u00fcm \u00e7\u00f6kerse) ve okuma performans\u0131 (sorgular replikalara da\u011f\u0131t\u0131labilir) i\u00e7in hayati \u00f6neme sahiptir. \u00dcretim ortamlar\u0131nda genellikle en az 1 replica \u00f6nerilir.<\/p>\n<p>4.  <strong>G\u00fcvenlik:<\/strong><br \/>\n    *   <strong>X-Pack Security:<\/strong> Elasticsearch&#8217;\u00fcn ticari bir \u00f6zelli\u011fi olan X-Pack Security, kimlik do\u011frulama (kullan\u0131c\u0131 ad\u0131\/\u015fifre, LDAP, Active Directory), yetkilendirme (rol tabanl\u0131 eri\u015fim kontrol\u00fc), \u015fifreleme (HTTPS\/TLS) ve denetim (audit logging) gibi geli\u015fmi\u015f g\u00fcvenlik \u00f6zellikleri sunar. \u00dcretim ortamlar\u0131nda \u015fiddetle tavsiye edilir.<br \/>\n    *   <strong>HTTPS\/TLS:<\/strong> HTTP trafi\u011fini \u015fifrelemek i\u00e7in HTTPS kullan\u0131n.<br \/>\n    *   <strong>A\u011f Segmentasyonu:<\/strong> Elasticsearch d\u00fc\u011f\u00fcmlerini ve istemcilerini g\u00fcvenli bir a\u011f segmentine yerle\u015ftirin.<br \/>\n    *   <strong>G\u00fcvenlik Duvar\u0131:<\/strong> Sadece gerekli portlar\u0131 (9200 ve 9300) ve sadece g\u00fcvenilir IP adreslerinden gelen ba\u011flant\u0131lara izin verin.<\/p>\n<p>5.  <strong>Monitoring ve Alerting:<\/strong><br \/>\n    *   <strong>Kibana Monitoring:<\/strong> Kibana, Elasticsearch k\u00fcmenizin sa\u011fl\u0131\u011f\u0131n\u0131, performans\u0131n\u0131 ve metriklerini izlemek i\u00e7in g\u00fc\u00e7l\u00fc ara\u00e7lar sunar.<br \/>\n    *   <strong>Prometheus\/Grafana:<\/strong> Daha geli\u015fmi\u015f izleme ve uyar\u0131 sistemleri i\u00e7in Prometheus ve Grafana gibi ara\u00e7larla entegrasyon d\u00fc\u015f\u00fcnebilirsiniz.<\/p>\n<p>6.  <strong>Sistem Kaynaklar\u0131:<\/strong><br \/>\n    *   <strong>CPU:<\/strong> A\u011f\u0131r indeksleme ve karma\u015f\u0131k sorgular i\u00e7in yeterli CPU g\u00fcc\u00fc sa\u011flay\u0131n.<br \/>\n    *   <strong>RAM:<\/strong> Daha \u00f6nce bahsedilen heap ayarlar\u0131n\u0131n yan\u0131 s\u0131ra, i\u015fletim sistemi ve di\u011fer s\u00fcre\u00e7ler i\u00e7in de yeterli RAM b\u0131rak\u0131n.<br \/>\n    *   <strong>A\u011f Bant Geni\u015fli\u011fi:<\/strong> \u00d6zellikle \u00e7ok d\u00fc\u011f\u00fcml\u00fc k\u00fcmelerde ve y\u00fcksek veri hacimlerinde d\u00fc\u011f\u00fcmler aras\u0131 ileti\u015fim i\u00e7in yeterli a\u011f bant geni\u015fli\u011fi \u00f6nemlidir.<\/p>\n<p>7.  <strong>Yedekleme ve Geri Y\u00fckleme:<\/strong><br \/>\n    *   <strong>Snapshot API:<\/strong> Elasticsearch&#8217;\u00fcn Snapshot API&#8217;si, indekslerinizi ve k\u00fcme durumunuzu uzaktan depolara (\u00f6rne\u011fin S3, HDFS, NFS) yedeklemenizi sa\u011flar. D\u00fczenli yedeklemeler, veri kayb\u0131n\u0131 \u00f6nlemek i\u00e7in kritik \u00f6neme sahiptir.<\/p>\n<h2>Sorun Giderme<\/h2>\n<p>Kurulum veya yap\u0131land\u0131rma s\u0131ras\u0131nda kar\u015f\u0131la\u015fabilece\u011finiz baz\u0131 yayg\u0131n sorunlar ve \u00e7\u00f6z\u00fcmleri:<\/p>\n<p>1.  <strong>Elasticsearch Servisi Ba\u015flam\u0131yor:<\/strong><br \/>\n    *   <strong>Loglar\u0131 Kontrol Edin:<\/strong> En \u00f6nemli ad\u0131m, <code>\/var\/log\/elasticsearch\/<\/code> dizinindeki log dosyalar\u0131n\u0131 ve <code>journalctl -u elasticsearch -f<\/code> \u00e7\u0131kt\u0131s\u0131n\u0131 kontrol etmektir. Hata mesajlar\u0131 sorunun k\u00f6kenini genellikle a\u00e7\u0131k\u00e7a belirtir.<br \/>\n    *   <strong>JVM Ayarlar\u0131:<\/strong> <code>jvm.options<\/code> dosyas\u0131ndaki <code>-Xms<\/code> ve <code>-Xmx<\/code> de\u011ferlerinin sistem RAM&#8217;inin yar\u0131s\u0131ndan fazla olmad\u0131\u011f\u0131ndan ve 31 GB&#8217;\u0131 ge\u00e7medi\u011finden emin olun.<br \/>\n    *   <strong><code>vm.max_map_count<\/code>:<\/strong> Bu de\u011ferin en az 262144 olarak ayarland\u0131\u011f\u0131ndan emin olun.<br \/>\n    *   <strong>Dosya \u0130zinleri:<\/strong> Elasticsearch&#8217;\u00fcn veri ve log dizinlerine yazma izinleri oldu\u011fundan emin olun (<code>\/var\/lib\/elasticsearch<\/code>, <code>\/var\/log\/elasticsearch<\/code>). Genellikle <code>elasticsearch<\/code> kullan\u0131c\u0131s\u0131 bu dizinlere sahiptir.<\/p>\n<p>2.  <strong>Ba\u011flant\u0131 Sorunlar\u0131 (API&#8217;ye Eri\u015filemiyor):<\/strong><br \/>\n    *   <strong><code>network.host<\/code>:<\/strong> <code>\/etc\/elasticsearch\/elasticsearch.yml<\/code> dosyas\u0131ndaki <code>network.host<\/code> ayar\u0131n\u0131n do\u011fru oldu\u011fundan emin olun. Ba\u015fka makinelerden eri\u015fmek istiyorsan\u0131z <code>0.0.0.0<\/code> veya sunucunun IP adresi olmal\u0131d\u0131r.<br \/>\n    *   <strong>G\u00fcvenlik Duvar\u0131:<\/strong> 9200 ve 9300 portlar\u0131n\u0131n g\u00fcvenlik duvar\u0131nda a\u00e7\u0131k oldu\u011fundan emin olun (<code>firewall-cmd --list-all<\/code>).<br \/>\n    *   <strong>Servis \u00c7al\u0131\u015f\u0131yor mu?<\/strong>: <code>sudo systemctl status elasticsearch<\/code> komutuyla servisin aktif oldu\u011fundan emin olun.<\/p>\n<p>3.  <strong>Bellek Hatalar\u0131 (Out Of Memory):<\/strong><br \/>\n    *   <strong>Heap Ayarlar\u0131:<\/strong> <code>jvm.options<\/code> dosyas\u0131ndaki heap ayarlar\u0131n\u0131 tekrar kontrol edin. <code>Xms<\/code> ve <code>Xmx<\/code> de\u011ferleri uygun de\u011filse bu t\u00fcr hatalar alabilirsiniz.<br \/>\n    *   <strong>Swapping:<\/strong> Swapping&#8217;in devre d\u0131\u015f\u0131 b\u0131rak\u0131ld\u0131\u011f\u0131ndan veya <code>bootstrap.memory_lock: true<\/code> ayar\u0131n\u0131n etkin oldu\u011fundan emin olun.<\/p>\n<p>4.  <strong>K\u00fcme Ke\u015fif Sorunlar\u0131 (\u00c7ok D\u00fc\u011f\u00fcml\u00fc Ortamda):<\/strong><br \/>\n    *   <strong><code>discovery.seed_hosts<\/code>:<\/strong> Bu ayar\u0131n t\u00fcm d\u00fc\u011f\u00fcmlerde do\u011fru bir \u015fekilde yap\u0131land\u0131r\u0131ld\u0131\u011f\u0131ndan ve d\u00fc\u011f\u00fcmlerin birbirine eri\u015febildi\u011finden emin olun.<br \/>\n    *   <strong><code>cluster.initial_master_nodes<\/code>:<\/strong> Yeni bir k\u00fcme ba\u015flat\u0131rken bu ayar\u0131n do\u011fru bir \u015fekilde listelendi\u011finden emin olun.<\/p>\n<h2>Sonu\u00e7<\/h2>\n<p>Bu kapsaml\u0131 rehberde, CentOS 7 i\u015fletim sistemi \u00fczerinde Elasticsearch&#8217;\u00fcn kurulumu ve temel yap\u0131land\u0131rmas\u0131 ad\u0131mlar\u0131n\u0131 detayl\u0131 bir \u015fekilde ele ald\u0131k. Java&#8217;n\u0131n kurulmas\u0131ndan Elasticsearch deposunun eklenmesine, ana yap\u0131land\u0131rma dosyas\u0131n\u0131n d\u00fczenlenmesinden servis y\u00f6netimine ve g\u00fcvenlik duvar\u0131 ayarlar\u0131na kadar t\u00fcm kritik s\u00fcre\u00e7leri ad\u0131m ad\u0131m inceledik. Ayr\u0131ca, kurulumun do\u011frulanmas\u0131 i\u00e7in <code>curl<\/code> komutlar\u0131n\u0131 ve Elasticsearch ile temel etkile\u015fim \u00f6rneklerini sunduk.<\/p>\n<p>Unutulmamal\u0131d\u0131r ki, bu rehber tek d\u00fc\u011f\u00fcml\u00fc bir Elasticsearch kurulumu i\u00e7in temel bir ba\u015flang\u0131\u00e7 noktas\u0131d\u0131r. \u00dcretim ortamlar\u0131nda veya daha karma\u015f\u0131k senaryolarda, \u00e7ok d\u00fc\u011f\u00fcml\u00fc k\u00fcme yap\u0131land\u0131rmas\u0131, geli\u015fmi\u015f g\u00fcvenlik \u00f6nlemleri (X-Pack), yedekleme stratejileri ve kapsaml\u0131 izleme gibi konulara daha fazla odaklanman\u0131z gerekecektir.<\/p>\n<p>Elasticsearch, b\u00fcy\u00fck veri k\u00fcmelerini y\u00f6netmek ve analiz etmek i\u00e7in inan\u0131lmaz derecede g\u00fc\u00e7l\u00fc ve esnek bir ara\u00e7t\u0131r. Bu rehberdeki ad\u0131mlar\u0131 takip ederek, kendi Elasticsearch ortam\u0131n\u0131z\u0131 ba\u015far\u0131yla kurmu\u015f ve veri analizi yolculu\u011funuza sa\u011flam bir ba\u015flang\u0131\u00e7 yapm\u0131\u015f olacaks\u0131n\u0131z. Bir sonraki ad\u0131m olarak, Elasticsearch verilerinizi g\u00f6rselle\u015ftirmek ve sorgulamak i\u00e7in Kibana&#8217;y\u0131 kurmay\u0131 d\u00fc\u015f\u00fcnebilirsiniz.<\/body><\/p>\n","protected":false},"excerpt":{"rendered":"Elasticsearch&#8217;\u00fc CentOS 7 \u00dczerine Kurulumu ve Yap\u0131land\u0131rmas\u0131: Kapsaml\u0131 Bir Rehber\nGiri\u015f\nG\u00fcn\u00fcm\u00fcz\u00fcn veri odakl\u0131 d\u00fcnyas\u0131nda, b\u00fcy\u00fck hacim","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":[241],"tags":[],"class_list":{"0":"post-33096","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-linux","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>Elasticsearch&#039;\u00fc CentOS 7 \u00dczerine Kurulumu ve Yap\u0131land\u0131rmas\u0131: Kapsaml\u0131 Bir Rehber - 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\/elasticsearchu-centos-7-uzerine-kurulumu-ve-yapilandirmasi-kapsamli-bir-rehber\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Elasticsearch&#039;\u00fc CentOS 7 \u00dczerine Kurulumu ve Yap\u0131land\u0131rmas\u0131: Kapsaml\u0131 Bir Rehber\" \/>\n<meta property=\"og:description\" content=\"Elasticsearch&#039;\u00fc CentOS 7 \u00dczerine Kurulumu ve Yap\u0131land\u0131rmas\u0131: Kapsaml\u0131 Bir Rehber Giri\u015f G\u00fcn\u00fcm\u00fcz\u00fcn veri odakl\u0131 d\u00fcnyas\u0131nda, b\u00fcy\u00fck hacim\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/elasticsearchu-centos-7-uzerine-kurulumu-ve-yapilandirmasi-kapsamli-bir-rehber\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2025-10-29T09:41:18+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=\"21 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/elasticsearchu-centos-7-uzerine-kurulumu-ve-yapilandirmasi-kapsamli-bir-rehber\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/elasticsearchu-centos-7-uzerine-kurulumu-ve-yapilandirmasi-kapsamli-bir-rehber\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"Elasticsearch&#8217;\u00fc CentOS 7 \u00dczerine Kurulumu ve Yap\u0131land\u0131rmas\u0131: Kapsaml\u0131 Bir Rehber\",\"datePublished\":\"2025-10-29T09:41:18+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/elasticsearchu-centos-7-uzerine-kurulumu-ve-yapilandirmasi-kapsamli-bir-rehber\/\"},\"wordCount\":3470,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"articleSection\":[\"Linux\"],\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/elasticsearchu-centos-7-uzerine-kurulumu-ve-yapilandirmasi-kapsamli-bir-rehber\/#respond\"]}],\"copyrightYear\":\"2025\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/elasticsearchu-centos-7-uzerine-kurulumu-ve-yapilandirmasi-kapsamli-bir-rehber\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/elasticsearchu-centos-7-uzerine-kurulumu-ve-yapilandirmasi-kapsamli-bir-rehber\/\",\"name\":\"Elasticsearch'\u00fc CentOS 7 \u00dczerine Kurulumu ve Yap\u0131land\u0131rmas\u0131: Kapsaml\u0131 Bir Rehber - Kodlar\u0131n Gizemli D\u00fcnyas\u0131\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2025-10-29T09:41:18+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/elasticsearchu-centos-7-uzerine-kurulumu-ve-yapilandirmasi-kapsamli-bir-rehber\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/elasticsearchu-centos-7-uzerine-kurulumu-ve-yapilandirmasi-kapsamli-bir-rehber\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/elasticsearchu-centos-7-uzerine-kurulumu-ve-yapilandirmasi-kapsamli-bir-rehber\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Elasticsearch&#8217;\u00fc CentOS 7 \u00dczerine Kurulumu ve Yap\u0131land\u0131rmas\u0131: Kapsaml\u0131 Bir Rehber\"}]},{\"@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":"Elasticsearch'\u00fc CentOS 7 \u00dczerine Kurulumu ve Yap\u0131land\u0131rmas\u0131: Kapsaml\u0131 Bir Rehber - 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\/elasticsearchu-centos-7-uzerine-kurulumu-ve-yapilandirmasi-kapsamli-bir-rehber\/","og_locale":"tr_TR","og_type":"article","og_title":"Elasticsearch'\u00fc CentOS 7 \u00dczerine Kurulumu ve Yap\u0131land\u0131rmas\u0131: Kapsaml\u0131 Bir Rehber","og_description":"Elasticsearch'\u00fc CentOS 7 \u00dczerine Kurulumu ve Yap\u0131land\u0131rmas\u0131: Kapsaml\u0131 Bir Rehber Giri\u015f G\u00fcn\u00fcm\u00fcz\u00fcn veri odakl\u0131 d\u00fcnyas\u0131nda, b\u00fcy\u00fck hacim","og_url":"https:\/\/fatihsoysal.com\/blog\/elasticsearchu-centos-7-uzerine-kurulumu-ve-yapilandirmasi-kapsamli-bir-rehber\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2025-10-29T09:41:18+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"21 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/elasticsearchu-centos-7-uzerine-kurulumu-ve-yapilandirmasi-kapsamli-bir-rehber\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/elasticsearchu-centos-7-uzerine-kurulumu-ve-yapilandirmasi-kapsamli-bir-rehber\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"Elasticsearch&#8217;\u00fc CentOS 7 \u00dczerine Kurulumu ve Yap\u0131land\u0131rmas\u0131: Kapsaml\u0131 Bir Rehber","datePublished":"2025-10-29T09:41:18+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/elasticsearchu-centos-7-uzerine-kurulumu-ve-yapilandirmasi-kapsamli-bir-rehber\/"},"wordCount":3470,"commentCount":0,"publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"articleSection":["Linux"],"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fatihsoysal.com\/blog\/elasticsearchu-centos-7-uzerine-kurulumu-ve-yapilandirmasi-kapsamli-bir-rehber\/#respond"]}],"copyrightYear":"2025","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/elasticsearchu-centos-7-uzerine-kurulumu-ve-yapilandirmasi-kapsamli-bir-rehber\/","url":"https:\/\/fatihsoysal.com\/blog\/elasticsearchu-centos-7-uzerine-kurulumu-ve-yapilandirmasi-kapsamli-bir-rehber\/","name":"Elasticsearch'\u00fc CentOS 7 \u00dczerine Kurulumu ve Yap\u0131land\u0131rmas\u0131: Kapsaml\u0131 Bir Rehber - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2025-10-29T09:41:18+00:00","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/elasticsearchu-centos-7-uzerine-kurulumu-ve-yapilandirmasi-kapsamli-bir-rehber\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/elasticsearchu-centos-7-uzerine-kurulumu-ve-yapilandirmasi-kapsamli-bir-rehber\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/elasticsearchu-centos-7-uzerine-kurulumu-ve-yapilandirmasi-kapsamli-bir-rehber\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Elasticsearch&#8217;\u00fc CentOS 7 \u00dczerine Kurulumu ve Yap\u0131land\u0131rmas\u0131: Kapsaml\u0131 Bir Rehber"}]},{"@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\/33096","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=33096"}],"version-history":[{"count":1,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/33096\/revisions"}],"predecessor-version":[{"id":33097,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/33096\/revisions\/33097"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=33096"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=33096"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=33096"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}