{"id":1268,"date":"2025-11-03T18:39:02","date_gmt":"2025-11-03T15:39:02","guid":{"rendered":"https:\/\/www.dchost.com\/blog\/hic-kesilmeden-yayinda-kalmak-mumkun-mu-anycast-dns-ve-otomatik-failover-ile-nasil-saglanir\/"},"modified":"2025-11-03T18:39:02","modified_gmt":"2025-11-03T15:39:02","slug":"hic-kesilmeden-yayinda-kalmak-mumkun-mu-anycast-dns-ve-otomatik-failover-ile-nasil-saglanir","status":"publish","type":"post","link":"https:\/\/www.dchost.com\/blog\/hic-kesilmeden-yayinda-kalmak-mumkun-mu-anycast-dns-ve-otomatik-failover-ile-nasil-saglanir\/","title":{"rendered":"Hi\u00e7 Kesilmeden Yay\u0131nda Kalmak M\u00fcmk\u00fcn m\u00fc? Anycast DNS ve Otomatik Failover ile Nas\u0131l Sa\u011flan\u0131r?"},"content":{"rendered":"<div class=\"dchost-blog-content-wrapper\"><div id=\"toc_container\" class=\"toc_transparent no_bullets\"><p class=\"toc_title\">\u0130&ccedil;indekiler<\/p><ul class=\"toc_list\"><li><a href=\"#Ofiste_Gece_Yarisi_Bir_Kopus_Bir_Aydinlanma\"><span class=\"toc_number toc_depth_1\">1<\/span> Ofiste Gece Yar\u0131s\u0131: Bir Kopu\u015f, Bir Ayd\u0131nlanma<\/a><\/li><li><a href=\"#Once_Can_Yakan_Gercek_Kesinti_Neden_Bir_Anda_Dunya_Capinda_Hissedilir\"><span class=\"toc_number toc_depth_1\">2<\/span> \u00d6nce Can Yakan Ger\u00e7ek: Kesinti Neden Bir Anda D\u00fcnya \u00c7ap\u0131nda Hissedilir?<\/a><\/li><li><a href=\"#Anycast_DNS_Nedir_En_Yakin_Kapidan_Iceri_Alinmanin_Basit_Hali\"><span class=\"toc_number toc_depth_1\">3<\/span> Anycast DNS Nedir? En Yak\u0131n Kap\u0131dan \u0130\u00e7eri Al\u0131nman\u0131n Basit Hali<\/a><\/li><li><a href=\"#Otomatik_Failover_Yanit_Vermeyen_Hizmete_Sessiz_Bir_Serit_Degistirme\"><span class=\"toc_number toc_depth_1\">4<\/span> Otomatik Failover: Yan\u0131t Vermeyen Hizmete Sessiz Bir \u015eerit De\u011fi\u015ftirme<\/a><\/li><li><a href=\"#Kendi_Kurulum_Hikayem_Iki_Bolge_Bir_Saglik_Nabzi_Sakin_Gecis\"><span class=\"toc_number toc_depth_1\">5<\/span> Kendi Kurulum Hikayem: \u0130ki B\u00f6lge, Bir Sa\u011fl\u0131k Nabz\u0131, Sakin Ge\u00e7i\u015f<\/a><\/li><li><a href=\"#TTL_Onbellek_ve_Diger_Kucuk_Ama_Etkili_Ayrintilar\"><span class=\"toc_number toc_depth_1\">6<\/span> TTL, \u00d6nbellek ve Di\u011fer K\u00fc\u00e7\u00fck Ama Etkili Ayr\u0131nt\u0131lar<\/a><\/li><li><a href=\"#Anycast_DNSin_Sahne_Arkasi_Trafigin_Dagilimi_ve_Kucuk_Surprizler\"><span class=\"toc_number toc_depth_1\">7<\/span> Anycast DNS\u2019in Sahne Arkas\u0131: Trafi\u011fin Da\u011f\u0131l\u0131m\u0131 ve K\u00fc\u00e7\u00fck S\u00fcrprizler<\/a><\/li><li><a href=\"#Failover_Mantigini_Uygularken_Karsilastigim_Tuzaklar\"><span class=\"toc_number toc_depth_1\">8<\/span> Failover Mant\u0131\u011f\u0131n\u0131 Uygularken Kar\u015f\u0131la\u015ft\u0131\u011f\u0131m Tuzaklar<\/a><\/li><li><a href=\"#DDoS_ve_Anycast_Trafigi_Yayarak_Dayaniklilik_Kazanmak\"><span class=\"toc_number toc_depth_1\">9<\/span> DDoS ve Anycast: Trafi\u011fi Yayarak Dayan\u0131kl\u0131l\u0131k Kazanmak<\/a><\/li><li><a href=\"#Gozlemleme_Gormedigin_Sorunu_Yonetemezsin\"><span class=\"toc_number toc_depth_1\">10<\/span> G\u00f6zlemleme: G\u00f6rmedi\u011fin Sorunu Y\u00f6netemezsin<\/a><\/li><li><a href=\"#Adim_Adim_Baslangic_Plani_Basit_Tut_Sik_Test_Et\"><span class=\"toc_number toc_depth_1\">11<\/span> Ad\u0131m Ad\u0131m Ba\u015flang\u0131\u00e7 Plan\u0131: Basit Tut, S\u0131k Test Et<\/a><\/li><li><a href=\"#Kapanis_Her_Kapidan_Ayni_Magazaya_Girmenin_Huzuru\"><span class=\"toc_number toc_depth_1\">12<\/span> Kapan\u0131\u015f: Her Kap\u0131dan Ayn\u0131 Ma\u011fazaya Girmenin Huzuru<\/a><\/li><\/ul><\/div>\n<h2 id=\"section-1\"><span id=\"Ofiste_Gece_Yarisi_Bir_Kopus_Bir_Aydinlanma\">Ofiste Gece Yar\u0131s\u0131: Bir Kopu\u015f, Bir Ayd\u0131nlanma<\/span><\/h2>\n<p>Hi\u00e7 sizi uykunuzdan kald\u0131ran bir bildirimle yataktan f\u0131rlad\u0131\u011f\u0131n\u0131z oldu mu? Benim oldu. Bir gece, saat 02:17. Telefon \u00e7ald\u0131, ekibin acil kanal\u0131nda mesajlar ya\u011fmur gibi. Site a\u00e7\u0131lm\u0131yor, m\u00fc\u015fteri servisleri susmuyor. Sunucular sapasa\u011flam g\u00f6r\u00fcn\u00fcyor ama kullan\u0131c\u0131lar 404 yerine sonsuz bir bekleyi\u015fle kar\u015f\u0131la\u015f\u0131yor. Dakikalar i\u00e7ine sinmese de, sorunun sunucu taraf\u0131nda olmad\u0131\u011f\u0131n\u0131 fark ettik. D\u0131\u015far\u0131dan DNS sorgular\u0131 baz\u0131 b\u00f6lgelerde yan\u0131tlam\u0131yordu. O an kafamda \u015fim\u015fek \u00e7akt\u0131: \u201cTek bir yoldan d\u00fcnyaya ula\u015fmaya \u00e7al\u0131\u015f\u0131yoruz; o yol kapan\u0131nca her \u015fey durmu\u015f gibi oluyor.\u201d<\/p>\n<p>Ertesi g\u00fcn, kahvemi al\u0131p masaya oturdu\u011fumda kendime s\u00f6z verdim. B\u00f6yle bir kopu\u015f bir daha ya\u015fanmayacakt\u0131. \u00c7\u00f6z\u00fcm\u00fcn ad\u0131, kula\u011fa s\u00fcsl\u00fc gelse de \u00f6z\u00fcnde \u00e7ok basit bir fikirden do\u011fuyordu: <strong>Anycast DNS<\/strong> ve <strong>otomatik failover<\/strong>. Yani, d\u00fcnyaya tek kap\u0131dan de\u011fil, her k\u00f6\u015feden a\u00e7\u0131lan kap\u0131larla \u00e7\u0131kmak. Bir kap\u0131 s\u0131k\u0131\u015f\u0131rsa, di\u011feri sessizce devreye girecek. Bu yaz\u0131da, bunu nas\u0131l kurdu\u011fumu, nerelerde t\u00f6kezledi\u011fimi ve pratikte nelerin i\u015fledi\u011fini kendi dilimden anlatmak istiyorum.<\/p>\n<p>E\u011fer siz de \u201cBenim sistemlerim kritik, kesinti l\u00fcks\u00fcm yok\u201d diyorsan\u0131z, gelin beraber ad\u0131m ad\u0131m ilerleyelim. Mesela neden baz\u0131 kullan\u0131c\u0131lar eri\u015febiliyor, baz\u0131lar\u0131 eri\u015femiyor? Otomatik failover neyi otomatikler? TTL\u2019leri d\u00fc\u015f\u00fcrmek yetiyor mu? Hepsini konu\u015faca\u011f\u0131z.<\/p>\n<h2 id=\"section-2\"><span id=\"Once_Can_Yakan_Gercek_Kesinti_Neden_Bir_Anda_Dunya_Capinda_Hissedilir\">\u00d6nce Can Yakan Ger\u00e7ek: Kesinti Neden Bir Anda D\u00fcnya \u00c7ap\u0131nda Hissedilir?<\/span><\/h2>\n<p>Bir sistem \u00e7\u00f6kt\u00fc\u011f\u00fcnde i\u015fler sadece sunucu odas\u0131nda kalm\u0131yor. M\u00fc\u015fteri destek hatt\u0131 kilitleniyor, sat\u0131\u015flar duruyor, ekip stresleniyor. \u00dcstelik en sinir bozucu an, baz\u0131 kullan\u0131c\u0131lar\u0131n sorunsuzca eri\u015firken di\u011ferlerinin \u201cba\u011flant\u0131 zaman a\u015f\u0131m\u0131\u201d ile kar\u015f\u0131la\u015fmas\u0131. Mesela \u0130stanbul\u2019daki biri giriyor, Berlin\u2019deki biri giremiyor. O an \u2018sunucular ya var ya yok\u2019 mant\u0131\u011f\u0131 kafana uymuyor. Ama DNS taraf\u0131 bamba\u015fka bir d\u00fcnya: <strong>\u00e7\u00f6z\u00fcmleyiciler<\/strong> farkl\u0131 a\u011f yollar\u0131 deneyebilir, baz\u0131lar\u0131 yan\u0131t\u0131 \u00f6nbellekten verir, baz\u0131lar\u0131 yeni sorgu atar ve yak\u0131ndaki ad sunucusuna ula\u015famazsa bekler, sonra vazge\u00e7er.<\/p>\n<p>\u0130\u015fte bu y\u00fczden DNS&#8217;i tek noktadan d\u00fcnyaya da\u011f\u0131tmak riskli. Bir b\u00f6lgede bir \u015feyler aksarsa, o b\u00f6lgedeki kullan\u0131c\u0131lar bir s\u00fcreli\u011fine sizi kaybetmi\u015f gibi olur. \u00dcstelik \u201ck\u0131sa s\u00fcreli\u011fine\u201d dedi\u011fimiz \u015fey bazen k\u00fc\u00e7\u00fck bir TTL ayar\u0131yla bile uzayabiliyor. \u00c7\u00fcnk\u00fc baz\u0131 \u00e7\u00f6z\u00fcmleyiciler, pratikte TTL\u2019e s\u0131k\u0131 s\u0131k\u0131ya ba\u011fl\u0131 kalm\u0131yor ya da ara katmanlar ilgisiz negatif \u00f6nbellekler olu\u015fturabiliyor.<\/p>\n<h2 id=\"section-3\"><span id=\"Anycast_DNS_Nedir_En_Yakin_Kapidan_Iceri_Alinmanin_Basit_Hali\">Anycast DNS Nedir? En Yak\u0131n Kap\u0131dan \u0130\u00e7eri Al\u0131nman\u0131n Basit Hali<\/span><\/h2>\n<p>Anycast DNS\u2019i, \u015fehirdeki ayn\u0131 ma\u011fazan\u0131n birden \u00e7ok \u015fubesi gibi d\u00fc\u015f\u00fcn\u00fcn. Hepsi ayn\u0131 tabelay\u0131 ta\u015f\u0131yor, hepsi ayn\u0131 \u00fcr\u00fcnleri sat\u0131yor. Sen hangi \u015fubeye daha yak\u0131ndaysan, kap\u0131 oradan a\u00e7\u0131l\u0131yor. Teknik tarafta, ayn\u0131 IP adresinin farkl\u0131 noktalardan internete duyurulmas\u0131 var. Trafik, a\u011f\u0131n kendisi taraf\u0131ndan en yak\u0131n ya da en iyi g\u00f6r\u00fcnen yola y\u00f6nlendiriliyor. Kullan\u0131c\u0131 i\u00e7in b\u00fcy\u00fc yok; sadece daha h\u0131zl\u0131 yan\u0131t ve daha sa\u011flam bir eri\u015fim hissi.<\/p>\n<p>Bunun g\u00fczelli\u011fi \u015fu: Bir \u015fube kapansa bile \u015fehirde ba\u015fka \u015fubeler var. DNS taraf\u0131nda, bir noktadaki ad sunucusu sorun ya\u015fasa bile di\u011fer noktalar ayn\u0131 IP ile bayra\u011f\u0131 devral\u0131r. Tabii bu \u201chi\u00e7 problem olmaz\u201d demek de\u011fil. A\u011f yollar\u0131 dalgalanabilir, baz\u0131 b\u00f6lgeler beklenmedik \u015fekilde farkl\u0131 noktalara d\u00fc\u015febilir. Ama genel resimde, tek bir b\u00f6lgede ya\u015fanan aksakl\u0131k t\u00fcm d\u00fcnyay\u0131 kaplamaz, etki alan\u0131 daral\u0131r.<\/p>\n<p>Bu yakla\u015f\u0131m\u0131n internetteki mant\u0131\u011f\u0131n\u0131 biraz daha kurcalamak istersen <a href=\"https:\/\/www.rfc-editor.org\/rfc\/rfc4786\" rel=\"nofollow noopener\" target=\"_blank\">anycast uygulamalar\u0131n\u0131 anlatan bu dok\u00fcmana<\/a> g\u00f6z atmak keyifli olabilir. Ama \u015funu unutmayal\u0131m: Anycast bir temeldir, tek ba\u015f\u0131na tam \u00e7\u00f6z\u00fcm de\u011fil. Onun yan\u0131nda ak\u0131ll\u0131 sa\u011fl\u0131k kontrolleri ve otomatik ge\u00e7i\u015f mekanizmalar\u0131 da gerekir.<\/p>\n<h2 id=\"section-4\"><span id=\"Otomatik_Failover_Yanit_Vermeyen_Hizmete_Sessiz_Bir_Serit_Degistirme\">Otomatik Failover: Yan\u0131t Vermeyen Hizmete Sessiz Bir \u015eerit De\u011fi\u015ftirme<\/span><\/h2>\n<p>Otomatik failover, \u015ferit de\u011fi\u015ftirmeyi sezdirmeden yapma sanat\u0131. Bir uygulama noktas\u0131 sorun ya\u015fad\u0131\u011f\u0131nda, <strong>sa\u011fl\u0131k kontrol\u00fc<\/strong> yapan bir g\u00f6z \u201cburada bir gariplik var\u201d der ve DNS kay\u0131tlar\u0131n\u0131 mant\u0131kl\u0131 bir alternatife \u00e7evirir. Bu, \u00e7o\u011fu zaman birincil IP\u2019den ikincil IP\u2019ye ge\u00e7mek ya da birincil CNAME\u2019den yedek CNAME\u2019e d\u00f6nmek demek. \u201cO an kullan\u0131c\u0131 ne hisseder?\u201d derseniz, \u00e7o\u011fu zaman hi\u00e7bir \u015fey. Sadece sayfa bir anda a\u00e7\u0131l\u0131r. Yeter ki TTL ayar\u0131n\u0131z, ge\u00e7i\u015fin h\u0131zl\u0131 olmas\u0131n\u0131 sa\u011flayacak kadar makul olsun.<\/p>\n<p>Burada iki kritik detay var. \u0130lki, sa\u011fl\u0131k kontrol\u00fcn\u00fcn <strong>ger\u00e7ek\u00e7i<\/strong> olmas\u0131. Sadece ping at\u0131p \u201cya\u015f\u0131yor\u201d demek yetmez. Mesela <code>\/health<\/code> gibi uygulaman\u0131n kendi kontrol etti\u011fi bir noktadan basit ama anlaml\u0131 bir yan\u0131t beklemek daha iyi. \u0130kincisi, <strong>\u00e7\u0131rp\u0131nmay\u0131 (flapping)<\/strong> kontrol alt\u0131na almak. Yani, tek bir ba\u015far\u0131s\u0131z kontrol ile rota de\u011fi\u015fmemeli; bir e\u015fik de\u011fer olsun, \u00fcst \u00fcste birka\u00e7 ba\u015far\u0131s\u0131z kontrolden sonra ge\u00e7i\u015f yap\u0131ls\u0131n. Ayn\u0131 \u015fekilde d\u00f6n\u00fc\u015f de hemen de\u011fil, istikrar g\u00f6r\u00fcl\u00fcnce olsun.<\/p>\n<p>Failover mant\u0131\u011f\u0131n\u0131 anlamak i\u00e7in pratik bir kaynak istersen <a href=\"https:\/\/docs.aws.amazon.com\/Route53\/latest\/DeveloperGuide\/dns-failover.html\" rel=\"nofollow noopener\" target=\"_blank\">DNS failover ak\u0131\u015flar\u0131n\u0131 anlatan bu k\u0131lavuz<\/a> kafandaki resmi tamamlamaya yard\u0131mc\u0131 olabilir. Ama marka ba\u011f\u0131ms\u0131z d\u00fc\u015f\u00fcn; \u00f6nemli olan yakla\u015f\u0131m\u0131n kendisi ve uygulad\u0131\u011f\u0131n disiplin.<\/p>\n<h2 id=\"section-5\"><span id=\"Kendi_Kurulum_Hikayem_Iki_Bolge_Bir_Saglik_Nabzi_Sakin_Gecis\">Kendi Kurulum Hikayem: \u0130ki B\u00f6lge, Bir Sa\u011fl\u0131k Nabz\u0131, Sakin Ge\u00e7i\u015f<\/span><\/h2>\n<p>\u0130lk kez bu i\u015fi kurdu\u011fumda, iki ayr\u0131 b\u00f6lgede benzer kapasitede ortam haz\u0131rlad\u0131m. Uygulaman\u0131n en temel fonksiyonlar\u0131n\u0131 kontrol eden k\u00fc\u00e7\u00fck bir <code>\/health<\/code> ucu vard\u0131: veritaban\u0131na eri\u015febiliyor mu, kuyruklar t\u0131kal\u0131 m\u0131, diskte tehlikeli doluluk var m\u0131? Tam bir check-up de\u011fil, ama temel ya\u015famsal belirtiler. DNS taraf\u0131nda birincil ve ikincil kay\u0131tlar\u0131 tan\u0131mlad\u0131m; i\u015fin g\u00fczelli\u011fi, sa\u011fl\u0131k kontrol\u00fc ba\u015far\u0131s\u0131z oldu\u011funda yedek kayda \u00e7evrilecek \u015fekilde kural yazd\u0131m. TTL\u2019i ak\u015fam ilk denemede 20 saniyeye \u00e7ektim, sonra g\u00fcnd\u00fcz trafi\u011finde daha sakin ilerlemek i\u00e7in 30-60 saniye aral\u0131\u011f\u0131na oturttum.<\/p>\n<p>\u0130lk tatbikat\u0131 hafta sonu yapt\u0131k. Birincil b\u00f6lgede uygulama servislerini kontroll\u00fc kapatt\u0131m. Sa\u011fl\u0131k kontrol\u00fc birka\u00e7 kez ba\u015far\u0131s\u0131z d\u00f6n\u00fcnce failover tetiklendi ve sorgular yede\u011fe y\u00f6neldi. Birka\u00e7 kullan\u0131c\u0131 bir iki saniyelik gecikme d\u0131\u015f\u0131nda hi\u00e7bir \u015fey fark etmedi. D\u00f6n\u00fc\u015f\u00fc de hemen yapmad\u0131k. Birincil b\u00f6lgeyi toparlay\u0131p 10 dakika sorunsuz \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131 g\u00f6r\u00fcnce eski d\u00fczenine \u00e7evirdik. B\u00fct\u00fcn s\u00fcre\u00e7 sakin, kimsenin ter basmayaca\u011f\u0131 kadar s\u0131k\u0131c\u0131yd\u0131. Tam da istedi\u011fimiz gibi.<\/p>\n<h2 id=\"section-6\"><span id=\"TTL_Onbellek_ve_Diger_Kucuk_Ama_Etkili_Ayrintilar\">TTL, \u00d6nbellek ve Di\u011fer K\u00fc\u00e7\u00fck Ama Etkili Ayr\u0131nt\u0131lar<\/span><\/h2>\n<p>Bu i\u015fin g\u00f6r\u00fcnmez kahraman\u0131 TTL. \u00c7ok d\u00fc\u015f\u00fck tutarsan, her sorgu daha s\u0131k yenilenir; ge\u00e7i\u015fler h\u0131zl\u0131 olur ama \u00e7\u00f6z\u00fcc\u00fcler ve ad sunucular daha fazla \u00e7al\u0131\u015f\u0131r, baz\u0131 a\u011flarda gecikme hissedilir. \u00c7ok y\u00fcksek tutarsan, ge\u00e7i\u015fler yava\u015flar; sorunlu bir kayd\u0131 baz\u0131 kullan\u0131c\u0131lar uzun s\u00fcre \u00f6nbellekten g\u00f6r\u00fcr. Benim g\u00f6rd\u00fc\u011f\u00fcm en sa\u011fl\u0131kl\u0131 yakla\u015f\u0131m, \u00e7ekirdek hizmetlerde 30-60 saniye gibi bir ortalama, ikincil \u00f6nemdekilerde biraz daha yukar\u0131. Ama tek kural yok; senin trafi\u011fin, kullan\u0131c\u0131 da\u011f\u0131l\u0131m\u0131n, hata tolerans\u0131n belirleyici olmal\u0131.<\/p>\n<p>Bir di\u011fer detay, <strong>negatif \u00f6nbellek<\/strong>. Baz\u0131 \u00e7\u00f6z\u00fcmleyiciler ba\u015far\u0131s\u0131z sonu\u00e7lar\u0131 da k\u0131sa bir s\u00fcre hat\u0131rlar. Bu y\u00fczden, ge\u00e7i\u015f ger\u00e7ekle\u015fse bile belli bir kullan\u0131c\u0131 grubu an\u0131nda d\u00fczelme g\u00f6rmeyebilir. Bu anlar\u0131 k\u0131saltmak i\u00e7in sa\u011fl\u0131k kontrollerinin anlaml\u0131, TTL\u2019in dengeli ve ad sunucular\u0131n\u0131n yayg\u0131n eri\u015filebilir olmas\u0131 \u00f6nemli.<\/p>\n<p>DNS kay\u0131tlar\u0131n\u0131n d\u00fczenine h\u00e2kimsen i\u015fin \u00e7ok h\u0131zlan\u0131r. A\/AAAA, CNAME ve MX gibi klasik y\u0131ld\u0131zlar\u0131n yan\u0131nda TXT ve SRV gibi ba\u015fka karakterler de sahnede rol al\u0131r. E\u011fer bu konularda k\u0131sa bir tazeleme istersen, <a href=\"https:\/\/www.dchost.com\/blog\/dns-kayitlari-adan-zye-a-aaaa-cname-mx-txt-srv-caa-ve-sizi-yakan-o-kucuk-hatalar\/\">DNS kay\u0131tlar\u0131n\u0131 do\u011fru yap\u0131land\u0131rma rehberimiz<\/a> pratikte s\u0131k yap\u0131lan hatalar\u0131 da hat\u0131rlat\u0131yor.<\/p>\n<h2 id=\"section-7\"><span id=\"Anycast_DNSin_Sahne_Arkasi_Trafigin_Dagilimi_ve_Kucuk_Surprizler\">Anycast DNS\u2019in Sahne Arkas\u0131: Trafi\u011fin Da\u011f\u0131l\u0131m\u0131 ve K\u00fc\u00e7\u00fck S\u00fcrprizler<\/span><\/h2>\n<p>Anycast, \u201cayn\u0131 adres, \u00e7ok yer\u201d mant\u0131\u011f\u0131yla i\u015fler. A\u011f, en iyi rotay\u0131 se\u00e7er; bu se\u00e7im bazen mesafe, bazen yo\u011funluk, bazen de a\u011f politikalar\u0131 nedeniyle bekledi\u011finden farkl\u0131 olabilir. Bazen de anl\u0131k y\u00f6nlendirme de\u011fi\u015fiklikleri ya\u015fan\u0131r. Panik yok, bu dalgalanmalar genelde saniyelerle, bilemedin dakikalarla \u00f6l\u00e7\u00fcl\u00fcr. \u00d6nemli olan, bu ini\u015f \u00e7\u0131k\u0131\u015flar s\u0131ras\u0131nda kullan\u0131c\u0131 deneyiminin ciddi \u015fekilde etkilenmemesi. Bunu da geni\u015f kapsama alan\u0131na sahip bir DNS a\u011f\u0131 ve dengeli TTL ayarlar\u0131yla sa\u011flars\u0131n.<\/p>\n<p>Anycast\u2019in temelini daha yal\u0131n \u015fekilde okumak istersen, <a href=\"https:\/\/www.cloudflare.com\/learning\/cdn\/glossary\/anycast-network\/\" rel=\"nofollow noopener\" target=\"_blank\">anycast a\u011flar\u0131n\u0131 \u00f6zetleyen bu sayfa<\/a> kavram\u0131 sade bir dille anlat\u0131yor. Benim tecr\u00fcbem \u015fu: Anycast, tek ba\u015f\u0131na bir garanti de\u011fil; ama sahaya do\u011fru ekipmanla \u00e7\u0131karsan harikalar yarat\u0131r. Sa\u011fl\u0131k kontrolleri d\u00fcr\u00fcst olacak, failover kurallar\u0131 aceleci olmayacak, g\u00f6zlemleme s\u00fcrekli olacak. O zaman ta\u015flar yerine oturuyor.<\/p>\n<h2 id=\"section-8\"><span id=\"Failover_Mantigini_Uygularken_Karsilastigim_Tuzaklar\">Failover Mant\u0131\u011f\u0131n\u0131 Uygularken Kar\u015f\u0131la\u015ft\u0131\u011f\u0131m Tuzaklar<\/span><\/h2>\n<p>\u0130lk tuzak, <strong>tek metri\u011fe aldanmak<\/strong>. Sadece \u201cping at\u0131nca d\u00f6n\u00fcyor mu\u201d diye bakmak, uygulaman\u0131n asl\u0131nda \u00e7\u00f6km\u00fc\u015f halini g\u00f6zden ka\u00e7\u0131rabiliyor. Ger\u00e7ekten i\u015f yapan bir u\u00e7tan, k\u00fc\u00e7\u00fck bir test \u00e7al\u0131\u015ft\u0131rmak daha g\u00fcvenli. Mesela \u201c\u00f6zet sayfa a\u00e7\u0131l\u0131yor mu, ana sorgu 200 d\u00f6n\u00fcyor mu\u201d gibi. \u0130kincisi, <strong>\u00e7ok h\u0131zl\u0131 geri d\u00f6n\u00fc\u015f<\/strong>. Birincil b\u00f6lge 10 saniye toparland\u0131 diye hemen geri d\u00f6nmek, kullan\u0131c\u0131lar i\u00e7in gereksiz bir sallant\u0131 yarat\u0131yor. Ben d\u00f6n\u00fc\u015f ko\u015fuluna bir <strong>istikrar s\u00fcresi<\/strong> koydum, ruhum rahat etti.<\/p>\n<p>\u00dc\u00e7\u00fcnc\u00fcs\u00fc, <strong>duruma \u00f6zel yol kapanlar\u0131<\/strong>. Diyelim ki uygulama sa\u011fl\u0131kl\u0131 ama veritaban\u0131 yazmalar\u0131nda tutars\u0131zl\u0131k var. DNS ile trafi\u011fi yede\u011fe kayd\u0131rman, veri b\u00fct\u00fcnl\u00fc\u011f\u00fc a\u00e7\u0131s\u0131ndan yeni dertler do\u011furabilir. Bu y\u00fczden kritik yazma i\u015flemlerinde b\u00f6lgesel da\u011f\u0131t\u0131m stratejini \u00f6nceden d\u00fc\u015f\u00fcn. Failover sadece y\u00f6nlendirme de\u011fil, <strong>i\u015f ak\u0131\u015f\u0131n\u0131 koruma<\/strong> meselesi. D\u00f6rd\u00fcnc\u00fcs\u00fc, <strong>istemci taraf\u0131 yap\u0131\u015fkanl\u0131k<\/strong>. Baz\u0131 kullan\u0131c\u0131lar taray\u0131c\u0131 \u00f6nbelle\u011fi, baz\u0131lar\u0131 yerel \u00e7\u00f6z\u00fcmleyici davran\u0131\u015f\u0131 y\u00fcz\u00fcnden de\u011fi\u015fik gecikmeler ya\u015fayabilir. Bu normal. \u0130yi haber \u015fu: K\u0131sa TTL ve sa\u011flam anycast altyap\u0131s\u0131, bu gecikmeleri m\u00fcmk\u00fcn oldu\u011funca k\u00fc\u00e7\u00fclt\u00fcyor.<\/p>\n<h2 id=\"section-9\"><span id=\"DDoS_ve_Anycast_Trafigi_Yayarak_Dayaniklilik_Kazanmak\">DDoS ve Anycast: Trafi\u011fi Yayarak Dayan\u0131kl\u0131l\u0131k Kazanmak<\/span><\/h2>\n<p>Baz\u0131 g\u00fcnler sald\u0131r\u0131 gelir, gelen trafi\u011fin bir k\u0131sm\u0131 masum gibi g\u00f6r\u00fcn\u00fcr ama sistemin nefesini keser. Anycast burada gizli bir kahraman gibi \u00e7al\u0131\u015f\u0131r: Sald\u0131r\u0131n\u0131n y\u00fck\u00fc co\u011frafyaya yay\u0131l\u0131r, tek bir noktaya y\u0131\u011f\u0131lmaz. B\u00f6ylece savunma ara\u00e7lar\u0131n\u0131n i\u015fini kolayla\u015ft\u0131r\u0131r, s\u00fcre kazan\u0131rs\u0131n. Elbette bu tek ba\u015f\u0131na tam kalkan de\u011fil; ama g\u00fc\u00e7l\u00fc bir temel. Bu mant\u0131\u011f\u0131n neden i\u015fe yarad\u0131\u011f\u0131n\u0131 anlamak istersen, anycast\u2019in trafi\u011fi nas\u0131l b\u00f6ld\u00fc\u011f\u00fcn\u00fc anlatan kaynaklar olduk\u00e7a a\u00e7\u0131klay\u0131c\u0131. \u00d6rne\u011fin yukar\u0131da payla\u015ft\u0131\u011f\u0131m anycast a\u011flar\u0131n\u0131 anlatan sayfa, fikri netle\u015ftiriyor.<\/p>\n<p>Benim deneyimimde, sald\u0131r\u0131 anlar\u0131nda en \u00e7ok i\u015fe yarayan disiplin, <strong>g\u00f6zlemleme<\/strong> ve <strong>so\u011fukkanl\u0131 failover<\/strong> oldu. Her \u015fey yolunda giderken yap\u0131lan tatbikatlar, sald\u0131r\u0131 an\u0131nda terlememeyi sa\u011fl\u0131yor. \u201cNas\u0131l olsa hi\u00e7 olmaz\u201d dedi\u011fin g\u00fcn olur, hem de en yo\u011fun kampanyan\u0131n ortas\u0131nda olur.<\/p>\n<h2 id=\"section-10\"><span id=\"Gozlemleme_Gormedigin_Sorunu_Yonetemezsin\">G\u00f6zlemleme: G\u00f6rmedi\u011fin Sorunu Y\u00f6netemezsin<\/span><\/h2>\n<p>Anycast DNS ve otomatik failover kurduysan i\u015fin yar\u0131s\u0131 biter. Di\u011fer yar\u0131s\u0131, olan biteni <strong>anl\u0131k izlemek<\/strong>. DNS sorgu s\u00fcrelerini b\u00f6lge baz\u0131nda takip etmek, ba\u015far\u0131s\u0131z sa\u011fl\u0131k kontrollerini g\u00fcnl\u00fckten okumak, kullan\u0131c\u0131 taraf\u0131nda ping ve sayfa a\u00e7\u0131l\u0131\u015f s\u00fcrelerini \u00f6l\u00e7mek, hepsi bir b\u00fct\u00fcn. Ben basit sentetik kontrolleri d\u00fcnyan\u0131n farkl\u0131 noktalar\u0131ndan \u00e7al\u0131\u015ft\u0131r\u0131p \u201changi b\u00f6lgede ne hissediliyor\u201d sorusuna bakmay\u0131 seviyorum. Sorun oldu\u011funda posta kutuma de\u011fil de hem bana hem ekibe giden, sessiz ama etkili bir uyar\u0131 d\u00fc\u015f\u00fcyor. Bildirimi g\u00f6rd\u00fc\u011f\u00fcmde, runbook\u2019taki iki \u00fc\u00e7 ad\u0131m\u0131 a\u00e7\u0131p ilerliyorum. Panik yok, prosed\u00fcr var.<\/p>\n<h2 id=\"section-11\"><span id=\"Adim_Adim_Baslangic_Plani_Basit_Tut_Sik_Test_Et\">Ad\u0131m Ad\u0131m Ba\u015flang\u0131\u00e7 Plan\u0131: Basit Tut, S\u0131k Test Et<\/span><\/h2>\n<p>Bu i\u015fe ba\u015flarken basit bir plan i\u015fini g\u00f6r\u00fcr. \u00d6nce, <strong>anycast destekli bir DNS sa\u011flay\u0131c\u0131s\u0131<\/strong> se\u00e7. Ard\u0131ndan, <strong>birincil ve ikincil<\/strong> konumlar\u0131n\u0131 belirleyip <strong>sa\u011fl\u0131k kontrollerini<\/strong> tan\u0131mla. Sa\u011fl\u0131k kontrol\u00fc ger\u00e7ek i\u015fi do\u011frulas\u0131n; \u00f6rne\u011fin ana sayfan\u0131n kritik par\u00e7alar\u0131 y\u00fckleniyor mu diye bak. <strong>TTL\u2019i<\/strong> ilk etapta 30-60 saniye band\u0131na koy, sonra g\u00f6zlemle ve trafi\u011fine g\u00f6re ayarla. Sonra da <strong>tatbikat<\/strong> yap: kontroll\u00fc bir kesinti sim\u00fcle et, kullan\u0131c\u0131lar\u0131n ne ya\u015fad\u0131\u011f\u0131n\u0131 izle, geri d\u00f6n\u00fc\u015f ko\u015fullar\u0131n\u0131 g\u00f6zden ge\u00e7ir.<\/p>\n<p>Bir s\u00fcre sonra, yedek konumu sadece felaket anlar\u0131nda de\u011fil, yo\u011fun trafik anlar\u0131nda da devreye sokmak isteyebilirsin. O zamana kadar temel yap\u0131 ta\u015flar\u0131 sa\u011flam olsun. G\u00f6zlemleme panellerin haz\u0131r olsun, uyar\u0131lar kalabal\u0131k yapmas\u0131n ama kritik olan\u0131 ka\u00e7\u0131rmas\u0131n. Geri d\u00f6n\u00fc\u015f\u00fc tek t\u0131kla de\u011fil, belli bir istikrar e\u015fi\u011fiyle yap ki kullan\u0131c\u0131lar sars\u0131nt\u0131 hissetmesin.<\/p>\n<h2 id=\"section-12\"><span id=\"Kapanis_Her_Kapidan_Ayni_Magazaya_Girmenin_Huzuru\">Kapan\u0131\u015f: Her Kap\u0131dan Ayn\u0131 Ma\u011fazaya Girmenin Huzuru<\/span><\/h2>\n<p>Anycast DNS ve otomatik failover, kula\u011fa b\u00fcy\u00fck i\u015fletmelerin i\u015fi gibi gelebilir. Ama asl\u0131nda i\u015fin \u00f6z\u00fc, \u00e7ok basit bir kullan\u0131c\u0131 beklentisinde gizli: \u201cT\u0131klad\u0131\u011f\u0131mda a\u00e7\u0131ls\u0131n.\u201d Bu kadar. Biz de perde arkas\u0131nda bu basit beklentiyi tutarl\u0131 k\u0131lmaya \u00e7al\u0131\u015f\u0131yoruz. Trafi\u011fi en yak\u0131n noktaya g\u00f6t\u00fcrmek, sorun an\u0131nda sessizce alternatif yola \u00e7evirmek, dengeli TTL\u2019lerle gereksiz beklemeleri azaltmak\u2026 Hepsi k\u00fc\u00e7\u00fck k\u00fc\u00e7\u00fck dokunu\u015flar. Bir araya geldi\u011finde, gecenin bir vakti telefonun \u00e7almas\u0131n\u0131 engelleyen b\u00fcy\u00fck bir fark yarat\u0131yor.<\/p>\n<p>Pratik tavsiyem \u015fu: K\u00fc\u00e7\u00fckten ba\u015fla, s\u0131k test et, g\u00f6zlemle ve not al. Sa\u011fl\u0131k kontrollerini ger\u00e7ek\u00e7i ama hafif tut, d\u00f6n\u00fc\u015flerde acele etme, kullan\u0131c\u0131 deneyimini \u00f6ncelik listende hep \u00fcstte tut. Bazen bir sorun, tek bir ayarla \u00e7\u00f6z\u00fcl\u00fcr; bazen birka\u00e7 k\u00fc\u00e7\u00fck ayar\u0131n birle\u015fimi gerekir. \u00d6nemli olan, yapboz par\u00e7alar\u0131n\u0131 tan\u0131mak ve nerede durduklar\u0131n\u0131 bilmek. Umar\u0131m bu yaz\u0131, akl\u0131ndaki bo\u015fluklar\u0131 doldurur ve bir sonraki kesintiyi \u201chadi can\u0131m\u201d diyerek savu\u015fturman\u0131 sa\u011flar. Bir dahaki yaz\u0131da g\u00f6r\u00fc\u015fmek \u00fczere.<\/p>\n<\/div>","protected":false},"excerpt":{"rendered":"<p>\u0130&ccedil;indekiler1 Ofiste Gece Yar\u0131s\u0131: Bir Kopu\u015f, Bir Ayd\u0131nlanma2 \u00d6nce Can Yakan Ger\u00e7ek: Kesinti Neden Bir Anda D\u00fcnya \u00c7ap\u0131nda Hissedilir?3 Anycast DNS Nedir? En Yak\u0131n Kap\u0131dan \u0130\u00e7eri Al\u0131nman\u0131n Basit Hali4 Otomatik Failover: Yan\u0131t Vermeyen Hizmete Sessiz Bir \u015eerit De\u011fi\u015ftirme5 Kendi Kurulum Hikayem: \u0130ki B\u00f6lge, Bir Sa\u011fl\u0131k Nabz\u0131, Sakin Ge\u00e7i\u015f6 TTL, \u00d6nbellek ve Di\u011fer K\u00fc\u00e7\u00fck Ama Etkili [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":1269,"comment_status":"","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[33],"tags":[],"class_list":["post-1268","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-nasil-yapilir"],"_links":{"self":[{"href":"https:\/\/www.dchost.com\/blog\/wp-json\/wp\/v2\/posts\/1268","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.dchost.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.dchost.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.dchost.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.dchost.com\/blog\/wp-json\/wp\/v2\/comments?post=1268"}],"version-history":[{"count":0,"href":"https:\/\/www.dchost.com\/blog\/wp-json\/wp\/v2\/posts\/1268\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.dchost.com\/blog\/wp-json\/wp\/v2\/media\/1269"}],"wp:attachment":[{"href":"https:\/\/www.dchost.com\/blog\/wp-json\/wp\/v2\/media?parent=1268"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dchost.com\/blog\/wp-json\/wp\/v2\/categories?post=1268"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dchost.com\/blog\/wp-json\/wp\/v2\/tags?post=1268"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}