{"id":37766,"date":"2026-01-15T00:41:38","date_gmt":"2026-01-14T21:41:38","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/?p=37766"},"modified":"2026-01-15T00:41:38","modified_gmt":"2026-01-14T21:41:38","slug":"on-hazirlik-ve-kurulum","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/on-hazirlik-ve-kurulum\/","title":{"rendered":"\u00d6n Haz\u0131rl\u0131k ve Kurulum"},"content":{"rendered":"<p><body><\/p>\n<p>Bu rehber, Consul&#8217;u Ubuntu 14.04 i\u015fletim sistemi \u00fczerinde bir \u00fcretim ortam\u0131nda nas\u0131l yap\u0131land\u0131raca\u011f\u0131n\u0131z\u0131 ve da\u011f\u0131taca\u011f\u0131n\u0131z\u0131 ad\u0131m ad\u0131m a\u00e7\u0131klamaktad\u0131r. Ubuntu 14.04 eski bir i\u015fletim sistemi olmas\u0131na ra\u011fmen, mevcut altyap\u0131lar nedeniyle bu platformda Consul&#8217;u kurma ihtiyac\u0131 duyan kullan\u0131c\u0131lar i\u00e7in pratik bilgiler sunmay\u0131 ama\u00e7lamaktad\u0131r. Consul, da\u011f\u0131t\u0131k sistemler i\u00e7in hizmet ke\u015ffi, sa\u011fl\u0131k kontrol\u00fc ve anahtar-de\u011fer depolama gibi kritik i\u015flevleri sa\u011flayan g\u00fc\u00e7l\u00fc bir ara\u00e7t\u0131r.<\/p>\n<h2>\u00d6n Haz\u0131rl\u0131k ve Kurulum<\/h2>\n<p>Consul kurulumuna ba\u015flamadan \u00f6nce sisteminizde baz\u0131 temel haz\u0131rl\u0131klar yapman\u0131z gerekmektedir. Bu ad\u0131mlar, Consul&#8217;un g\u00fcvenli ve verimli bir \u015fekilde \u00e7al\u0131\u015fmas\u0131n\u0131 sa\u011flamak i\u00e7in \u00f6nemlidir.<\/p>\n<h3>Sistem G\u00fcncellemesi ve Temel Ara\u00e7lar\u0131n Kurulumu<\/h3>\n<p>\u00d6ncelikle, sisteminizin g\u00fcncel oldu\u011fundan emin olun ve gerekli baz\u0131 ara\u00e7lar\u0131 y\u00fckleyin:<\/p>\n<pre><code>sudo apt-get update\nsudo apt-get upgrade -y\nsudo apt-get install -y unzip curl wget<\/code><\/pre>\n<h3>Consul Kullan\u0131c\u0131s\u0131 ve Dizinlerinin Olu\u015fturulmas\u0131<\/h3>\n<p>G\u00fcvenlik amac\u0131yla Consul&#8217;u ayr\u0131 bir sistem kullan\u0131c\u0131s\u0131 alt\u0131nda \u00e7al\u0131\u015ft\u0131rmak en iyi pratiktir. Ayr\u0131ca, Consul&#8217;un yap\u0131land\u0131rma dosyalar\u0131 ve veri dizinleri i\u00e7in \u00f6zel konumlar olu\u015fturaca\u011f\u0131z.<\/p>\n<pre><code>sudo useradd --system --home \/etc\/consul.d --no-create-home --shell \/bin\/false consul\nsudo mkdir -p \/etc\/consul.d\nsudo mkdir -p \/var\/lib\/consul\nsudo chown -R consul:consul \/etc\/consul.d\nsudo chown -R consul:consul \/var\/lib\/consul<\/code><\/pre>\n<h3>Consul&#8217;un \u0130ndirilmesi ve Kurulumu<\/h3>\n<p>Consul&#8217;u HashiCorp&#8217;un resmi web sitesinden indirece\u011fiz. S\u00fcr\u00fcm numaras\u0131n\u0131 en g\u00fcncel kararl\u0131 s\u00fcr\u00fcmle de\u011fi\u015ftirmeniz \u00f6nerilir.<\/p>\n<pre><code># En g\u00fcncel Consul s\u00fcr\u00fcm\u00fcn\u00fc kontrol edin: https:\/\/releases.hashicorp.com\/consul\/\nCONSUL_VERSION=\"1.8.0\" # \u00d6rnek s\u00fcr\u00fcm, g\u00fcncel olan\u0131 kullan\u0131n\nwget https:\/\/releases.hashicorp.com\/consul\/${CONSUL_VERSION}\/consul_${CONSUL_VERSION}_linux_amd64.zip\nunzip consul_${CONSUL_VERSION}_linux_amd64.zip\nsudo mv consul \/usr\/local\/bin\/\nsudo chmod +x \/usr\/local\/bin\/consul\nrm consul_${CONSUL_VERSION}_linux_amd64.zip<\/code><\/pre>\n<p>Kurulumun ba\u015far\u0131l\u0131 olup olmad\u0131\u011f\u0131n\u0131 kontrol etmek i\u00e7in:<\/p>\n<pre><code>consul --version<\/code><\/pre>\n<h3>Firewall (UFW) Ayarlar\u0131<\/h3>\n<p>Consul, k\u00fcme \u00fcyeleri ve istemcilerle ileti\u015fim kurmak i\u00e7in belirli portlar\u0131 kullan\u0131r. G\u00fcvenlik duvar\u0131n\u0131zda bu portlar\u0131 a\u00e7man\u0131z gerekmektedir.<\/p>\n<ul>\n<li><code>8300\/tcp<\/code>: Sunucular aras\u0131 RPC trafi\u011fi (Consul server RPC)<\/li>\n<li><code>8301\/tcp<\/code>: K\u00fcme \u00fcyeleri aras\u0131 LAN gossip (Serf LAN)<\/li>\n<li><code>8302\/tcp<\/code>: K\u00fcme \u00fcyeleri aras\u0131 WAN gossip (Serf WAN) &#8211; birden fazla veri merkezi i\u00e7in<\/li>\n<li><code>8500\/tcp<\/code>: HTTP API ve UI<\/li>\n<li><code>8600\/udp<\/code>: DNS sorgular\u0131<\/li>\n<\/ul>\n<pre><code>sudo ufw allow 8300\/tcp comment 'Consul Server RPC'\nsudo ufw allow 8301\/tcp comment 'Consul LAN Gossip'\nsudo ufw allow 8302\/tcp comment 'Consul WAN Gossip'\nsudo ufw allow 8500\/tcp comment 'Consul HTTP API and UI'\nsudo ufw allow 8600\/udp comment 'Consul DNS'\nsudo ufw enable # E\u011fer UFW etkin de\u011filse\nsudo ufw status<\/code><\/pre>\n<h2>Consul Sunucu ve \u0130stemci Konfig\u00fcrasyonu<\/h2>\n<p>Consul iki ana modda \u00e7al\u0131\u015fabilir: sunucu ve istemci. \u00dcretim ortam\u0131nda genellikle birden fazla sunucu (quorum olu\u015fturmak i\u00e7in) ve \u00e7ok say\u0131da istemci (uygulamalar\u0131n \u00e7al\u0131\u015ft\u0131\u011f\u0131 yerlerde) bulunur.<\/p>\n<h3>Temel Yap\u0131land\u0131rma Dosyas\u0131<\/h3>\n<p>T\u00fcm Consul yap\u0131land\u0131rmalar\u0131 <code>\/etc\/consul.d\/config.json<\/code> dosyas\u0131nda veya bu dizindeki di\u011fer <code>.json<\/code> dosyalar\u0131nda yap\u0131l\u0131r. JSON format\u0131 kullan\u0131l\u0131r.<\/p>\n<h3>Consul Sunucu Yap\u0131land\u0131rmas\u0131<\/h3>\n<p>Bir Consul sunucusu k\u00fcmenin durumunu korur ve t\u00fcm veriyi depolar. \u00dcretim ortam\u0131nda y\u00fcksek eri\u015filebilirlik i\u00e7in en az 3 veya 5 sunucu kullan\u0131lmas\u0131 \u00f6nerilir.<\/p>\n<pre><code># \/etc\/consul.d\/config.json (Sunucu i\u00e7in \u00f6rnek)\n{\n  \"datacenter\": \"dc1\",\n  \"data_dir\": \"\/var\/lib\/consul\",\n  \"log_level\": \"INFO\",\n  \"node_name\": \"consul-server-01\",\n  \"server\": true,\n  \"bootstrap_expect\": 3,\n  \"bind_addr\": \"192.168.1.10\", # Sunucunun IP adresi\n  \"client_addr\": \"127.0.0.1 192.168.1.10\", # API'nin dinleyece\u011fi adresler\n  \"ui\": true,\n  \"encrypt\": \"YOUR_ENCRYPTION_KEY\",\n  \"acl\": {\n    \"enabled\": true,\n    \"default_policy\": \"deny\",\n    \"enable_token_persistence\": true,\n    \"tokens\": {\n      \"master\": \"YOUR_MASTER_ACL_TOKEN\"\n    }\n  }\n}<\/code><\/pre>\n<ul>\n<li><code>datacenter<\/code>: Bu sunucunun ait oldu\u011fu veri merkezinin ad\u0131.<\/li>\n<li><code>data_dir<\/code>: Consul&#8217;un verilerini (RAFT loglar\u0131, KV verileri vb.) depolayaca\u011f\u0131 dizin.<\/li>\n<li><code>node_name<\/code>: K\u00fcme i\u00e7indeki bu d\u00fc\u011f\u00fcm\u00fcn benzersiz ad\u0131.<\/li>\n<li><code>server: true<\/code>: Bu d\u00fc\u011f\u00fcm\u00fcn bir Consul sunucusu oldu\u011funu belirtir.<\/li>\n<li><code>bootstrap_expect<\/code>: K\u00fcmenin ilk ba\u015flat\u0131lmas\u0131 s\u0131ras\u0131nda beklenen sunucu say\u0131s\u0131. Bu de\u011fer, k\u00fcme ba\u015flat\u0131ld\u0131ktan sonra de\u011fi\u015ftirilmemelidir. <strong>\u00c7ok \u00f6nemlidir!<\/strong> Yanl\u0131\u015f yap\u0131land\u0131rma veri kayb\u0131na yol a\u00e7abilir.<\/li>\n<li><code>bind_addr<\/code>: K\u00fcme \u00fcyeleri aras\u0131ndaki ileti\u015fimin ger\u00e7ekle\u015fece\u011fi IP adresi.<\/li>\n<li><code>client_addr<\/code>: HTTP API, DNS ve RPC aray\u00fczlerinin dinleyece\u011fi adresler. Hem localhost hem de sunucunun IP&#8217;sini eklemek, di\u011fer makinelerden eri\u015fim sa\u011flar.<\/li>\n<li><code>ui: true<\/code>: Consul Web UI&#8217;sini etkinle\u015ftirir. \u00dcretimde eri\u015fimi k\u0131s\u0131tlamak \u00f6nemlidir.<\/li>\n<li><code>encrypt<\/code>: Gossip trafi\u011fini \u015fifrelemek i\u00e7in kullan\u0131lan bir anahtar. <code>consul keygen<\/code> komutuyla olu\u015fturulur.<\/li>\n<li><code>acl<\/code>: Eri\u015fim kontrol listelerini etkinle\u015ftirir. \u00dcretim ortamlar\u0131nda g\u00fcvenlik i\u00e7in \u015fiddetle tavsiye edilir.<\/li>\n<\/ul>\n<p>\u015eifreleme anahtar\u0131 olu\u015fturmak i\u00e7in:<\/p>\n<pre><code>consul keygen<\/code><\/pre>\n<p>ACL ana token&#8217;\u0131 olu\u015fturmak i\u00e7in:<\/p>\n<pre><code>consul acl bootstrap<\/code><\/pre>\n<p>Bu komut, master token&#8217;\u0131 yaln\u0131zca ilk kez \u00e7al\u0131\u015ft\u0131r\u0131ld\u0131\u011f\u0131nda olu\u015fturur ve size g\u00f6sterir. Bu token&#8217;\u0131 g\u00fcvenli bir yerde saklay\u0131n.<\/p>\n<h3>Consul \u0130stemci Yap\u0131land\u0131rmas\u0131<\/h3>\n<p>Consul istemcileri, hizmetleri kaydeden, sa\u011fl\u0131k kontrolleri yapan ve sunuculara proxy g\u00f6revi g\u00f6ren hafif d\u00fc\u011f\u00fcmlerdir. Genellikle uygulama sunucular\u0131nda \u00e7al\u0131\u015f\u0131rlar.<\/p>\n<pre><code># \/etc\/consul.d\/config.json (\u0130stemci i\u00e7in \u00f6rnek)\n{\n  \"datacenter\": \"dc1\",\n  \"data_dir\": \"\/var\/lib\/consul\",\n  \"log_level\": \"INFO\",\n  \"node_name\": \"consul-client-01\",\n  \"server\": false,\n  \"bind_addr\": \"192.168.1.20\", # \u0130stemcinin IP adresi\n  \"client_addr\": \"127.0.0.1 192.168.1.20\",\n  \"retry_join\": [\"192.168.1.10\", \"192.168.1.11\", \"192.168.1.12\"] # Sunucu IP'leri\n}<\/code><\/pre>\n<ul>\n<li><code>server: false<\/code>: Bu d\u00fc\u011f\u00fcm\u00fcn bir Consul istemcisi oldu\u011funu belirtir.<\/li>\n<li><code>retry_join<\/code>: \u0130stemcinin kat\u0131lmaya \u00e7al\u0131\u015faca\u011f\u0131 Consul sunucular\u0131n\u0131n IP adreslerinin bir listesi. Bu, istemcinin bir veya daha fazla sunucuya otomatik olarak kat\u0131lmas\u0131n\u0131 sa\u011flar.<\/li>\n<\/ul>\n<h3>Consul Servisini Ba\u015flatma (Upstart ile)<\/h3>\n<p>Ubuntu 14.04 genellikle Upstart kullan\u0131r. Consul&#8217;u bir servis olarak ba\u015flatmak i\u00e7in <code>\/etc\/init\/consul.conf<\/code> dosyas\u0131n\u0131 olu\u015fturun:<\/p>\n<pre><code># \/etc\/init\/consul.conf\ndescription \"Consul agent\"\n\nstart on runlevel [2345]\nstop on runlevel [!2345]\n\nrespawn\nrespawn limit 10 5\n\nsetuid consul\nsetgid consul\n\nexec \/usr\/local\/bin\/consul agent -config-dir=\/etc\/consul.d -data-dir=\/var\/lib\/consul<\/code><\/pre>\n<p>Servisi ba\u015flat\u0131n:<\/p>\n<pre><code>sudo service consul start\nsudo service consul status<\/code><\/pre>\n<p>Loglar\u0131 kontrol etmek i\u00e7in:<\/p>\n<pre><code>tail -f \/var\/log\/upstart\/consul.log<\/code><\/pre>\n<h2>Y\u00fcksek Eri\u015filebilirlik ve K\u00fcme Olu\u015fturma<\/h2>\n<p>Consul, y\u00fcksek eri\u015filebilirlik sa\u011flamak i\u00e7in bir RAFT konsens\u00fcs algoritmas\u0131 kullan\u0131r. \u00dcretim ortam\u0131nda bu, veri b\u00fct\u00fcnl\u00fc\u011f\u00fc ve hizmet s\u00fcreklili\u011fi i\u00e7in kritik \u00f6neme sahiptir.<\/p>\n<h3>Quorum Kavram\u0131<\/h3>\n<p>Bir Consul k\u00fcmesinde, sunucular\u0131n \u00e7o\u011funlu\u011fu (quorum) \u00e7al\u0131\u015f\u0131r durumda olmal\u0131d\u0131r. Bu, <code>N\/2 + 1<\/code> kural\u0131yla belirlenir. \u00d6rne\u011fin:<\/p>\n<ul>\n<li>3 sunucu i\u00e7in: 2 sunucu ayakta kalmal\u0131.<\/li>\n<li>5 sunucu i\u00e7in: 3 sunucu ayakta kalmal\u0131.<\/li>\n<\/ul>\n<p>Bu nedenle, \u00fcretimde tek bir sunucu yerine her zaman tek say\u0131da (3 veya 5) sunucu kullan\u0131lmas\u0131 \u00f6nerilir.<\/p>\n<h3>K\u00fcme Olu\u015fturma ve D\u00fc\u011f\u00fcmleri Katma<\/h3>\n<p><strong>1. \u0130lk Consul Sunucusunu Ba\u015flatma:<\/strong><\/p>\n<p><code>bootstrap_expect<\/code> de\u011feri 3 olarak ayarlanm\u0131\u015f ilk sunucuyu yukar\u0131daki Upstart servisi ile ba\u015flat\u0131n. Bu sunucu, di\u011fer sunucular\u0131n kat\u0131lmas\u0131n\u0131 bekleyecektir.<\/p>\n<p><strong>2. Di\u011fer Sunucular\u0131 K\u00fcmenize Katma:<\/strong><\/p>\n<p>Di\u011fer Consul sunucular\u0131n\u0131n yap\u0131land\u0131rma dosyalar\u0131n\u0131 (<code>bootstrap_expect<\/code> de\u011feri ayn\u0131 olmal\u0131) olu\u015fturun ve servislerini ba\u015flat\u0131n. Ard\u0131ndan, ilk sunucuya kat\u0131lmalar\u0131n\u0131 sa\u011flay\u0131n:<\/p>\n<pre><code># Di\u011fer sunucular i\u00e7in\nsudo service consul start\nconsul join 192.168.1.10 # \u0130lk sunucunun IP adresi<\/code><\/pre>\n<p>Veya <code>config.json<\/code> dosyas\u0131nda <code>start_join<\/code> veya <code>retry_join<\/code> parametrelerini kullanarak otomatik kat\u0131lmay\u0131 sa\u011flayabilirsiniz. \u00dcretimde <code>retry_join<\/code> tercih edilir.<\/p>\n<pre><code># \/etc\/consul.d\/config.json (Di\u011fer sunucular i\u00e7in, retry_join ile)\n{\n  \"datacenter\": \"dc1\",\n  \"data_dir\": \"\/var\/lib\/consul\",\n  \"log_level\": \"INFO\",\n  \"node_name\": \"consul-server-02\",\n  \"server\": true,\n  \"bootstrap_expect\": 3,\n  \"bind_addr\": \"192.168.1.11\",\n  \"client_addr\": \"127.0.0.1 192.168.1.11\",\n  \"ui\": true,\n  \"encrypt\": \"YOUR_ENCRYPTION_KEY\",\n  \"acl\": {\n    \"enabled\": true,\n    \"default_policy\": \"deny\",\n    \"enable_token_persistence\": true,\n    \"tokens\": {\n      \"master\": \"YOUR_MASTER_ACL_TOKEN\"\n    }\n  },\n  \"retry_join\": [\"192.168.1.10\"] # \u0130lk sunucunun IP adresi\n}<\/code><\/pre>\n<p><strong>3. \u0130stemcileri K\u00fcmenize Katma:<\/strong><\/p>\n<p>\u0130stemci d\u00fc\u011f\u00fcmlerini ba\u015flat\u0131n. <code>retry_join<\/code> parametresini kullanarak sunucu IP adreslerini belirtin:<\/p>\n<pre><code># \u0130stemciler i\u00e7in\nsudo service consul start<\/code><\/pre>\n<h3>K\u00fcme Durumunu Kontrol Etme<\/h3>\n<p>Herhangi bir Consul sunucusundan k\u00fcme \u00fcyelerini listeleyebilirsiniz:<\/p>\n<pre><code>consul members<\/code><\/pre>\n<p>Consul sunucular\u0131n\u0131n RAFT durumunu kontrol etmek i\u00e7in:<\/p>\n<pre><code>consul operator raft list-peers<\/code><\/pre>\n<p>Lideri ve takip\u00e7ileri g\u00f6receksiniz. Liderin sa\u011fl\u0131kl\u0131 oldu\u011fundan emin olun.<\/p>\n<h2>Consul&#8217;u Y\u00f6netme ve \u0130zleme<\/h2>\n<p>\u00dcretim ortam\u0131nda Consul&#8217;un s\u00fcrekli izlenmesi ve y\u00f6netilmesi \u00f6nemlidir.<\/p>\n<h3>Web Kullan\u0131c\u0131 Aray\u00fcz\u00fc (UI)<\/h3>\n<p>E\u011fer <code>ui: true<\/code> olarak ayarland\u0131ysa, <code>http:\/\/<consul_server_ip>:8500<\/code> adresinden Consul UI&#8217;ye eri\u015febilirsiniz. Bu aray\u00fcz, kay\u0131tl\u0131 hizmetleri, d\u00fc\u011f\u00fcmleri ve sa\u011fl\u0131k kontrollerini g\u00f6rselle\u015ftirmek i\u00e7in kullan\u0131\u015fl\u0131d\u0131r.<\/p>\n<h3>Sa\u011fl\u0131k Kontrolleri<\/h3>\n<p>Consul, hizmetlerinizin durumunu izlemek i\u00e7in sa\u011fl\u0131k kontrolleri sunar. Bu kontrolleri hizmet tan\u0131mlar\u0131n\u0131za ekleyerek Consul&#8217;un bir hizmetin sa\u011fl\u0131kl\u0131 olup olmad\u0131\u011f\u0131n\u0131 otomatik olarak belirlemesini sa\u011flayabilirsiniz.<\/p>\n<pre><code># \/etc\/consul.d\/web.json (\u00d6rnek hizmet tan\u0131m\u0131)\n{\n  \"service\": {\n    \"id\": \"web-service\",\n    \"name\": \"web\",\n    \"tags\": [\"frontend\"],\n    \"address\": \"192.168.1.20\",\n    \"port\": 80,\n    \"check\": {\n      \"http\": \"http:\/\/192.168.1.20:80\/health\",\n      \"interval\": \"10s\",\n      \"timeout\": \"1s\"\n    }\n  }\n}<\/code><\/pre>\n<p>Bu dosyay\u0131 bir istemci d\u00fc\u011f\u00fcm\u00fcne yerle\u015ftirdikten sonra Consul servisini yeniden ba\u015flat\u0131n veya <code>consul reload<\/code> komutunu \u00e7al\u0131\u015ft\u0131r\u0131n. Consul, her 10 saniyede bir <code>\/health<\/code> endpoint&#8217;ine HTTP iste\u011fi g\u00f6ndererek hizmetin durumunu kontrol edecektir.<\/p>\n<h3>Loglama<\/h3>\n<p>Consul&#8217;un loglar\u0131n\u0131 d\u00fczenli olarak kontrol etmek, sorun giderme ve sistem sa\u011fl\u0131\u011f\u0131 i\u00e7in hayati \u00f6nem ta\u015f\u0131r. Upstart yap\u0131land\u0131rmas\u0131nda loglar genellikle <code>\/var\/log\/upstart\/consul.log<\/code> konumuna yaz\u0131l\u0131r.<\/p>\n<h3>Yedekleme<\/h3>\n<p>Consul sunucular\u0131ndaki <code>data_dir<\/code> i\u00e7eri\u011fi d\u00fczenli olarak yedeklenmelidir. Bu, felaket durumunda k\u00fcmenin kurtar\u0131lmas\u0131 i\u00e7in \u00f6nemlidir. <code>consul snapshot save<\/code> ve <code>consul snapshot restore<\/code> komutlar\u0131 bu ama\u00e7la kullan\u0131labilir.<\/p>\n<pre><code>consul snapshot save backup.snap\nconsul snapshot restore backup.snap<\/code><\/pre>\n<h2>Sonu\u00e7 ve S\u0131k\u00e7a Sorulan Sorular<\/h2>\n<p>Bu rehber, Consul&#8217;u Ubuntu 14.04 \u00fczerinde \u00fcretim ortam\u0131nda kurmak ve yap\u0131land\u0131rmak i\u00e7in gerekli temel ad\u0131mlar\u0131 ve pratik bilgileri sa\u011flam\u0131\u015ft\u0131r. G\u00fcvenlik (\u015fifreleme, ACL), y\u00fcksek eri\u015filebilirlik (quorum) ve izleme gibi konulara dikkat ederek, Consul&#8217;un da\u011f\u0131t\u0131k altyap\u0131n\u0131z i\u00e7in sa\u011flam bir temel olu\u015fturmas\u0131n\u0131 sa\u011flayabilirsiniz. Unutmay\u0131n, \u00fcretim ortam\u0131nda her zaman en g\u00fcncel g\u00fcvenlik yamalar\u0131n\u0131 ve kararl\u0131 Consul s\u00fcr\u00fcmlerini kullanman\u0131z \u00f6nerilir.<\/p>\n<h3>S\u0131k\u00e7a Sorulan Sorular (SSS)<\/h3>\n<dl>\n<dt>Consul hangi portlar\u0131 kullan\u0131r?<\/dt>\n<dd>Temel olarak 8300 (sunucu RPC), 8301 (LAN gossip), 8302 (WAN gossip), 8500 (HTTP API\/UI) ve 8600 (DNS) portlar\u0131n\u0131 kullan\u0131r. G\u00fcvenlik duvar\u0131n\u0131zda bu portlar\u0131 a\u00e7man\u0131z gerekir.<\/dd>\n<dt>Sunucu ve istemci aras\u0131ndaki fark nedir?<\/dt>\n<dd>Consul sunucular\u0131, k\u00fcmenin durumunu korur, RAFT konsens\u00fcs\u00fcn\u00fc \u00e7al\u0131\u015ft\u0131r\u0131r ve t\u00fcm veriyi depolar. \u0130stemciler ise hizmetleri kaydeden, sa\u011fl\u0131k kontrolleri yapan ve sunuculara proxy g\u00f6revi g\u00f6ren hafif d\u00fc\u011f\u00fcmlerdir.<\/dd>\n<dt><code>bootstrap_expect<\/code> neden \u00f6nemlidir?<\/dt>\n<dd>Bu parametre, bir Consul k\u00fcmesinin ilk kez ba\u015flat\u0131lmas\u0131 s\u0131ras\u0131nda beklenen sunucu say\u0131s\u0131n\u0131 belirtir. Yanl\u0131\u015f ayarlanmas\u0131, k\u00fcmenin kilitlenmesine veya veri kayb\u0131na yol a\u00e7abilir. K\u00fcme ba\u015flat\u0131ld\u0131ktan sonra de\u011fi\u015ftirilmemelidir.<\/dd>\n<dt>\u00dcretimde ka\u00e7 Consul sunucusu kullanmal\u0131y\u0131m?<\/dt>\n<dd>Y\u00fcksek eri\u015filebilirlik i\u00e7in tek say\u0131da sunucu kullan\u0131lmas\u0131 \u00f6nerilir. En az 3, ideal olarak 5 sunucu, quorum kayb\u0131 riskini azalt\u0131r.<\/dd>\n<dt>Consul&#8217;u izlemek i\u00e7in ne yapmal\u0131y\u0131m?<\/dt>\n<dd>Consul UI, <code>consul members<\/code> ve <code>consul operator raft list-peers<\/code> komutlar\u0131 ile k\u00fcme sa\u011fl\u0131\u011f\u0131n\u0131 izleyebilirsiniz. Ayr\u0131ca loglar\u0131 d\u00fczenli kontrol etmek ve Prometheus\/Grafana gibi ara\u00e7larla entegrasyon d\u00fc\u015f\u00fcnmek \u00f6nemlidir.<\/dd>\n<dt>Ubuntu 14.04 neden bu rehberde kullan\u0131ld\u0131?<\/dt>\n<dd>Bu rehber, \u00f6zel bir talep \u00fczerine Ubuntu 14.04 i\u00e7in haz\u0131rlanm\u0131\u015ft\u0131r. Genel olarak, yeni \u00fcretim da\u011f\u0131t\u0131mlar\u0131 i\u00e7in daha g\u00fcncel ve desteklenen bir i\u015fletim sistemi (\u00f6rne\u011fin Ubuntu 18.04 veya 20.04) kullan\u0131lmas\u0131 \u015fiddetle tavsiye edilir.<\/dd>\n<\/dl>\n<p><\/body><\/p>\n","protected":false},"excerpt":{"rendered":"Bu rehber, Consul&#8217;u Ubuntu 14.04 i\u015fletim sistemi \u00fczerinde bir \u00fcretim ortam\u0131nda nas\u0131l yap\u0131land\u0131raca\u011f\u0131n\u0131z\u0131 ve da\u011f\u0131taca\u011f\u0131n\u0131z\u0131 ad\u0131m ad","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":[1],"tags":[],"class_list":{"0":"post-37766","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-genel","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>\u00d6n Haz\u0131rl\u0131k ve Kurulum - 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\/on-hazirlik-ve-kurulum\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"\u00d6n Haz\u0131rl\u0131k ve Kurulum\" \/>\n<meta property=\"og:description\" content=\"Bu rehber, Consul&#039;u Ubuntu 14.04 i\u015fletim sistemi \u00fczerinde bir \u00fcretim ortam\u0131nda nas\u0131l yap\u0131land\u0131raca\u011f\u0131n\u0131z\u0131 ve da\u011f\u0131taca\u011f\u0131n\u0131z\u0131 ad\u0131m ad\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/on-hazirlik-ve-kurulum\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2026-01-14T21:41:38+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=\"10 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/on-hazirlik-ve-kurulum\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/on-hazirlik-ve-kurulum\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"\u00d6n Haz\u0131rl\u0131k ve Kurulum\",\"datePublished\":\"2026-01-14T21:41:38+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/on-hazirlik-ve-kurulum\/\"},\"wordCount\":1474,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/on-hazirlik-ve-kurulum\/#respond\"]}],\"copyrightYear\":\"2026\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/on-hazirlik-ve-kurulum\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/on-hazirlik-ve-kurulum\/\",\"name\":\"\u00d6n Haz\u0131rl\u0131k ve Kurulum - Kodlar\u0131n Gizemli D\u00fcnyas\u0131\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2026-01-14T21:41:38+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/on-hazirlik-ve-kurulum\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/on-hazirlik-ve-kurulum\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/on-hazirlik-ve-kurulum\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"\u00d6n Haz\u0131rl\u0131k ve Kurulum\"}]},{\"@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":"\u00d6n Haz\u0131rl\u0131k ve Kurulum - 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\/on-hazirlik-ve-kurulum\/","og_locale":"tr_TR","og_type":"article","og_title":"\u00d6n Haz\u0131rl\u0131k ve Kurulum","og_description":"Bu rehber, Consul'u Ubuntu 14.04 i\u015fletim sistemi \u00fczerinde bir \u00fcretim ortam\u0131nda nas\u0131l yap\u0131land\u0131raca\u011f\u0131n\u0131z\u0131 ve da\u011f\u0131taca\u011f\u0131n\u0131z\u0131 ad\u0131m ad","og_url":"https:\/\/fatihsoysal.com\/blog\/on-hazirlik-ve-kurulum\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2026-01-14T21:41:38+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"10 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/on-hazirlik-ve-kurulum\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/on-hazirlik-ve-kurulum\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"\u00d6n Haz\u0131rl\u0131k ve Kurulum","datePublished":"2026-01-14T21:41:38+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/on-hazirlik-ve-kurulum\/"},"wordCount":1474,"commentCount":0,"publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fatihsoysal.com\/blog\/on-hazirlik-ve-kurulum\/#respond"]}],"copyrightYear":"2026","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/on-hazirlik-ve-kurulum\/","url":"https:\/\/fatihsoysal.com\/blog\/on-hazirlik-ve-kurulum\/","name":"\u00d6n Haz\u0131rl\u0131k ve Kurulum - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2026-01-14T21:41:38+00:00","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/on-hazirlik-ve-kurulum\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/on-hazirlik-ve-kurulum\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/on-hazirlik-ve-kurulum\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"\u00d6n Haz\u0131rl\u0131k ve Kurulum"}]},{"@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\/37766","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=37766"}],"version-history":[{"count":1,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/37766\/revisions"}],"predecessor-version":[{"id":37767,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/37766\/revisions\/37767"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=37766"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=37766"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=37766"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}