{"id":41926,"date":"2026-05-20T17:01:07","date_gmt":"2026-05-20T14:01:07","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/?p=41926"},"modified":"2026-05-20T17:01:37","modified_gmt":"2026-05-20T14:01:37","slug":"debian-9-uzerinde-apache-kafka-kurulumu-ve-yapilandirma-kilavuzu","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/debian-9-uzerinde-apache-kafka-kurulumu-ve-yapilandirma-kilavuzu\/","title":{"rendered":"Debian 9 \u00dczerinde Apache Kafka Kurulumu ve Yap\u0131land\u0131rma K\u0131lavuzu"},"content":{"rendered":"<h2>Debian 9 \u00dczerinde Apache Kafka Kurulumu ve Yap\u0131land\u0131rma K\u0131lavuzu<\/h2>\n<p>G\u00fcn\u00fcm\u00fcz\u00fcn veri odakl\u0131 d\u00fcnyas\u0131nda, b\u00fcy\u00fck miktarda verinin ger\u00e7ek zamanl\u0131 olarak i\u015flenmesi, analiz edilmesi ve sistemler aras\u0131nda g\u00fcvenli bir \u015fekilde aktar\u0131lmas\u0131 kritik bir \u00f6neme sahiptir. Geleneksel veritabanlar\u0131 ve mesajla\u015fma kuyruklar\u0131, saniyede milyonlarca olay\u0131n \u00fcretildi\u011fi modern mikro hizmet mimarilerinde ve b\u00fcy\u00fck veri senaryolar\u0131nda yetersiz kalabilmektedir. \u0130\u015fte bu noktada Apache Kafka devreye girmektedir. Apache Kafka; y\u00fcksek performansl\u0131, \u00f6l\u00e7eklenebilir, hata toleransl\u0131 ve da\u011f\u0131t\u0131k bir olay ak\u0131\u015f (event streaming) platformudur. LinkedIn taraf\u0131ndan geli\u015ftirilen ve daha sonra Apache Yaz\u0131l\u0131m Vakf\u0131&#8217;na ba\u011f\u0131\u015flanan Kafka, g\u00fcn\u00fcm\u00fczde Netflix, Uber, Spotify gibi d\u00fcnya devi teknoloji \u015firketleri taraf\u0131ndan yo\u011fun bir \u015fekilde kullan\u0131lmaktad\u0131r.<\/p>\n<p>Bu makalede, kararl\u0131l\u0131\u011f\u0131 ve g\u00fcvenilirli\u011fi ile bilinen Debian 9 (Stretch) i\u015fletim sistemi \u00fczerinde ad\u0131m ad\u0131m Apache Kafka kurulumunu, yap\u0131land\u0131r\u0131lmas\u0131n\u0131 ve temel kullan\u0131m senaryolar\u0131n\u0131 ele alaca\u011f\u0131z. Kurulumu ger\u00e7ekle\u015ftirirken g\u00fcvenlik standartlar\u0131na uygun olarak \u00f6zel bir sistem kullan\u0131c\u0131s\u0131 olu\u015fturacak, Kafka&#8217;n\u0131n ba\u011f\u0131ml\u0131l\u0131\u011f\u0131 olan Java Runtime Environment (JRE) kurulumunu yapacak, sistem servislerini (systemd) yap\u0131land\u0131racak ve son olarak sistemin d\u00fczg\u00fcn \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131 do\u011frulamak i\u00e7in temel bir mesajla\u015fma testi ger\u00e7ekle\u015ftirece\u011fiz.<\/p>\n<h3>Gereksinimler ve \u00d6n Haz\u0131rl\u0131k<\/h3>\n<p>Kuruluma ba\u015flamadan \u00f6nce, Debian 9 sunucunuzun minimum sistem gereksinimlerini kar\u015f\u0131lad\u0131\u011f\u0131ndan emin olman\u0131z gerekir. Apache Kafka, bellek (RAM) kullan\u0131m\u0131 konusunda olduk\u00e7a hassas bir mimariye sahiptir. Hem Zookeeper hem de Kafka broker bile\u015fenleri JVM (Java Virtual Machine) \u00fczerinde \u00e7al\u0131\u015ft\u0131\u011f\u0131 i\u00e7in sisteminizde en az 2 GB RAM bulunmas\u0131 \u00f6nerilir. \u00dcretim (production) ortamlar\u0131 i\u00e7in ise bu miktar \u00e7ok daha y\u00fcksek olmal\u0131d\u0131r. Bu k\u0131lavuzdaki ad\u0131mlar\u0131 uygulamak i\u00e7in a\u015fa\u011f\u0131daki gereksinimlere sahip olmal\u0131s\u0131n\u0131z:<\/p>\n<ul>\n<li>Temiz bir Debian 9 (Stretch) kurulumu.<\/li>\n<li>Sudo yetkilerine sahip root d\u0131\u015f\u0131 (non-root) bir kullan\u0131c\u0131 hesab\u0131.<\/li>\n<li>\u0130nternet ba\u011flant\u0131s\u0131 (gerekli paketlerin indirilebilmesi i\u00e7in).<\/li>\n<li>En az 2 GB RAM ve 2 vCPU i\u015flemci g\u00fcc\u00fc.<\/li>\n<\/ul>\n<p>\u0130lk olarak, sunucumuzdaki mevcut paket listesini g\u00fcncelleyelim ve kurulu olan paketleri en son s\u00fcr\u00fcmlerine y\u00fckseltelim. Bu i\u015flem, kurulum s\u0131ras\u0131nda ya\u015fanabilecek olas\u0131 ba\u011f\u0131ml\u0131l\u0131k \u00e7ak\u0131\u015fmalar\u0131n\u0131 \u00f6nleyecektir. Terminale \u015fu komutlar\u0131 girerek ba\u015flay\u0131n:<\/p>\n<pre><code>sudo apt update\nsudo apt upgrade -y<\/code><\/pre>\n<p>Sistem g\u00fcncellendikten sonra, dosyalar\u0131 indirmek ve ar\u015fivden \u00e7\u0131karmak i\u00e7in kullanaca\u011f\u0131m\u0131z temel ara\u00e7lar\u0131n (wget, curl, tar) sistemde kurulu oldu\u011fundan emin olal\u0131m:<\/p>\n<pre><code>sudo apt install wget curl tar -y<\/code><\/pre>\n<h3>Ad\u0131m 1: Java Runtime Environment (JRE) Kurulumu<\/h3>\n<p>Apache Kafka ve Apache Zookeeper, Java dilinde yaz\u0131lm\u0131\u015ft\u0131r ve \u00e7al\u0131\u015fabilmek i\u00e7in bir Java Sanal Makinesi&#8217;ne (JVM) ihtiya\u00e7 duyarlar. Kafka, Java 8 ve \u00fczeri s\u00fcr\u00fcmleri desteklemektedir. Debian 9 depolar\u0131nda varsay\u0131lan olarak OpenJDK 8 bulunmaktad\u0131r. Bu rehberde, kararl\u0131 \u00e7al\u0131\u015fmas\u0131 ve geni\u015f uyumlulu\u011fu nedeniyle OpenJDK 8 kurulumunu ger\u00e7ekle\u015ftirece\u011fiz.<\/p>\n<p>Java&#8217;y\u0131 y\u00fcklemek i\u00e7in a\u015fa\u011f\u0131daki komutu \u00e7al\u0131\u015ft\u0131r\u0131n:<\/p>\n<pre><code>sudo apt install default-jre -y<\/code><\/pre>\n<p>Kurulum tamamland\u0131ktan sonra, Java&#8217;n\u0131n ba\u015far\u0131yla y\u00fcklendi\u011fini ve do\u011fru s\u00fcr\u00fcm\u00fcn aktif oldu\u011funu do\u011frulamak i\u00e7in Java s\u00fcr\u00fcm kontrol\u00fc yapal\u0131m:<\/p>\n<pre><code>java -version<\/code><\/pre>\n<p>Bu komutun \u00e7\u0131kt\u0131s\u0131nda a\u015fa\u011f\u0131dakine benzer bir ifade g\u00f6rmelisiniz:<\/p>\n<pre><code>openjdk version \"1.8.0_292\"\nOpenJDK Runtime Environment (build 1.8.0_292-8u292-b10-1~deb9u1-b10)\nOpenJDK 64-Bit Server VM (build 25.292-b10, mixed mode)<\/code><\/pre>\n<p>Java ortam de\u011fi\u015fkenlerinin sistem genelinde tan\u0131mlanmas\u0131, Java tabanl\u0131 uygulamalar\u0131n kararl\u0131 \u00e7al\u0131\u015fmas\u0131 a\u00e7\u0131s\u0131ndan \u00f6nemlidir. \u00d6zellikle <code>JAVA_HOME<\/code> de\u011fi\u015fkeninin tan\u0131mlanmas\u0131 gerekir. Debian 9 \u00fczerinde Java&#8217;n\u0131n kurulu oldu\u011fu varsay\u0131lan dizini bulmak i\u00e7in \u015fu komutu kullanabilirsiniz:<\/p>\n<pre><code>sudo update-alternatives --config java<\/code><\/pre>\n<p>Bu komut size Java&#8217;n\u0131n yolunu g\u00f6sterecektir (\u00f6rne\u011fin: <code>\/usr\/lib\/jvm\/java-8-openjdk-amd64\/jre\/bin\/java<\/code>). Buradan yola \u00e7\u0131karak <code>JAVA_HOME<\/code> yolunu <code>\/usr\/lib\/jvm\/java-8-openjdk-amd64<\/code> olarak belirleyebiliriz. Bu de\u011fi\u015fkeni kal\u0131c\u0131 hale getirmek i\u00e7in <code>\/etc\/environment<\/code> dosyas\u0131n\u0131 d\u00fczenleyelim:<\/p>\n<pre><code>sudo nano \/etc\/environment<\/code><\/pre>\n<p>Dosyan\u0131n sonuna a\u015fa\u011f\u0131daki sat\u0131r\u0131 ekleyin:<\/p>\n<pre><code>JAVA_HOME=\"\/usr\/lib\/jvm\/java-8-openjdk-amd64\"<\/code><\/pre>\n<p>Dosyay\u0131 kaydedip kapat\u0131n (Nano edit\u00f6r\u00fcnde Ctrl+O, Enter ve ard\u0131ndan Ctrl+X ile). De\u011fi\u015fikliklerin mevcut oturumda ge\u00e7erli olmas\u0131 i\u00e7in dosyay\u0131 kaynak olarak y\u00fckleyin:<\/p>\n<pre><code>source \/etc\/environment<\/code><\/pre>\n<p>De\u011fi\u015fkenin do\u011fru tan\u0131mland\u0131\u011f\u0131n\u0131 do\u011frulamak i\u00e7in \u015fu komutu \u00e7al\u0131\u015ft\u0131rabilirsiniz:<\/p>\n<pre><code>echo $JAVA_HOME<\/code><\/pre>\n<h3>Ad\u0131m 2: Kafka \u0130\u00e7in \u00d6zel Kullan\u0131c\u0131 Olu\u015fturma<\/h3>\n<p>G\u00fcvenlik a\u00e7\u0131s\u0131ndan, Apache Kafka gibi a\u011f \u00fczerinden hizmet veren servislerin root yetkileriyle \u00e7al\u0131\u015ft\u0131r\u0131lmas\u0131 kesinlikle \u00f6nerilmez. Olas\u0131 bir g\u00fcvenlik a\u00e7\u0131\u011f\u0131nda sald\u0131rganlar\u0131n t\u00fcm sunucuyu ele ge\u00e7irmesini engellemek amac\u0131yla, yaln\u0131zca Kafka servislerini \u00e7al\u0131\u015ft\u0131racak s\u0131n\u0131rland\u0131r\u0131lm\u0131\u015f yetkilere sahip \u00f6zel bir sistem kullan\u0131c\u0131s\u0131 olu\u015fturmal\u0131y\u0131z.<\/p>\n<p>Bu ama\u00e7la <code>kafka<\/code> ad\u0131nda yeni bir kullan\u0131c\u0131 olu\u015ftural\u0131m:<\/p>\n<pre><code>sudo useradd -m -r -d \/home\/kafka -s \/bin\/bash kafka<\/code><\/pre>\n<p>Bu komuttaki parametrelerin a\u00e7\u0131klamalar\u0131 \u015funlard\u0131r:<\/p>\n<ul>\n<li><code>-m<\/code>: Kullan\u0131c\u0131 i\u00e7in bir ev (home) dizini olu\u015fturur.<\/li>\n<li><code>-r<\/code>: Bu kullan\u0131c\u0131n\u0131n bir sistem kullan\u0131c\u0131s\u0131 oldu\u011funu belirtir (\u015fifre ile do\u011frudan giri\u015f yapamaz).<\/li>\n<li><code>-d \/home\/kafka<\/code>: Ev dizininin yolunu belirler.<\/li>\n<li><code>-s \/bin\/bash<\/code>: Kullan\u0131c\u0131n\u0131n kullanaca\u011f\u0131 varsay\u0131lan kabu\u011fu (shell) tan\u0131mlar.<\/li>\n<\/ul>\n<p>\u015eimdi bu kullan\u0131c\u0131ya ge\u00e7ici olarak sudo yetkisi verelim (kurulum ad\u0131mlar\u0131n\u0131 bu kullan\u0131c\u0131 ile ger\u00e7ekle\u015ftirece\u011fiz, kurulum bittikten sonra g\u00fcvenli\u011fi art\u0131rmak ad\u0131na bu yetkiyi kald\u0131rabilirsiniz):<\/p>\n<pre><code>sudo usermod -aG sudo kafka<\/code><\/pre>\n<p>Olu\u015fturdu\u011fumuz <code>kafka<\/code> kullan\u0131c\u0131s\u0131n\u0131n oturumuna ge\u00e7i\u015f yapal\u0131m:<\/p>\n<pre><code>su - kafka<\/code><\/pre>\n<h3>Ad\u0131m 3: Apache Kafka&#8217;n\u0131n \u0130ndirilmesi ve Kurulmas\u0131<\/h3>\n<p>Kafka&#8217;y\u0131 kurmak i\u00e7in Apache&#8217;nin resmi web sitesinden en g\u00fcncel ve kararl\u0131 ikili (binary) da\u011f\u0131t\u0131m\u0131n\u0131 indirmemiz gerekmektedir. Kafka s\u00fcr\u00fcmleri genellikle <code>Kafka_S\u00fcr\u00fcm\u00fc-Scala_S\u00fcr\u00fcm\u00fc<\/code> format\u0131nda adland\u0131r\u0131l\u0131r. Bu rehberde, Scala 2.13 ile derlenmi\u015f olan kararl\u0131 bir Kafka s\u00fcr\u00fcm\u00fcn\u00fc (\u00f6rne\u011fin 3.4.0) indirece\u011fiz.<\/p>\n<p>\u00d6ncelikle ge\u00e7ici indirme i\u015flemlerimiz i\u00e7in bir dizin olu\u015ftural\u0131m ve oraya ge\u00e7elim:<\/p>\n<pre><code>mkdir ~\/indirmeler\ncd ~\/indirmeler<\/code><\/pre>\n<p>\u015eimdi <code>wget<\/code> kullanarak Kafka ar\u015fiv dosyas\u0131n\u0131 indirelim:<\/p>\n<pre><code>wget https:\/\/archive.apache.org\/dist\/kafka\/3.4.0\/kafka_2.13-3.4.0.tgz<\/code><\/pre>\n<p>\u0130ndirme i\u015flemi tamamland\u0131ktan sonra, indirilen dosyan\u0131n b\u00fct\u00fcnl\u00fc\u011f\u00fcn\u00fc do\u011frulamak iyi bir uygulamad\u0131r. Ancak bu ad\u0131m\u0131 ge\u00e7erek do\u011frudan ar\u015fiv dosyas\u0131n\u0131 a\u00e7abiliriz. Ar\u015fivi \u00e7\u0131karmak ve Kafka&#8217;y\u0131 \u00e7al\u0131\u015ft\u0131raca\u011f\u0131m\u0131z kal\u0131c\u0131 dizine ta\u015f\u0131mak i\u00e7in a\u015fa\u011f\u0131daki komutlar\u0131 uygulay\u0131n:<\/p>\n<pre><code>mkdir ~\/kafka\ntar -xvzf kafka_2.13-3.4.0.tgz -C ~\/kafka --strip-components=1<\/code><\/pre>\n<p><code>--strip-components=1<\/code> parametresi, ar\u015fivin i\u00e7erisindeki ana klas\u00f6r\u00fc atlayarak t\u00fcm i\u00e7eri\u011fi do\u011frudan olu\u015fturdu\u011fumuz <code>~\/kafka<\/code> dizininin alt\u0131na a\u00e7mam\u0131z\u0131 sa\u011flar. B\u00f6ylece temiz bir dizin yap\u0131s\u0131 elde etmi\u015f oluruz. Klas\u00f6r\u00fcn i\u00e7eri\u011fini kontrol edelim:<\/p>\n<pre><code>ls -la ~\/kafka<\/code><\/pre>\n<p>Bu dizinde <code>bin<\/code> (\u00e7al\u0131\u015ft\u0131r\u0131labilir scriptler), <code>config<\/code> (yap\u0131land\u0131rma dosyalar\u0131) ve <code>libs<\/code> (k\u00fct\u00fcphaneler) gibi temel klas\u00f6rleri g\u00f6rmelisiniz.<\/p>\n<h3>Ad\u0131m 4: Apache Kafka ve Zookeeper Yap\u0131land\u0131rmas\u0131<\/h3>\n<p>Geleneksel mimaride Apache Kafka, k\u00fcme (cluster) y\u00f6netimi, metadata depolama, lider se\u00e7imi ve d\u00fc\u011f\u00fcmler (nodes) aras\u0131 koordinasyon i\u00e7in Apache Zookeeper&#8217;a ihtiya\u00e7 duyar. Her ne kadar Kafka&#8217;n\u0131n yeni s\u00fcr\u00fcmlerinde KRaft (Kafka Raft Metadata Mode) ile Zookeeper ba\u011f\u0131ml\u0131l\u0131\u011f\u0131 ortadan kalkmaya ba\u015flasa da, Debian 9 gibi eski sistemlerde ve mevcut \u00fcretim ortamlar\u0131n\u0131n b\u00fcy\u00fck bir k\u0131sm\u0131nda Zookeeper kullan\u0131m\u0131 hala yayg\u0131nd\u0131r. Bu nedenle rehberimizde Zookeeper tabanl\u0131 kuruluma odaklanaca\u011f\u0131z.<\/p>\n<p>Kafka yap\u0131land\u0131rma dosyalar\u0131 <code>~\/kafka\/config\/<\/code> dizini alt\u0131nda yer al\u0131r. \u0130lk olarak Kafka&#8217;n\u0131n veri depolama dizinini yap\u0131land\u0131raca\u011f\u0131z. Varsay\u0131lan olarak Kafka, verilerini ge\u00e7ici bir dizin olan <code>\/tmp\/kafka-logs<\/code> alt\u0131nda saklar. Ancak sunucu yeniden ba\u015flat\u0131ld\u0131\u011f\u0131nda <code>\/tmp<\/code> dizini temizlenebilece\u011fi i\u00e7in bu durum veri kayb\u0131na yol a\u00e7ar. Bu y\u00fczden kal\u0131c\u0131 bir veri dizini olu\u015fturmal\u0131y\u0131z.<\/p>\n<p>Veri depolama dizinlerini olu\u015ftural\u0131m:<\/p>\n<pre><code>mkdir -p ~\/kafka\/data\/zookeeper\nmkdir -p ~\/kafka\/data\/kafka<\/code><\/pre>\n<h4>Zookeeper Yap\u0131land\u0131rmas\u0131<\/h4>\n<p>Zookeeper yap\u0131land\u0131rma dosyas\u0131n\u0131 (<code>zookeeper.properties<\/code>) d\u00fczenleyerek veri dizinini g\u00fcncelleyelim:<\/p>\n<pre><code>nano ~\/kafka\/config\/zookeeper.properties<\/code><\/pre>\n<p>Dosya i\u00e7erisindeki <code>dataDir<\/code> parametresini bulun ve olu\u015fturdu\u011fumuz yeni dizin ile de\u011fi\u015ftirin:<\/p>\n<pre><code>dataDir=\/home\/kafka\/kafka\/data\/zookeeper<\/code><\/pre>\n<p>Varsay\u0131lan olarak Zookeeper 2181 numaral\u0131 portu kullan\u0131r. E\u011fer bu portu de\u011fi\u015ftirmek istemiyorsan\u0131z di\u011fer ayarlara dokunman\u0131za gerek yoktur. Dosyay\u0131 kaydedip kapat\u0131n.<\/p>\n<h4>Kafka Yap\u0131land\u0131rmas\u0131<\/h4>\n<p>\u015eimdi ana Kafka yap\u0131land\u0131rma dosyas\u0131n\u0131 (<code>server.properties<\/code>) d\u00fczenleyelim:<\/p>\n<pre><code>nano ~\/kafka\/config\/server.properties<\/code><\/pre>\n<p>Bu dosyada de\u011fi\u015ftirilmesi veya do\u011frulanmas\u0131 gereken birka\u00e7 \u00f6nemli parametre bulunmaktad\u0131r:<\/p>\n<ol>\n<li><strong>log.dirs:<\/strong> Kafka&#8217;n\u0131n mesaj loglar\u0131n\u0131 saklayaca\u011f\u0131 dizindir. Varsay\u0131lan de\u011feri <code>\/tmp\/kafka-logs<\/code> olan bu parametreyi olu\u015fturdu\u011fumuz kal\u0131c\u0131 dizin ile de\u011fi\u015ftirmeliyiz:\n<pre><code>log.dirs=\/home\/kafka\/kafka\/data\/kafka<\/code><\/pre>\n<\/li>\n<li><strong>delete.topic.enable:<\/strong> Varsay\u0131lan olarak Kafka&#8217;da olu\u015fturulan konular\u0131n (topics) silinmesi devre d\u0131\u015f\u0131 b\u0131rak\u0131lm\u0131\u015f olabilir. Konular\u0131 kolayca silebilmek i\u00e7in dosyan\u0131n sonuna \u015fu sat\u0131r\u0131 ekleyin:\n<pre><code>delete.topic.enable=true<\/code><\/pre>\n<\/li>\n<li><strong>listeners:<\/strong> Kafka&#8217;n\u0131n d\u0131\u015f d\u00fcnyadan gelen ba\u011flant\u0131lar\u0131 kabul edece\u011fi adres ve port bilgisidir. E\u011fer Kafka&#8217;ya sadece yerel makineden eri\u015filecekse varsay\u0131lan ayarlar yeterlidir. Ancak d\u0131\u015far\u0131dan eri\u015fim sa\u011flanacaksa a\u015fa\u011f\u0131daki sat\u0131r\u0131 bulun ve kendi sunucu IP adresinizle g\u00fcncelleyin (sat\u0131r ba\u015f\u0131ndaki <code>#<\/code> i\u015faretini kald\u0131rmay\u0131 unutmay\u0131n):\n<pre><code>listeners=PLAINTEXT:\/\/your_server_ip:9092<\/code><\/pre>\n<p>        <em>Not: Yerel testler i\u00e7in bu sat\u0131r\u0131 <code>PLAINTEXT:\/\/localhost:9092<\/code> \u015feklinde b\u0131rakabilirsiniz.<\/em>\n    <\/li>\n<li><strong>zookeeper.connect:<\/strong> Kafka&#8217;n\u0131n Zookeeper&#8217;a ba\u011flanaca\u011f\u0131 adrestir. Zookeeper ayn\u0131 sunucuda \u00e7al\u0131\u015faca\u011f\u0131 i\u00e7in bu de\u011fer varsay\u0131lan olarak kalabilir:\n<pre><code>zookeeper.connect=localhost:2181<\/code><\/pre>\n<\/li>\n<\/ol>\n<p>Gerekli de\u011fi\u015fiklikleri yapt\u0131ktan sonra dosyay\u0131 kaydedip kapat\u0131n.<\/p>\n<h3>Ad\u0131m 5: Systemd Servis Dosyalar\u0131n\u0131n Olu\u015fturulmas\u0131<\/h3>\n<p>Kafka ve Zookeeper&#8217;\u0131 arka planda s\u00fcrekli \u00e7al\u0131\u015fan servisler haline getirmek ve sistem a\u00e7\u0131l\u0131\u015f\u0131nda otomatik olarak ba\u015flamalar\u0131n\u0131 sa\u011flamak i\u00e7in <code>systemd<\/code> servis dosyalar\u0131 olu\u015fturmam\u0131z gerekir. Bu sayede servisleri <code>systemctl<\/code> komutlar\u0131 ile kolayca y\u00f6netebilir, \u00e7\u00f6kmeleri durumunda otomatik olarak yeniden ba\u015flat\u0131lmalar\u0131n\u0131 sa\u011flayabiliriz.<\/p>\n<p>\u00d6ncelikle root yetkilerine sahip bir kullan\u0131c\u0131ya geri d\u00f6nmemiz veya komutlar\u0131n ba\u015f\u0131na <code>sudo<\/code> eklememiz gerekir. Servis dosyalar\u0131n\u0131 olu\u015fturmak i\u00e7in a\u015fa\u011f\u0131daki ad\u0131mlar\u0131 takip edin.<\/p>\n<h4>Zookeeper Systemd Servis Dosyas\u0131<\/h4>\n<p>Zookeeper servisi i\u00e7in yeni bir unit dosyas\u0131 olu\u015ftural\u0131m:<\/p>\n<pre><code>sudo nano \/etc\/systemd\/system\/zookeeper.service<\/code><\/pre>\n<p>A\u015fa\u011f\u0131daki yap\u0131land\u0131rma metnini dosyaya yap\u0131\u015ft\u0131r\u0131n:<\/p>\n<pre><code>[Unit]\nDescription=Apache Zookeeper Service\nRequires=network.target remote-fs.target\nAfter=network.target remote-fs.target\n\n[Service]\nType=simple\nUser=kafka\nExecStart=\/home\/kafka\/kafka\/bin\/zookeeper-server-start.sh \/home\/kafka\/kafka\/config\/zookeeper.properties\nExecStop=\/home\/kafka\/kafka\/bin\/zookeeper-server-stop.sh\nRestart=on-abnormal\n\n[Install]\nWantedBy=multi-user.target<\/code><\/pre>\n<p>Dosyay\u0131 kaydedip kapat\u0131n.<\/p>\n<h4>Kafka Systemd Servis Dosyas\u0131<\/h4>\n<p>\u015eimdi Kafka servisi i\u00e7in unit dosyas\u0131n\u0131 olu\u015ftural\u0131m. Kafka&#8217;n\u0131n \u00e7al\u0131\u015fabilmesi i\u00e7in Zookeeper&#8217;\u0131n \u00e7al\u0131\u015f\u0131r durumda olmas\u0131 gerekti\u011finden, bu dosyada Zookeeper ba\u011f\u0131ml\u0131l\u0131\u011f\u0131n\u0131 belirtece\u011fiz:<\/p>\n<pre><code>sudo nano \/etc\/systemd\/system\/kafka.service<\/code><\/pre>\n<p>A\u015fa\u011f\u0131daki yap\u0131land\u0131rma metnini dosyaya yap\u0131\u015ft\u0131r\u0131n:<\/p>\n<pre><code>[Unit]\nDescription=Apache Kafka Broker\nRequires=zookeeper.service\nAfter=zookeeper.service\n\n[Service]\nType=simple\nUser=kafka\nEnvironment=\"JAVA_HOME=\/usr\/lib\/jvm\/java-8-openjdk-amd64\"\nExecStart=\/home\/kafka\/kafka\/bin\/kafka-server-start.sh \/home\/kafka\/kafka\/config\/server.properties\nExecStop=\/home\/kafka\/kafka\/bin\/kafka-server-stop.sh\nRestart=on-abnormal\n\n[Install]\nWantedBy=multi-user.target<\/code><\/pre>\n<p>Dosyay\u0131 kaydedip kapat\u0131n.<\/p>\n<h4>Servislerin Aktifle\u015ftirilmesi ve Ba\u015flat\u0131lmas\u0131<\/h4>\n<p>Yeni olu\u015fturdu\u011fumuz servis dosyalar\u0131n\u0131n systemd taraf\u0131ndan alg\u0131lanmas\u0131 i\u00e7in systemd daemon&#8217;\u0131n\u0131 yeniden y\u00fcklememiz gerekir:<\/p>\n<pre><code>sudo systemctl daemon-reload<\/code><\/pre>\n<p>\u015eimdi her iki servisi de ba\u015flatal\u0131m ve sistem a\u00e7\u0131l\u0131\u015f\u0131nda otomatik olarak ba\u015flamalar\u0131 i\u00e7in etkinle\u015ftirelim:<\/p>\n<pre><code>sudo systemctl start zookeeper\nsudo systemctl start kafka\n\nsudo systemctl enable zookeeper\nsudo systemctl enable kafka<\/code><\/pre>\n<p>Servislerin durumunu kontrol ederek her \u015feyin yolunda oldu\u011fundan emin olal\u0131m. \u0130lk olarak Zookeeper durumunu kontrol edin:<\/p>\n<pre><code>sudo systemctl status zookeeper<\/code><\/pre>\n<p>\u00c7\u0131kt\u0131da <code>active (running)<\/code> ifadesini g\u00f6rmelisiniz. Ard\u0131ndan Kafka&#8217;n\u0131n durumunu kontrol edin:<\/p>\n<pre><code>sudo systemctl status kafka<\/code><\/pre>\n<p>E\u011fer her iki servis de sorunsuz bir \u015fekilde \u00e7al\u0131\u015f\u0131yorsa, kurulum a\u015famas\u0131 ba\u015far\u0131yla tamamlanm\u0131\u015f demektir. E\u011fer bir hata ile kar\u015f\u0131la\u015f\u0131rsan\u0131z, hata detaylar\u0131n\u0131 incelemek i\u00e7in a\u015fa\u011f\u0131daki komutla sistem loglar\u0131na g\u00f6z atabilirsiniz:<\/p>\n<pre><code>sudo journalctl -u kafka.service -n 50 --no-pager<\/code><\/pre>\n<h3>Ad\u0131m 6: Kurulumun Test Edilmesi (Mesaj G\u00f6nderme ve Alma)<\/h3>\n<p>Kurulumun ve servislerin sorunsuz \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131 do\u011frulamak i\u00e7in Kafka&#8217;n\u0131n sundu\u011fu yerle\u015fik komut sat\u0131r\u0131 ara\u00e7lar\u0131n\u0131 kullanarak bir test ger\u00e7ekle\u015ftirece\u011fiz. Bu test kapsam\u0131nda bir &#8220;Konu&#8221; (Topic) olu\u015fturacak, bir &#8220;\u00dcretici&#8221; (Producer) ile bu konuya mesaj g\u00f6nderecek ve bir &#8220;T\u00fcketici&#8221; (Consumer) ile g\u00f6nderdi\u011fimiz mesajlar\u0131 ger\u00e7ek zamanl\u0131 olarak okuyaca\u011f\u0131z.<\/p>\n<p>Bu ad\u0131mlar\u0131 ger\u00e7ekle\u015ftirmek i\u00e7in tekrar <code>kafka<\/code> kullan\u0131c\u0131s\u0131na ge\u00e7i\u015f yapal\u0131m:<\/p>\n<pre><code>su - kafka<\/code><\/pre>\n<h4>1. Konu (Topic) Olu\u015fturma<\/h4>\n<p>Kafka&#8217;da veriler &#8220;Topic&#8221; ad\u0131 verilen kategoriler alt\u0131nda toplan\u0131r. \u0130lk testimiz i\u00e7in &#8220;TestKonusu&#8221; ad\u0131nda, tek b\u00f6l\u00fcml\u00fc (partition) ve tek \u00e7o\u011faltma fakt\u00f6r\u00fcne (replication factor) sahip bir konu olu\u015ftural\u0131m:<\/p>\n<pre><code>\/home\/kafka\/kafka\/bin\/kafka-topics.sh --create --bootstrap-server localhost:9092 --replication-factor 1 --partitions 1 --topic TestKonusu<\/code><\/pre>\n<p>Olu\u015fturulan konunun ba\u015far\u0131yla kaydedildi\u011fini do\u011frulamak i\u00e7in mevcut konular\u0131 listeleyelim:<\/p>\n<pre><code>\/home\/kafka\/kafka\/bin\/kafka-topics.sh --list --bootstrap-server localhost:9092<\/code><\/pre>\n<p>\u00c7\u0131kt\u0131da <code>TestKonusu<\/code> ad\u0131n\u0131 g\u00f6rmelisiniz.<\/p>\n<h4>2. \u00dcretici (Producer) ile Mesaj G\u00f6nderme<\/h4>\n<p>Kafka konular\u0131na veri yazan bile\u015fenlere &#8220;Producer&#8221; denir. Komut sat\u0131r\u0131ndan etkile\u015fimli olarak mesaj g\u00f6nderebilmek i\u00e7in yerle\u015fik konsol \u00fcreticisini ba\u015flatal\u0131m:<\/p>\n<pre><code>\/home\/kafka\/kafka\/bin\/kafka-console-producer.sh --bootstrap-server localhost:9092 --topic TestKonusu<\/code><\/pre>\n<p>Bu komutu \u00e7al\u0131\u015ft\u0131rd\u0131ktan sonra terminal sizden girdi bekleyecektir. Buraya birka\u00e7 test mesaj\u0131 yaz\u0131p her mesajdan sonra Enter tu\u015funa bas\u0131n:<\/p>\n<pre><code>Merhaba Kafka, Debian 9 uzerinde calisiyorsun!\nBu ilk test mesajimdir.\nSistem sorunsuz gorunuyor.<\/code><\/pre>\n<p>Mesajlar\u0131 yazd\u0131ktan sonra \u00fcreticiden \u00e7\u0131kmak i\u00e7in <code>Ctrl+C<\/code> tu\u015f kombinasyonunu kullanabilirsiniz.<\/p>\n<h4>3. T\u00fcketici (Consumer) ile Mesajlar\u0131 Okuma<\/h4>\n<p>G\u00f6nderdi\u011fimiz mesajlar\u0131 okumak i\u00e7in &#8220;Consumer&#8221; bile\u015fenine ihtiyac\u0131m\u0131z vard\u0131r. Yeni bir terminal penceresi a\u00e7\u0131p <code>kafka<\/code> kullan\u0131c\u0131s\u0131 ile giri\u015f yapabilir veya mevcut terminalde konsol t\u00fcketicisini ba\u015flatabilirsiniz. G\u00f6nderilen t\u00fcm mesajlar\u0131 en ba\u015f\u0131ndan itibaren okumak i\u00e7in <code>--from-beginning<\/code> parametresini kullanaca\u011f\u0131z:<\/p>\n<pre><code>\/home\/kafka\/kafka\/bin\/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic TestKonusu --from-beginning<\/code><\/pre>\n<p>Komutu \u00e7al\u0131\u015ft\u0131rd\u0131ktan k\u0131sa bir s\u00fcre sonra, \u00fcretici taraf\u0131nda yazd\u0131\u011f\u0131n\u0131z t\u00fcm mesajlar\u0131n ekrana s\u0131ras\u0131yla bas\u0131ld\u0131\u011f\u0131n\u0131 g\u00f6receksiniz:<\/p>\n<pre><code>Merhaba Kafka, Debian 9 uzerinde calisiyorsun!\nBu ilk test mesajimdir.\nSistem sorunsuz gorunuyor.<\/code><\/pre>\n<p>T\u00fcketiciyi durdurmak i\u00e7in yine <code>Ctrl+C<\/code> tu\u015flar\u0131na basabilirsiniz. Bu test, Apache Kafka&#8217;n\u0131n Debian 9 \u00fczerinde mesajlar\u0131 ba\u015far\u0131yla kabul etti\u011fini, depolad\u0131\u011f\u0131n\u0131 ve t\u00fcketicilere ula\u015ft\u0131rd\u0131\u011f\u0131n\u0131 kan\u0131tlamaktad\u0131r.<\/p>\n<h3>Ad\u0131m 7: G\u00fcvenlik ve S\u0131k\u0131la\u015ft\u0131rma (\u00d6neriler)<\/h3>\n<p>Kurulumu ba\u015far\u0131yla tamamlad\u0131k, ancak bu sistem \u015fu haliyle varsay\u0131lan ayarlarla \u00e7al\u0131\u015fmaktad\u0131r ve d\u0131\u015f d\u00fcnyaya a\u00e7\u0131k bir \u00fcretim ortam\u0131 i\u00e7in yeterince g\u00fcvenli de\u011fildir. Sunucunuzu canl\u0131 ortama almadan \u00f6nce a\u015fa\u011f\u0131daki g\u00fcvenlik \u00f6nlemlerini alman\u0131z\u0131 \u015fiddetle \u00f6neririz:<\/p>\n<h4>1. Sudo Yetkilerinin Kald\u0131r\u0131lmas\u0131<\/h4>\n<p>Kurulum ba\u015f\u0131nda <code>kafka<\/code> kullan\u0131c\u0131s\u0131na verdi\u011fimiz sudo yetkisini art\u0131k kald\u0131rabiliriz. Bu i\u015flem, kullan\u0131c\u0131n\u0131n sistem genelinde kritik de\u011fi\u015fiklikler yapmas\u0131n\u0131 engeller:<\/p>\n<pre><code>sudo gpasswd -d kafka sudo<\/code><\/pre>\n<h4>2. G\u00fcvenlik Duvar\u0131 (Firewall) Yap\u0131land\u0131rmas\u0131<\/h4>\n<p>Kafka (9092) ve Zookeeper (2181) portlar\u0131 d\u0131\u015f d\u00fcnyaya do\u011frudan a\u00e7\u0131k olmamal\u0131d\u0131r. E\u011fer sadece belirli uygulama sunucular\u0131n\u0131n Kafka&#8217;ya eri\u015fmesini istiyorsan\u0131z, Debian 9 \u00fczerinde <code>iptables<\/code> veya <code>ufw<\/code> kullanarak bu portlara eri\u015fimi s\u0131n\u0131rland\u0131rmal\u0131s\u0131n\u0131z.<\/p>\n<p>\u00d6rne\u011fin, <code>ufw<\/code> kullanarak sadece belirli bir IP adresine (\u00f6rne\u011fin uygulama sunucunuzun IP&#8217;si olan 192.168.1.100) Kafka portuna eri\u015fim izni vermek i\u00e7in:<\/p>\n<pre><code>sudo ufw allow from 192.168.1.100 to any port 9092 proto tcp<\/code><\/pre>\n<h4>3. SSL\/TLS ve SASL Kimlik Do\u011frulamas\u0131<\/h4>\n<p>Varsay\u0131lan olarak Kafka \u00fczerindeki veriler \u015fifrelenmeden (plaintext) iletilir. \u00dcretim ortamlar\u0131nda istemciler ile Kafka broker&#8217;lar\u0131 aras\u0131ndaki trafi\u011fi \u015fifrelemek i\u00e7in SSL\/TLS yap\u0131land\u0131rmas\u0131 yap\u0131lmal\u0131d\u0131r. Ayr\u0131ca, yetkisiz kullan\u0131c\u0131lar\u0131n mesaj g\u00f6ndermesini veya okumas\u0131n\u0131 engellemek i\u00e7in SASL (Simple Authentication and Security Layer) mekanizmas\u0131 entegre edilmelidir.<\/p>\n<h3>Sonu\u00e7<\/h3>\n<p>Bu rehberde, Debian 9 (Stretch) \u00fczerinde Apache Kafka ve onun vazge\u00e7ilmez yard\u0131mc\u0131s\u0131 Apache Zookeeper&#8217;\u0131n kurulumunu detayl\u0131 bir \u015fekilde ele ald\u0131k. Sistem kaynaklar\u0131n\u0131n verimli kullan\u0131lmas\u0131 amac\u0131yla \u00f6zel bir sistem kullan\u0131c\u0131s\u0131 olu\u015fturduk, Java ortam\u0131n\u0131 haz\u0131rlad\u0131k ve servislerin arka planda kesintisiz \u00e7al\u0131\u015fabilmesi i\u00e7in systemd yap\u0131land\u0131rmas\u0131n\u0131 tamamlad\u0131k. Son olarak, komut sat\u0131r\u0131 ara\u00e7lar\u0131yla sistemin i\u015flevselli\u011fini test ettik.<\/p>\n<p>Apache Kafka, do\u011fru yap\u0131land\u0131r\u0131ld\u0131\u011f\u0131nda ve \u00f6l\u00e7eklendirildi\u011finde mikro hizmet mimarinizin can damar\u0131 haline gelebilecek g\u00fc\u00e7te bir ara\u00e7t\u0131r. Bu kurulumun ard\u0131ndan, Kafka k\u00fcmenizi geni\u015fletmek i\u00e7in yeni broker&#8217;lar ekleyebilir, veri saklama politikalar\u0131n\u0131 (retention policies) optimize edebilir ve Kafka Connect veya Kafka Streams gibi ileri seviye bile\u015fenleri entegre ederek ger\u00e7ek zamanl\u0131 veri analiti\u011fi projelerinizi geli\u015ftirmeye ba\u015flayabilirsiniz.<\/p>\n<div class=\"github-example-link\"><strong>\u00d6rnek kod:<\/strong> <a href=\"https:\/\/github.com\/fatihsoysalcom\/debian-apache-kafka-installation-and-verification-script\" target=\"_blank\" rel=\"noopener noreferrer\">github.com\/fatihsoysalcom\/debian-apache-kafka-installation-and-verification-script<\/a><\/div>\n","protected":false},"excerpt":{"rendered":"G\u00fcn\u00fcm\u00fcz\u00fcn veri odakl\u0131 d\u00fcnyas\u0131nda, b\u00fcy\u00fck miktarda verinin ger\u00e7ek zamanl\u0131 olarak i\u015flenmesi, analiz edilmesi ve sistemler aras\u0131nda g\u00fcvenli bir \u015fekilde aktar\u0131lmas\u0131 kritik bir \u00f6neme sahiptir.","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-41926","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>Debian 9 \u00dczerinde Apache Kafka Kurulumu ve Yap\u0131land\u0131rma K\u0131lavuzu - 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\/debian-9-uzerinde-apache-kafka-kurulumu-ve-yapilandirma-kilavuzu\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Debian 9 \u00dczerinde Apache Kafka Kurulumu ve Yap\u0131land\u0131rma K\u0131lavuzu\" \/>\n<meta property=\"og:description\" content=\"G\u00fcn\u00fcm\u00fcz\u00fcn veri odakl\u0131 d\u00fcnyas\u0131nda, b\u00fcy\u00fck miktarda verinin ger\u00e7ek zamanl\u0131 olarak i\u015flenmesi, analiz edilmesi ve sistemler aras\u0131nda g\u00fcvenli bir \u015fekilde aktar\u0131lmas\u0131 kritik bir \u00f6neme sahiptir.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/debian-9-uzerinde-apache-kafka-kurulumu-ve-yapilandirma-kilavuzu\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2026-05-20T14:01:07+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-05-20T14:01:37+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=\"15 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/debian-9-uzerinde-apache-kafka-kurulumu-ve-yapilandirma-kilavuzu\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/debian-9-uzerinde-apache-kafka-kurulumu-ve-yapilandirma-kilavuzu\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"Debian 9 \u00dczerinde Apache Kafka Kurulumu ve Yap\u0131land\u0131rma K\u0131lavuzu\",\"datePublished\":\"2026-05-20T14:01:07+00:00\",\"dateModified\":\"2026-05-20T14:01:37+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/debian-9-uzerinde-apache-kafka-kurulumu-ve-yapilandirma-kilavuzu\/\"},\"wordCount\":2558,\"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\/debian-9-uzerinde-apache-kafka-kurulumu-ve-yapilandirma-kilavuzu\/#respond\"]}],\"copyrightYear\":\"2026\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/debian-9-uzerinde-apache-kafka-kurulumu-ve-yapilandirma-kilavuzu\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/debian-9-uzerinde-apache-kafka-kurulumu-ve-yapilandirma-kilavuzu\/\",\"name\":\"Debian 9 \u00dczerinde Apache Kafka Kurulumu ve Yap\u0131land\u0131rma K\u0131lavuzu - Kodlar\u0131n Gizemli D\u00fcnyas\u0131\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2026-05-20T14:01:07+00:00\",\"dateModified\":\"2026-05-20T14:01:37+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/debian-9-uzerinde-apache-kafka-kurulumu-ve-yapilandirma-kilavuzu\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/debian-9-uzerinde-apache-kafka-kurulumu-ve-yapilandirma-kilavuzu\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/debian-9-uzerinde-apache-kafka-kurulumu-ve-yapilandirma-kilavuzu\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Debian 9 \u00dczerinde Apache Kafka Kurulumu ve Yap\u0131land\u0131rma K\u0131lavuzu\"}]},{\"@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":"Debian 9 \u00dczerinde Apache Kafka Kurulumu ve Yap\u0131land\u0131rma K\u0131lavuzu - 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\/debian-9-uzerinde-apache-kafka-kurulumu-ve-yapilandirma-kilavuzu\/","og_locale":"tr_TR","og_type":"article","og_title":"Debian 9 \u00dczerinde Apache Kafka Kurulumu ve Yap\u0131land\u0131rma K\u0131lavuzu","og_description":"G\u00fcn\u00fcm\u00fcz\u00fcn veri odakl\u0131 d\u00fcnyas\u0131nda, b\u00fcy\u00fck miktarda verinin ger\u00e7ek zamanl\u0131 olarak i\u015flenmesi, analiz edilmesi ve sistemler aras\u0131nda g\u00fcvenli bir \u015fekilde aktar\u0131lmas\u0131 kritik bir \u00f6neme sahiptir.","og_url":"https:\/\/fatihsoysal.com\/blog\/debian-9-uzerinde-apache-kafka-kurulumu-ve-yapilandirma-kilavuzu\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2026-05-20T14:01:07+00:00","article_modified_time":"2026-05-20T14:01:37+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"15 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/debian-9-uzerinde-apache-kafka-kurulumu-ve-yapilandirma-kilavuzu\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/debian-9-uzerinde-apache-kafka-kurulumu-ve-yapilandirma-kilavuzu\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"Debian 9 \u00dczerinde Apache Kafka Kurulumu ve Yap\u0131land\u0131rma K\u0131lavuzu","datePublished":"2026-05-20T14:01:07+00:00","dateModified":"2026-05-20T14:01:37+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/debian-9-uzerinde-apache-kafka-kurulumu-ve-yapilandirma-kilavuzu\/"},"wordCount":2558,"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\/debian-9-uzerinde-apache-kafka-kurulumu-ve-yapilandirma-kilavuzu\/#respond"]}],"copyrightYear":"2026","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/debian-9-uzerinde-apache-kafka-kurulumu-ve-yapilandirma-kilavuzu\/","url":"https:\/\/fatihsoysal.com\/blog\/debian-9-uzerinde-apache-kafka-kurulumu-ve-yapilandirma-kilavuzu\/","name":"Debian 9 \u00dczerinde Apache Kafka Kurulumu ve Yap\u0131land\u0131rma K\u0131lavuzu - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2026-05-20T14:01:07+00:00","dateModified":"2026-05-20T14:01:37+00:00","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/debian-9-uzerinde-apache-kafka-kurulumu-ve-yapilandirma-kilavuzu\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/debian-9-uzerinde-apache-kafka-kurulumu-ve-yapilandirma-kilavuzu\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/debian-9-uzerinde-apache-kafka-kurulumu-ve-yapilandirma-kilavuzu\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Debian 9 \u00dczerinde Apache Kafka Kurulumu ve Yap\u0131land\u0131rma K\u0131lavuzu"}]},{"@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\/41926","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=41926"}],"version-history":[{"count":2,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/41926\/revisions"}],"predecessor-version":[{"id":41928,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/41926\/revisions\/41928"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=41926"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=41926"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=41926"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}