{"id":38978,"date":"2026-02-11T21:00:42","date_gmt":"2026-02-11T18:00:42","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/kubernetes-kumesi-kurulumu-adim-adim-rehber\/"},"modified":"2026-02-11T21:00:42","modified_gmt":"2026-02-11T18:00:42","slug":"kubernetes-kumesi-kurulumu-adim-adim-rehber","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/kubernetes-kumesi-kurulumu-adim-adim-rehber\/","title":{"rendered":"Kubernetes K\u00fcmesi Kurulumu: Ad\u0131m Ad\u0131m Rehber"},"content":{"rendered":"<h2>Kubernetes K\u00fcmesi Kurulumu: Ad\u0131m Ad\u0131m Rehber<\/h2>\n<p>G\u00fcn\u00fcm\u00fcz\u00fcn h\u0131zla de\u011fi\u015fen teknoloji d\u00fcnyas\u0131nda, uygulamalar\u0131n da\u011f\u0131t\u0131m\u0131, \u00f6l\u00e7eklenmesi ve y\u00f6netimi her zamankinden daha kritik hale gelmi\u015ftir. \u0130\u015fte tam bu noktada Kubernetes (K8s), container tabanl\u0131 uygulamalar\u0131 otomatik olarak da\u011f\u0131tmak, \u00f6l\u00e7eklemek ve y\u00f6netmek i\u00e7in a\u00e7\u0131k kaynakl\u0131 bir platform olarak \u00f6ne \u00e7\u0131k\u0131yor. Bu makalede, kendi Kubernetes k\u00fcmenizi ad\u0131m ad\u0131m nas\u0131l kuraca\u011f\u0131n\u0131z\u0131, gerekli \u00f6n haz\u0131rl\u0131klar\u0131 ve kurulum sonras\u0131 temel yap\u0131land\u0131rmalar\u0131 detayl\u0131 bir \u015fekilde ele alaca\u011f\u0131z. Kendi k\u00fcmenizi kurmak, platformun derinliklerini anlaman\u0131za ve \u00f6zel ihtiya\u00e7lar\u0131n\u0131za g\u00f6re optimize etmenize olanak tan\u0131r.<\/p>\n<h3>Kubernetes&#8217;e Giri\u015f ve Neden Kendi K\u00fcmenizi Kurmal\u0131s\u0131n\u0131z?<\/h3>\n<p>Kubernetes, Google taraf\u0131ndan geli\u015ftirilen ve \u015fu anda Cloud Native Computing Foundation (CNCF) taraf\u0131ndan s\u00fcrd\u00fcr\u00fclen, container&#8217;l\u0131 i\u015f y\u00fcklerini ve hizmetleri y\u00f6netmek i\u00e7in ta\u015f\u0131nabilir, geni\u015fletilebilir, a\u00e7\u0131k kaynakl\u0131 bir platformdur. Deklaratif yap\u0131land\u0131rma ve otomasyon sunar. K8s, container orkestrasyonunda end\u00fcstri standard\u0131 haline gelmi\u015ftir ve modern mikroservis mimarilerinin temelini olu\u015fturur.<\/p>\n<h4>Kubernetes Nedir?<\/h4>\n<p>Kubernetes, uygulamalar\u0131n\u0131z\u0131 bar\u0131nd\u0131ran container&#8217;lar\u0131 y\u00f6netmek i\u00e7in bir dizi soyutlama ve ara\u00e7 sa\u011flar. Temel olarak, uygulamalar\u0131n\u0131z\u0131 \u00e7al\u0131\u015ft\u0131ran sunucular\u0131n (d\u00fc\u011f\u00fcmlerin) bir k\u00fcmesini y\u00f6netir ve bu uygulamalar\u0131n her zaman \u00e7al\u0131\u015f\u0131r durumda olmas\u0131n\u0131, y\u00fck dengelemesini ve otomatik olarak \u00f6l\u00e7eklenmesini sa\u011flar. Bu, geli\u015ftiricilerin altyap\u0131 karma\u015f\u0131kl\u0131\u011f\u0131 yerine uygulama geli\u015ftirmeye odaklanmas\u0131na olanak tan\u0131r. K8s, y\u00fcksek eri\u015filebilirlik, felaket kurtarma ve otomatik iyile\u015fme gibi kritik \u00f6zellikler sunar.<\/p>\n<h4>K8s K\u00fcmesi Kurman\u0131n Avantajlar\u0131<\/h4>\n<p>Kendi Kubernetes k\u00fcmenizi kurmak, bulut sa\u011flay\u0131c\u0131lar\u0131n\u0131n sundu\u011fu y\u00f6netilen hizmetlere (EKS, AKS, GKE) k\u0131yasla baz\u0131 benzersiz avantajlar sunar. \u00d6ncelikle, altyap\u0131 \u00fczerinde tam kontrol sahibi olursunuz. Bu, \u00f6zel a\u011f yap\u0131land\u0131rmalar\u0131, belirli depolama \u00e7\u00f6z\u00fcmleri veya g\u00fcvenlik politikalar\u0131 gibi \u00f6zelle\u015ftirmeler yapman\u0131z\u0131 sa\u011flar. Ayr\u0131ca, \u00f6zellikle b\u00fcy\u00fck \u00f6l\u00e7ekli veya uzun vadeli projelerde maliyet avantajlar\u0131 sa\u011flayabilir. Kendi k\u00fcmenizi kurmak, Kubernetes&#8217;in i\u00e7 i\u015fleyi\u015fini daha iyi anlaman\u0131za ve sorun giderme becerilerinizi geli\u015ftirmenize yard\u0131mc\u0131 olur.<\/p>\n<h4>Bulut Sa\u011flay\u0131c\u0131lar vs. Kendi K\u00fcmenizi Kurmak<\/h4>\n<p>Bulut sa\u011flay\u0131c\u0131lar\u0131 taraf\u0131ndan sunulan y\u00f6netilen Kubernetes hizmetleri, kurulum ve bak\u0131m y\u00fck\u00fcn\u00fc \u00fczerinizden alarak kolayl\u0131k sa\u011flar. Ancak, bu hizmetler genellikle daha y\u00fcksek maliyetli olabilir ve belirli k\u0131s\u0131tlamalara sahip olabilir. Kendi k\u00fcmenizi kurmak ise ba\u015flang\u0131\u00e7ta daha fazla \u00e7aba ve teknik bilgi gerektirse de, uzun vadede daha fazla esneklik, maliyet kontrol\u00fc ve \u00f6\u011frenme f\u0131rsat\u0131 sunar. Bu makaledeki rehber, \u00f6zellikle test, geli\u015ftirme ortamlar\u0131 veya belirli on-premise gereksinimleri olan kullan\u0131c\u0131lar i\u00e7in idealdir.<\/p>\n<h3>K\u00fcme Topolojisi ve Gereksinimler<\/h3>\n<p>Bir Kubernetes k\u00fcmesi kurmadan \u00f6nce, k\u00fcme topolojinizi planlaman\u0131z ve donan\u0131m\/yaz\u0131l\u0131m gereksinimlerini belirlemeniz kritik \u00f6neme sahiptir. Do\u011fru planlama, kurulum s\u00fcrecini sorunsuz hale getirir ve gelecekteki \u00f6l\u00e7eklenebilirlik ihtiya\u00e7lar\u0131n\u0131z\u0131 kar\u015f\u0131lar.<\/p>\n<h4>Kontrol D\u00fczlemi ve \u00c7al\u0131\u015fan D\u00fc\u011f\u00fcmler<\/h4>\n<p>Bir Kubernetes k\u00fcmesi genellikle en az bir kontrol d\u00fczlemi (eski ad\u0131yla master node) ve bir veya daha fazla \u00e7al\u0131\u015fan d\u00fc\u011f\u00fcmden (worker node) olu\u015fur.<\/p>\n<ul>\n<li><b>Kontrol D\u00fczlemi (Control Plane):<\/b> K\u00fcmenin beynidir. API sunucusu, zamanlay\u0131c\u0131, kontrol\u00f6r y\u00f6neticisi ve etcd (k\u00fcme veritaban\u0131) gibi temel bile\u015fenleri bar\u0131nd\u0131r\u0131r. K\u00fcmenin genel durumunu y\u00f6netir ve \u00e7al\u0131\u015fan d\u00fc\u011f\u00fcmler \u00fczerindeki i\u015f y\u00fcklerini da\u011f\u0131t\u0131r.<\/li>\n<li><b>\u00c7al\u0131\u015fan D\u00fc\u011f\u00fcmler (Worker Nodes):<\/b> Uygulamalar\u0131n\u0131z\u0131 \u00e7al\u0131\u015ft\u0131ran Pod&#8217;lar\u0131 bar\u0131nd\u0131ran makinelerdir. Her \u00e7al\u0131\u015fan d\u00fc\u011f\u00fcmde kubelet (d\u00fc\u011f\u00fcm ajan\u0131) ve container runtime (Docker, containerd vb.) bulunur.<\/li>\n<\/ul>\n<p>Minimum bir k\u00fcme i\u00e7in bir kontrol d\u00fczlemi ve bir \u00e7al\u0131\u015fan d\u00fc\u011f\u00fcm yeterlidir. \u00dcretim ortamlar\u0131 i\u00e7in ise y\u00fcksek eri\u015filebilirlik (HA) sa\u011flamak amac\u0131yla genellikle \u00fc\u00e7 veya daha fazla kontrol d\u00fczlemi d\u00fc\u011f\u00fcm\u00fc ve birden fazla \u00e7al\u0131\u015fan d\u00fc\u011f\u00fcm \u00f6nerilir.<\/p>\n<h4>Donan\u0131m ve Yaz\u0131l\u0131m Gereksinimleri<\/h4>\n<p>Kurulum i\u00e7in her d\u00fc\u011f\u00fcmde belirli minimum donan\u0131m ve yaz\u0131l\u0131m gereksinimleri bulunmaktad\u0131r.<\/p>\n<table border=\"1\">\n<thead>\n<tr>\n<th>Bile\u015fen<\/th>\n<th>Minimum Gereksinim<\/th>\n<th>\u00d6nerilen Gereksinim (Test Ortam\u0131)<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>CPU<\/td>\n<td>2 \u00c7ekirdek<\/td>\n<td>4+ \u00c7ekirdek<\/td>\n<\/tr>\n<tr>\n<td>RAM<\/td>\n<td>2 GB<\/td>\n<td>4+ GB<\/td>\n<\/tr>\n<tr>\n<td>Disk Alan\u0131<\/td>\n<td>20 GB<\/td>\n<td>50+ GB SSD<\/td>\n<\/tr>\n<tr>\n<td>\u0130\u015fletim Sistemi<\/td>\n<td colspan=\"2\">Ubuntu 20.04+, CentOS 7\/8, RHEL 8+, Debian 10+<\/td>\n<\/tr>\n<tr>\n<td>\u0130nternet Ba\u011flant\u0131s\u0131<\/td>\n<td colspan=\"2\">Paket indirmek i\u00e7in gerekli<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>T\u00fcm d\u00fc\u011f\u00fcmler aras\u0131nda tam a\u011f ba\u011flant\u0131s\u0131 (hem genel hem de \u00f6zel a\u011flarda) ve her d\u00fc\u011f\u00fcm i\u00e7in benzersiz bir ana bilgisayar ad\u0131, MAC adresi ve product_uuid gereklidir.<\/p>\n<h4>A\u011f Yap\u0131land\u0131rmas\u0131 (CNI) Se\u00e7imi<\/h4>\n<p>Kubernetes, Pod&#8217;lar aras\u0131nda a\u011f ileti\u015fimi sa\u011flamak i\u00e7in bir Container Network Interface (CNI) eklentisine ihtiya\u00e7 duyar. Pop\u00fcler CNI se\u00e7enekleri aras\u0131nda Calico, Flannel, Cilium ve Weave Net bulunur. Her birinin kendine \u00f6zg\u00fc avantajlar\u0131 ve dezavantajlar\u0131 vard\u0131r (performans, g\u00fcvenlik, \u00f6zellikler). Bu rehberde, kurulum kolayl\u0131\u011f\u0131 nedeniyle Flannel&#8217;\u0131 kullanaca\u011f\u0131z, ancak \u00fcretim ortamlar\u0131 i\u00e7in daha geli\u015fmi\u015f bir CNI (\u00f6rne\u011fin Calico) d\u00fc\u015f\u00fcn\u00fclmelidir.<\/p>\n<h4>\u0130\u015fletim Sistemi Se\u00e7imi ve Ayarlar\u0131<\/h4>\n<p>Ubuntu (20.04 LTS veya \u00fcst\u00fc) veya CentOS (7\/8) gibi modern bir Linux da\u011f\u0131t\u0131m\u0131 kullanman\u0131z \u00f6nerilir. T\u00fcm d\u00fc\u011f\u00fcmlerde ayn\u0131 i\u015fletim sistemini ve s\u00fcr\u00fcm\u00fcn\u00fc kullanmak uyumluluk sorunlar\u0131n\u0131 azalt\u0131r.<br \/>\nHer d\u00fc\u011f\u00fcmde a\u015fa\u011f\u0131daki ayarlar\u0131n yap\u0131lmas\u0131 gerekmektedir:<\/p>\n<ul>\n<li>Swap&#8217;\u0131n devre d\u0131\u015f\u0131 b\u0131rak\u0131lmas\u0131: Kubernetes&#8217;in kararl\u0131 \u00e7al\u0131\u015fmas\u0131 i\u00e7in swap kullan\u0131lmamal\u0131d\u0131r.<\/li>\n<li><code>iptables<\/code> ayarlar\u0131n\u0131n yap\u0131lmas\u0131: <code>br_netfilter<\/code> mod\u00fcl\u00fcn\u00fcn y\u00fcklenmesi ve <code>net.bridge.bridge-nf-call-iptables<\/code> ayar\u0131n\u0131n 1 olarak belirlenmesi gerekmektedir.<\/li>\n<\/ul>\n<h3>\u00d6n Haz\u0131rl\u0131klar ve Gerekli Ara\u00e7lar<\/h3>\n<p>K\u00fcme kurulumuna ba\u015flamadan \u00f6nce, her bir d\u00fc\u011f\u00fcmde belirli \u00f6n haz\u0131rl\u0131klar\u0131n ve gerekli ara\u00e7lar\u0131n kurulumunun yap\u0131lmas\u0131 gerekmektedir. Bu ad\u0131mlar, k\u00fcmenin sorunsuz bir \u015fekilde ba\u015flat\u0131lmas\u0131n\u0131 sa\u011flar.<\/p>\n<h4>D\u00fc\u011f\u00fcm \u0130simlendirmesi ve IP Planlamas\u0131<\/h4>\n<p>Her d\u00fc\u011f\u00fcm i\u00e7in benzersiz ve anlaml\u0131 ana bilgisayar adlar\u0131 belirleyin (\u00f6rne\u011fin, <code>k8s-master-1<\/code>, <code>k8s-worker-1<\/code>). Ayr\u0131ca, her d\u00fc\u011f\u00fcm i\u00e7in statik IP adresleri ataman\u0131z \u00f6nerilir. Bu, k\u00fcme bile\u015fenlerinin birbirini her zaman do\u011fru \u015fekilde bulmas\u0131n\u0131 sa\u011flar. \u00d6rne\u011fin:<\/p>\n<ul>\n<li>Kontrol D\u00fczlemi: <code>192.168.1.100<\/code><\/li>\n<li>\u00c7al\u0131\u015fan D\u00fc\u011f\u00fcm 1: <code>192.168.1.101<\/code><\/li>\n<li>\u00c7al\u0131\u015fan D\u00fc\u011f\u00fcm 2: <code>192.168.1.102<\/code><\/li>\n<\/ul>\n<h4>SSH Eri\u015fimi ve G\u00fcvenlik<\/h4>\n<p>T\u00fcm d\u00fc\u011f\u00fcmlere SSH \u00fczerinden eri\u015fiminizin oldu\u011fundan emin olun. G\u00fcvenlik i\u00e7in parola yerine SSH anahtar \u00e7iftleri kullanman\u0131z \u015fiddetle tavsiye edilir. Ayr\u0131ca, g\u00fcvenlik duvar\u0131 (firewall) kurallar\u0131n\u0131 yap\u0131land\u0131rman\u0131z gerekecektir. Kubernetes&#8217;in ihtiya\u00e7 duydu\u011fu portlar\u0131 a\u00e7mal\u0131s\u0131n\u0131z:<\/p>\n<table border=\"1\">\n<thead>\n<tr>\n<th>Port<\/th>\n<th>Protokol<\/th>\n<th>Kaynak<\/th>\n<th>Hedef<\/th>\n<th>A\u00e7\u0131klama<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>6443<\/td>\n<td>TCP<\/td>\n<td>T\u00fcm d\u00fc\u011f\u00fcmler<\/td>\n<td>Kontrol D\u00fczlemi<\/td>\n<td>Kubernetes API Sunucusu<\/td>\n<\/tr>\n<tr>\n<td>2379-2380<\/td>\n<td>TCP<\/td>\n<td>Kontrol D\u00fczlemi<\/td>\n<td>Kontrol D\u00fczlemi<\/td>\n<td>etcd istemci ve e\u015fler aras\u0131 ileti\u015fim<\/td>\n<\/tr>\n<tr>\n<td>10250<\/td>\n<td>TCP<\/td>\n<td>T\u00fcm d\u00fc\u011f\u00fcmler<\/td>\n<td>T\u00fcm d\u00fc\u011f\u00fcmler<\/td>\n<td>Kubelet API<\/td>\n<\/tr>\n<tr>\n<td>10251<\/td>\n<td>TCP<\/td>\n<td>Kontrol D\u00fczlemi<\/td>\n<td>Kontrol D\u00fczlemi<\/td>\n<td>kube-scheduler<\/td>\n<\/tr>\n<tr>\n<td>10252<\/td>\n<td>TCP<\/td>\n<td>Kontrol D\u00fczlemi<\/td>\n<td>Kontrol D\u00fczlemi<\/td>\n<td>kube-controller-manager<\/td>\n<\/tr>\n<tr>\n<td>30000-32767<\/td>\n<td>TCP<\/td>\n<td>Harici<\/td>\n<td>\u00c7al\u0131\u015fan D\u00fc\u011f\u00fcmler<\/td>\n<td>NodePort Hizmetleri (iste\u011fe ba\u011fl\u0131)<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h4>Container Runtime Kurulumu (Docker\/containerd)<\/h4>\n<p>Kubernetes, container&#8217;lar\u0131 \u00e7al\u0131\u015ft\u0131rmak i\u00e7in bir container runtime&#8217;a ihtiya\u00e7 duyar. Modern Kubernetes s\u00fcr\u00fcmlerinde <code>containerd<\/code> \u00f6nerilmektedir. Her d\u00fc\u011f\u00fcmde <code>containerd<\/code>&#8216;\u0131 kural\u0131m:<\/p>\n<pre><code class=\"language-bash\"># T\u00fcm d\u00fc\u011f\u00fcmlerde \u00e7al\u0131\u015ft\u0131r\u0131n\nsudo apt update && sudo apt install -y apt-transport-https ca-certificates curl gnupg lsb-release\ncurl -fsSL https:\/\/download.docker.com\/linux\/ubuntu\/gpg | sudo gpg --dearmor -o \/usr\/share\/keyrings\/docker-archive-keyring.gpg\necho \"deb [arch=$(dpkg --print-architecture) signed-by=\/usr\/share\/keyrings\/docker-archive-keyring.gpg] https:\/\/download.docker.com\/linux\/ubuntu $(lsb_release -cs) stable\" | sudo tee \/etc\/apt\/sources.list.d\/docker.list > \/dev\/null\nsudo apt update\nsudo apt install -y containerd.io\nsudo systemctl enable --now containerd\nsudo mkdir -p \/etc\/containerd\nsudo containerd config default | sudo tee \/etc\/containerd\/config.toml\nsudo sed -i 's\/SystemdCgroup = false\/SystemdCgroup = true\/g' \/etc\/containerd\/config.toml\nsudo systemctl restart containerd<\/pre>\n<p><\/code><\/p>\n<h4><code>kubeadm<\/code>, <code>kubelet<\/code> ve <code>kubectl<\/code> Kurulumu<\/h4>\n<p>Bu \u00fc\u00e7 ara\u00e7, Kubernetes k\u00fcmesini kurmak ve y\u00f6netmek i\u00e7in temel bile\u015fenlerdir.<\/p>\n<ul>\n<li><code>kubeadm<\/code>: K\u00fcme ba\u015flatmak i\u00e7in kullan\u0131lan komut sat\u0131r\u0131 arac\u0131.<\/li>\n<li><code>kubelet<\/code>: Her d\u00fc\u011f\u00fcmde \u00e7al\u0131\u015fan ve Pod'lar\u0131 y\u00f6neten arac\u0131.<\/li>\n<li><code>kubectl<\/code>: K\u00fcme ile etkile\u015fim kurmak i\u00e7in kullan\u0131lan komut sat\u0131r\u0131 arac\u0131.<\/li>\n<\/ul>\n<pre><code class=\"language-bash\"># T\u00fcm d\u00fc\u011f\u00fcmlerde \u00e7al\u0131\u015ft\u0131r\u0131n\nsudo apt update\nsudo apt install -y apt-transport-https curl\ncurl -s https:\/\/packages.cloud.google.com\/apt\/doc\/apt-key.gpg | sudo apt-key add -\necho \"deb https:\/\/apt.kubernetes.io\/ kubernetes-xenial main\" | sudo tee \/etc\/apt\/sources.list.d\/kubernetes.list\nsudo apt update\nsudo apt install -y kubelet kubeadm kubectl\nsudo apt-mark hold kubelet kubeadm kubectl<\/pre>\n<p><\/code><\/p>\n<p>Swap'\u0131 devre d\u0131\u015f\u0131 b\u0131rak\u0131n ve <code>br_netfilter<\/code> mod\u00fcl\u00fcn\u00fc etkinle\u015ftirin:<\/p>\n<pre><code class=\"language-bash\"># T\u00fcm d\u00fc\u011f\u00fcmlerde \u00e7al\u0131\u015ft\u0131r\u0131n\nsudo swapoff -a\nsudo sed -i '\/ swap \/ s\/^\\(.*\\)$\/#\\1\/g' \/etc\/fstab\n\nsudo modprobe br_netfilter\necho \"net.bridge.bridge-nf-call-iptables = 1\" | sudo tee -a \/etc\/sysctl.conf\necho \"net.bridge.bridge-nf-call-ip6tables = 1\" | sudo tee -a \/etc\/sysctl.conf\necho \"net.ipv4.ip_forward = 1\" | sudo tee -a \/etc\/sysctl.conf\nsudo sysctl --system<\/pre>\n<p><\/code><\/p>\n<h3>Kontrol D\u00fczlemi (Master Node) Kurulumu<\/h3>\n<p>\u00d6n haz\u0131rl\u0131klar tamamland\u0131ktan sonra, kontrol d\u00fczlemi d\u00fc\u011f\u00fcm\u00fcn\u00fc ba\u015flatmaya haz\u0131r\u0131z. Bu, k\u00fcmenin temelini olu\u015fturacakt\u0131r.<\/p>\n<h4><code>kubeadm init<\/code> ile K\u00fcme Ba\u015flatma<\/h4>\n<p>Kontrol d\u00fczlemi d\u00fc\u011f\u00fcm\u00fcnde <code>kubeadm init<\/code> komutunu \u00e7al\u0131\u015ft\u0131rarak k\u00fcmenin ba\u015flat\u0131lmas\u0131n\u0131 sa\u011fl\u0131yoruz. <code>pod-network-cidr<\/code> parametresi, Pod'lar\u0131n kullanaca\u011f\u0131 IP aral\u0131\u011f\u0131n\u0131 belirtir ve se\u00e7ti\u011finiz CNI eklentisi ile uyumlu olmal\u0131d\u0131r (Flannel i\u00e7in genellikle <code>10.244.0.0\/16<\/code>).<\/p>\n<pre><code class=\"language-bash\"># Sadece kontrol d\u00fczlemi d\u00fc\u011f\u00fcm\u00fcnde \u00e7al\u0131\u015ft\u0131r\u0131n\nsudo kubeadm init --pod-network-cidr=10.244.0.0\/16<\/pre>\n<p><\/code><br \/>\nKomutun \u00e7\u0131kt\u0131s\u0131, <code>kubectl<\/code>'i yap\u0131land\u0131rmak i\u00e7in gereken ad\u0131mlar\u0131 ve \u00e7al\u0131\u015fan d\u00fc\u011f\u00fcmlerin k\u00fcmeye kat\u0131lmas\u0131n\u0131 sa\u011flayacak <code>kubeadm join<\/code> komutunu i\u00e7erecektir. Bu \u00e7\u0131kt\u0131y\u0131 dikkatlice kopyalay\u0131n ve saklay\u0131n!<\/p>\n<h4>Kubeconfig Dosyas\u0131n\u0131n Yap\u0131land\u0131r\u0131lmas\u0131<\/h4>\n<p><code>kubeadm init<\/code> komutundan sonra, <code>kubectl<\/code>'i kullanarak k\u00fcme ile etkile\u015fim kurabilmek i\u00e7in kullan\u0131c\u0131 yap\u0131land\u0131rmas\u0131n\u0131 ayarlaman\u0131z gerekir.<\/p>\n<pre><code class=\"language-bash\"># Sadece kontrol d\u00fczlemi d\u00fc\u011f\u00fcm\u00fcnde \u00e7al\u0131\u015ft\u0131r\u0131n\nmkdir -p $HOME\/.kube\nsudo cp -i \/etc\/kubernetes\/admin.conf $HOME\/.kube\/config\nsudo chown $(id -u):$(id -g) $HOME\/.kube\/config<\/pre>\n<p><\/code><\/p>\n<h4>Pod A\u011f Eklentisi (CNI) Kurulumu<\/h4>\n<p>K\u00fcme ba\u015flat\u0131ld\u0131ktan sonra, Pod'lar aras\u0131 ileti\u015fimi sa\u011flamak i\u00e7in bir CNI eklentisi kurmal\u0131s\u0131n\u0131z. Bu rehberde Flannel kullan\u0131yoruz.<\/p>\n<pre><code class=\"language-bash\"># Sadece kontrol d\u00fczlemi d\u00fc\u011f\u00fcm\u00fcnde \u00e7al\u0131\u015ft\u0131r\u0131n\nkubectl apply -f https:\/\/raw.githubusercontent.com\/flannel-io\/flannel\/master\/Documentation\/kube-flannel.yml<\/pre>\n<p><\/code><br \/>\nBu komut, Flannel Pod'lar\u0131n\u0131 k\u00fcmenize da\u011f\u0131tacak ve a\u011f yap\u0131land\u0131rmas\u0131n\u0131 tamamlayacakt\u0131r. Birka\u00e7 dakika i\u00e7inde Pod'lar\u0131n <code>Running<\/code> durumuna ge\u00e7ti\u011fini g\u00f6rmelisiniz.<\/p>\n<h3>\u00c7al\u0131\u015fan D\u00fc\u011f\u00fcmleri (Worker Nodes) Ekleme<\/h3>\n<p>Kontrol d\u00fczlemi haz\u0131r oldu\u011funda, \u00e7al\u0131\u015fan d\u00fc\u011f\u00fcmleri k\u00fcmeye dahil edebiliriz.<\/p>\n<h4>\u00c7al\u0131\u015fan D\u00fc\u011f\u00fcmlerde \u00d6n Haz\u0131rl\u0131klar<\/h4>\n<p>\u00c7al\u0131\u015fan d\u00fc\u011f\u00fcmlerde de kontrol d\u00fczlemi d\u00fc\u011f\u00fcm\u00fcnde yapt\u0131\u011f\u0131n\u0131z <code>containerd<\/code>, <code>kubeadm<\/code>, <code>kubelet<\/code>, <code>kubectl<\/code> kurulumlar\u0131n\u0131, swap kapatma ve <code>br_netfilter<\/code> ayarlar\u0131n\u0131 yapm\u0131\u015f olman\u0131z gerekmektedir. T\u00fcm bu \u00f6n haz\u0131rl\u0131klar\u0131n tamamland\u0131\u011f\u0131ndan emin olun.<\/p>\n<h4><code>kubeadm join<\/code> ile D\u00fc\u011f\u00fcmleri K\u00fcme'ye Dahil Etme<\/h4>\n<p>Kontrol d\u00fczlemi kurulumu s\u0131ras\u0131nda size verilen <code>kubeadm join<\/code> komutunu, her bir \u00e7al\u0131\u015fan d\u00fc\u011f\u00fcmde <code>sudo<\/code> ile \u00e7al\u0131\u015ft\u0131r\u0131n. Bu komut, bir token ve kontrol d\u00fczlemi IP adresi i\u00e7erir.<\/p>\n<pre><code class=\"language-bash\"># Her bir \u00e7al\u0131\u015fan d\u00fc\u011f\u00fcmde \u00e7al\u0131\u015ft\u0131r\u0131n (\u00f6rnek komut)\nsudo kubeadm join 192.168.1.100:6443 --token <token> --discovery-token-ca-cert-hash sha256:<hash><\/pre>\n<p><\/code><br \/>\n<code><token><\/code> ve <code><hash><\/code> de\u011ferlerini kendi <code>kubeadm init<\/code> \u00e7\u0131kt\u0131n\u0131zdan ald\u0131\u011f\u0131n\u0131z de\u011ferlerle de\u011fi\u015ftirin. Bu komut, \u00e7al\u0131\u015fan d\u00fc\u011f\u00fcm\u00fcn kontrol d\u00fczlemi ile ileti\u015fim kurmas\u0131n\u0131 ve k\u00fcmeye kat\u0131lmas\u0131n\u0131 sa\u011flar.<\/p>\n<h4>D\u00fc\u011f\u00fcmlerin Durumunu Kontrol Etme<\/h4>\n<p>T\u00fcm \u00e7al\u0131\u015fan d\u00fc\u011f\u00fcmleri k\u00fcmeye ekledikten sonra, kontrol d\u00fczlemi d\u00fc\u011f\u00fcm\u00fcnden <code>kubectl get nodes<\/code> komutunu \u00e7al\u0131\u015ft\u0131rarak d\u00fc\u011f\u00fcmlerin durumunu kontrol edebilirsiniz.<\/p>\n<pre><code class=\"language-bash\"># Sadece kontrol d\u00fczlemi d\u00fc\u011f\u00fcm\u00fcnde \u00e7al\u0131\u015ft\u0131r\u0131n\nkubectl get nodes<\/pre>\n<p><\/code><br \/>\nBirka\u00e7 dakika i\u00e7inde t\u00fcm d\u00fc\u011f\u00fcmlerin <code>Ready<\/code> durumuna ge\u00e7ti\u011fini g\u00f6rmelisiniz. E\u011fer bir d\u00fc\u011f\u00fcm <code>NotReady<\/code> durumundaysa, <code>sudo systemctl status kubelet<\/code> ve <code>sudo journalctl -u kubelet<\/code> komutlar\u0131 ile loglar\u0131 kontrol ederek sorun gidermeye \u00e7al\u0131\u015f\u0131n.<\/p>\n<h3>K\u00fcme Do\u011frulama ve Temel Kullan\u0131m<\/h3>\n<p>K\u00fcmeniz art\u0131k \u00e7al\u0131\u015f\u0131r durumda. \u015eimdi, k\u00fcme bile\u015fenlerinin d\u00fczg\u00fcn \u00e7al\u0131\u015ft\u0131\u011f\u0131ndan emin olal\u0131m ve basit bir uygulama da\u011f\u0131tal\u0131m.<\/p>\n<h4>K\u00fcme Bile\u015fenlerini Kontrol Etme<\/h4>\n<p>K\u00fcmenizin sistem Pod'lar\u0131n\u0131n durumunu kontrol etmek i\u00e7in a\u015fa\u011f\u0131daki komutu kullan\u0131n:<\/p>\n<pre><code class=\"language-bash\"># Sadece kontrol d\u00fczlemi d\u00fc\u011f\u00fcm\u00fcnde \u00e7al\u0131\u015ft\u0131r\u0131n\nkubectl get pods -A<\/pre>\n<p><\/code><br \/>\nT\u00fcm Pod'lar\u0131n <code>Running<\/code> durumunda olmas\u0131 gerekmektedir. \u00d6zellikle <code>kube-system<\/code> namespace'indeki Pod'lar (kube-apiserver, kube-controller-manager, kube-scheduler, etcd, kube-proxy, flannel) kritik \u00f6neme sahiptir.<\/p>\n<h4>\u0130lk Uygulaman\u0131z\u0131 Da\u011f\u0131tma (Deployment ve Service)<\/h4>\n<p>Basit bir Nginx uygulamas\u0131 da\u011f\u0131tarak k\u00fcmenizin \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131 test edelim.<\/p>\n<pre><code class=\"language-bash\"># Nginx Deployment olu\u015fturma\nkubectl create deployment nginx-app --image=nginx --replicas=3\n\n# Deployment'\u0131n durumunu kontrol etme\nkubectl get deployments\nkubectl get pods -l app=nginx-app\n\n# Nginx uygulamas\u0131n\u0131 d\u0131\u015far\u0131ya a\u00e7mak i\u00e7in bir NodePort Service olu\u015fturma\nkubectl expose deployment nginx-app --type=NodePort --port=80<\/pre>\n<p><\/code><br \/>\n<code>kubectl get services<\/code> komutunu \u00e7al\u0131\u015ft\u0131rarak Nginx servisi i\u00e7in atanan NodePort'u g\u00f6rebilirsiniz (genellikle 30000-32767 aral\u0131\u011f\u0131nda bir port). Daha sonra, herhangi bir \u00e7al\u0131\u015fan d\u00fc\u011f\u00fcm\u00fcn IP adresini ve bu NodePort'u kullanarak Nginx sayfas\u0131na web taray\u0131c\u0131n\u0131zdan eri\u015febilirsiniz (\u00f6rn. <code>http:\/\/<worker-node-ip>:<nodeport><\/code>).<\/p>\n<h4>K\u00fcme Kaynaklar\u0131n\u0131 \u0130zleme<\/h4>\n<p>K\u00fcme kaynaklar\u0131n\u0131 izlemek i\u00e7in <code>kubectl top nodes<\/code> ve <code>kubectl top pods<\/code> gibi komutlar\u0131 kullanabilirsiniz. Bu komutlar i\u00e7in Metrics Server'\u0131n kurulu olmas\u0131 gerekir:<\/p>\n<pre><code class=\"language-bash\"># Sadece kontrol d\u00fczlemi d\u00fc\u011f\u00fcm\u00fcnde \u00e7al\u0131\u015ft\u0131r\u0131n\nkubectl apply -f https:\/\/github.com\/kubernetes-sigs\/metrics-server\/releases\/latest\/download\/components.yaml<\/pre>\n<p><\/code><br \/>\nBirka\u00e7 dakika sonra <code>kubectl top nodes<\/code> ve <code>kubectl top pods<\/code> komutlar\u0131n\u0131 kullanarak CPU ve bellek kullan\u0131m\u0131n\u0131 g\u00f6r\u00fcnt\u00fcleyebilirsiniz.<\/p>\n<h3>Sonraki Ad\u0131mlar ve \u00d6nemli Konular<\/h3>\n<p>Temel Kubernetes k\u00fcmesi kurulumunu tamamlad\u0131n\u0131z. Ancak, \u00fcretim ortamlar\u0131 i\u00e7in veya daha geli\u015fmi\u015f senaryolar i\u00e7in dikkate alman\u0131z gereken bir\u00e7ok ek konu bulunmaktad\u0131r.<\/p>\n<h4>Y\u00fcksek Eri\u015filebilirlik (HA) Yap\u0131land\u0131rmas\u0131<\/h4>\n<p>Tek bir kontrol d\u00fczlemi d\u00fc\u011f\u00fcm\u00fc, tek hata noktas\u0131 (Single Point of Failure) olu\u015fturur. \u00dcretim ortamlar\u0131 i\u00e7in, birden fazla kontrol d\u00fczlemi d\u00fc\u011f\u00fcm\u00fc ile y\u00fcksek eri\u015filebilirlik (HA) yap\u0131land\u0131rmas\u0131 \u015fiddetle \u00f6nerilir. Bu genellikle bir y\u00fck dengeleyici (load balancer) ve harici bir etcd k\u00fcmesi veya kubeadm'in dahili etcd replikasyon mekanizmas\u0131 ile ger\u00e7ekle\u015ftirilir.<\/p>\n<h4>Depolama \u00c7\u00f6z\u00fcmleri (Persistent Storage)<\/h4>\n<p>Pod'lar ge\u00e7icidir ve yeniden ba\u015flat\u0131ld\u0131klar\u0131nda veya ba\u015fka bir d\u00fc\u011f\u00fcme ta\u015f\u0131nd\u0131klar\u0131nda verilerini kaybederler. Uygulamalar\u0131n\u0131z\u0131n kal\u0131c\u0131 verilere ihtiyac\u0131 varsa, bir depolama \u00e7\u00f6z\u00fcm\u00fc (Persistent Volume) entegre etmeniz gerekir. NFS, Ceph, GlusterFS gibi depolama sistemleri veya bulut sa\u011flay\u0131c\u0131lar\u0131n\u0131n sundu\u011fu blok depolama hizmetleri Kubernetes ile entegre edilebilir.<\/p>\n<h4>G\u00fcvenlik En \u0130yi Uygulamalar\u0131<\/h4>\n<p>Kubernetes k\u00fcmenizin g\u00fcvenli\u011fini sa\u011flamak kritik \u00f6neme sahiptir. Bu, RBAC (Role-Based Access Control) yap\u0131land\u0131rmas\u0131, a\u011f politikalar\u0131 (Network Policies), g\u00fcvenlik ba\u011flamlar\u0131 (Security Contexts) ve g\u00fcncel g\u00fcvenlik yamalar\u0131n\u0131n uygulanmas\u0131 gibi konular\u0131 i\u00e7erir. Ayr\u0131ca, k\u00fcme bile\u015fenlerinin sertifika y\u00f6netimini de d\u00fczenli olarak kontrol etmelisiniz.<\/p>\n<h4>Y\u00fckseltme ve Bak\u0131m<\/h4>\n<p>Kubernetes s\u00fcrekli geli\u015fen bir platformdur ve d\u00fczenli olarak yeni s\u00fcr\u00fcmler yay\u0131nlan\u0131r. K\u00fcmenizi g\u00fcncel tutmak, yeni \u00f6zelliklerden yararlanmak ve g\u00fcvenlik a\u00e7\u0131klar\u0131n\u0131 kapatmak i\u00e7in \u00f6nemlidir. <code>kubeadm upgrade<\/code> komutu ile k\u00fcmenizi y\u00fckseltebilirsiniz, ancak y\u00fckseltme \u00f6ncesinde mutlaka yedekleme yapmal\u0131 ve dok\u00fcmantasyonu dikkatlice okumal\u0131s\u0131n\u0131z.<\/p>\n<h3>Sonu\u00e7<\/h3>\n<p>Bu makalede, kendi Kubernetes k\u00fcmenizi ba\u015ftan sona nas\u0131l kuraca\u011f\u0131n\u0131z\u0131 detayl\u0131 bir \u015fekilde ele ald\u0131k. \u00d6n haz\u0131rl\u0131klardan ba\u015flayarak, kontrol d\u00fczlemi ve \u00e7al\u0131\u015fan d\u00fc\u011f\u00fcmlerin kurulumuna, k\u00fcme do\u011frulama ve temel uygulama da\u011f\u0131t\u0131m\u0131na kadar t\u00fcm ad\u0131mlar\u0131 kapsad\u0131k. Kendi k\u00fcmenizi kurmak, Kubernetes'in temel prensiplerini anlamak ve platform \u00fczerinde tam kontrol sahibi olmak i\u00e7in harika bir yoldur. Her ne kadar bu s\u00fcre\u00e7 ba\u015flang\u0131\u00e7ta karma\u015f\u0131k g\u00f6r\u00fcnse de, ad\u0131m ad\u0131m ilerleyerek ba\u015far\u0131l\u0131 bir kurulum ger\u00e7ekle\u015ftirebilirsiniz. Unutmay\u0131n, bu kurulum bir ba\u015flang\u0131\u00e7 noktas\u0131d\u0131r ve \u00fcretim ortamlar\u0131 i\u00e7in daha fazla optimizasyon, g\u00fcvenlik ve y\u00fcksek eri\u015filebilirlik yap\u0131land\u0131rmalar\u0131 gerekecektir.<\/p>\n<h3>SSS (S\u0131k Sorulan Sorular)<\/h3>\n<h4>1. K8s k\u00fcmesi kurmak ne kadar s\u00fcrer?<\/h4>\n<p>\u00d6n haz\u0131rl\u0131klar dahil olmak \u00fczere, bu rehberdeki ad\u0131mlar\u0131 takip ederek temel bir k\u00fcme kurulumu 1-2 saat s\u00fcrebilir. Deneyimli kullan\u0131c\u0131lar i\u00e7in bu s\u00fcre daha da k\u0131salabilir.<\/p>\n<h4>2. Hangi CNI eklentisini se\u00e7meliyim?<\/h4>\n<p>Ba\u015flang\u0131\u00e7 i\u00e7in Flannel kolay kurulumu nedeniyle iyi bir se\u00e7enektir. \u00dcretim ortamlar\u0131 i\u00e7in Calico (geli\u015fmi\u015f a\u011f politikalar\u0131 i\u00e7in), Cilium (eBPF tabanl\u0131 y\u00fcksek performans) veya Weave Net (kolay kurulum ve \u00f6zellikler) gibi se\u00e7enekler daha uygun olabilir. Se\u00e7iminiz, g\u00fcvenlik, performans ve \u00f6zellik gereksinimlerinize ba\u011fl\u0131d\u0131r.<\/p>\n<h4>3. K\u00fcme kurulumunda kar\u015f\u0131la\u015f\u0131lan yayg\u0131n sorunlar nelerdir?<\/h4>\n<p>Yayg\u0131n sorunlar aras\u0131nda swap'\u0131n devre d\u0131\u015f\u0131 b\u0131rak\u0131lmamas\u0131, g\u00fcvenlik duvar\u0131 (firewall) portlar\u0131n\u0131n a\u00e7\u0131k olmamas\u0131, container runtime ile ilgili sorunlar, CNI eklentisinin d\u00fczg\u00fcn \u00e7al\u0131\u015fmamas\u0131 ve <code>kubeadm join<\/code> komutunun yanl\u0131\u015f kullan\u0131lmas\u0131 yer al\u0131r. Loglar\u0131 (<code>journalctl -u kubelet<\/code>, <code>kubectl logs -n kube-system <pod-ad\u0131><\/code>) kontrol etmek sorun gidermede \u00e7ok yard\u0131mc\u0131 olacakt\u0131r.<\/p>\n<h4>4. \u00dcretim ortam\u0131 i\u00e7in bu kurulum uygun mu?<\/h4>\n<p>Bu rehber, Kubernetes'i \u00f6\u011frenmek ve test ortamlar\u0131 olu\u015fturmak i\u00e7in harika bir ba\u015flang\u0131\u00e7 noktas\u0131d\u0131r. Ancak, \u00fcretim ortamlar\u0131 i\u00e7in y\u00fcksek eri\u015filebilirlik (HA kontrol d\u00fczlemi), geli\u015fmi\u015f depolama \u00e7\u00f6z\u00fcmleri, kapsaml\u0131 izleme ve loglama, g\u00fcvenlik sertle\u015fmesi ve otomatik yedekleme gibi ek yap\u0131land\u0131rmalar gereklidir. Bu ad\u0131mlar, k\u00fcmenizin dayan\u0131kl\u0131l\u0131\u011f\u0131n\u0131 ve g\u00fcvenli\u011fini art\u0131racakt\u0131r.<\/p>\n<h4>5. <code>kubeadm init<\/code> komutunu yanl\u0131\u015f \u00e7al\u0131\u015ft\u0131rd\u0131m, nas\u0131l s\u0131f\u0131rlayabilirim?<\/h4>\n<p>E\u011fer <code>kubeadm init<\/code> komutunu yanl\u0131\u015f \u00e7al\u0131\u015ft\u0131rd\u0131ysan\u0131z veya k\u00fcmenizi s\u0131f\u0131rlamak isterseniz, kontrol d\u00fczlemi d\u00fc\u011f\u00fcm\u00fcnde a\u015fa\u011f\u0131daki komutu \u00e7al\u0131\u015ft\u0131rabilirsiniz:<\/p>\n<pre><code class=\"language-bash\">sudo kubeadm reset\nsudo rm -rf $HOME\/.kube<\/pre>\n<p><\/code><br \/>\nBu komut, k\u00fcme bile\u015fenlerini kald\u0131racak ve d\u00fc\u011f\u00fcm\u00fc temizleyecektir. Ard\u0131ndan kurulum ad\u0131mlar\u0131n\u0131 ba\u015ftan tekrar edebilirsiniz. \u00c7al\u0131\u015fan d\u00fc\u011f\u00fcmler i\u00e7in de <code>sudo kubeadm reset<\/code> komutu kullan\u0131labilir.<\/p>\n","protected":false},"excerpt":{"rendered":"Kubernetes K\u00fcmesi Kurulumu: Ad\u0131m Ad\u0131m Rehber\nG\u00fcn\u00fcm\u00fcz\u00fcn h\u0131zla de\u011fi\u015fen teknoloji d\u00fcnyas\u0131nda, uygulamalar\u0131n da\u011f\u0131t\u0131m\u0131, \u00f6l\u00e7eklenmesi ve y\u00f6net&#8230;","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":[1491],"tags":[],"class_list":{"0":"post-38978","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-kubernetes","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>Kubernetes K\u00fcmesi Kurulumu: Ad\u0131m Ad\u0131m 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\/kubernetes-kumesi-kurulumu-adim-adim-rehber\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Kubernetes K\u00fcmesi Kurulumu: Ad\u0131m Ad\u0131m Rehber\" \/>\n<meta property=\"og:description\" content=\"Kubernetes K\u00fcmesi Kurulumu: Ad\u0131m Ad\u0131m Rehber G\u00fcn\u00fcm\u00fcz\u00fcn h\u0131zla de\u011fi\u015fen teknoloji d\u00fcnyas\u0131nda, uygulamalar\u0131n da\u011f\u0131t\u0131m\u0131, \u00f6l\u00e7eklenmesi ve y\u00f6net...\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/kubernetes-kumesi-kurulumu-adim-adim-rehber\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2026-02-11T18:00:42+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=\"16 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/kubernetes-kumesi-kurulumu-adim-adim-rehber\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/kubernetes-kumesi-kurulumu-adim-adim-rehber\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"Kubernetes K\u00fcmesi Kurulumu: Ad\u0131m Ad\u0131m Rehber\",\"datePublished\":\"2026-02-11T18:00:42+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/kubernetes-kumesi-kurulumu-adim-adim-rehber\/\"},\"wordCount\":2660,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"articleSection\":[\"Kubernetes\"],\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/kubernetes-kumesi-kurulumu-adim-adim-rehber\/#respond\"]}],\"copyrightYear\":\"2026\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/kubernetes-kumesi-kurulumu-adim-adim-rehber\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/kubernetes-kumesi-kurulumu-adim-adim-rehber\/\",\"name\":\"Kubernetes K\u00fcmesi Kurulumu: Ad\u0131m Ad\u0131m Rehber - Kodlar\u0131n Gizemli D\u00fcnyas\u0131\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2026-02-11T18:00:42+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/kubernetes-kumesi-kurulumu-adim-adim-rehber\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/kubernetes-kumesi-kurulumu-adim-adim-rehber\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/kubernetes-kumesi-kurulumu-adim-adim-rehber\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Kubernetes K\u00fcmesi Kurulumu: Ad\u0131m Ad\u0131m 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":"Kubernetes K\u00fcmesi Kurulumu: Ad\u0131m Ad\u0131m 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\/kubernetes-kumesi-kurulumu-adim-adim-rehber\/","og_locale":"tr_TR","og_type":"article","og_title":"Kubernetes K\u00fcmesi Kurulumu: Ad\u0131m Ad\u0131m Rehber","og_description":"Kubernetes K\u00fcmesi Kurulumu: Ad\u0131m Ad\u0131m Rehber G\u00fcn\u00fcm\u00fcz\u00fcn h\u0131zla de\u011fi\u015fen teknoloji d\u00fcnyas\u0131nda, uygulamalar\u0131n da\u011f\u0131t\u0131m\u0131, \u00f6l\u00e7eklenmesi ve y\u00f6net...","og_url":"https:\/\/fatihsoysal.com\/blog\/kubernetes-kumesi-kurulumu-adim-adim-rehber\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2026-02-11T18:00:42+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"16 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/kubernetes-kumesi-kurulumu-adim-adim-rehber\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/kubernetes-kumesi-kurulumu-adim-adim-rehber\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"Kubernetes K\u00fcmesi Kurulumu: Ad\u0131m Ad\u0131m Rehber","datePublished":"2026-02-11T18:00:42+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/kubernetes-kumesi-kurulumu-adim-adim-rehber\/"},"wordCount":2660,"commentCount":0,"publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"articleSection":["Kubernetes"],"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fatihsoysal.com\/blog\/kubernetes-kumesi-kurulumu-adim-adim-rehber\/#respond"]}],"copyrightYear":"2026","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/kubernetes-kumesi-kurulumu-adim-adim-rehber\/","url":"https:\/\/fatihsoysal.com\/blog\/kubernetes-kumesi-kurulumu-adim-adim-rehber\/","name":"Kubernetes K\u00fcmesi Kurulumu: Ad\u0131m Ad\u0131m Rehber - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2026-02-11T18:00:42+00:00","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/kubernetes-kumesi-kurulumu-adim-adim-rehber\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/kubernetes-kumesi-kurulumu-adim-adim-rehber\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/kubernetes-kumesi-kurulumu-adim-adim-rehber\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Kubernetes K\u00fcmesi Kurulumu: Ad\u0131m Ad\u0131m 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\/38978","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=38978"}],"version-history":[{"count":0,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/38978\/revisions"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=38978"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=38978"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=38978"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}