{"id":32848,"date":"2025-10-26T16:01:44","date_gmt":"2025-10-26T13:01:44","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/chaos-testing-aws-eks-ile-aws-fis-dayanikliligi-artirma-kilavuzu\/"},"modified":"2025-10-26T16:01:44","modified_gmt":"2025-10-26T13:01:44","slug":"chaos-testing-aws-eks-ile-aws-fis-dayanikliligi-artirma-kilavuzu","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/chaos-testing-aws-eks-ile-aws-fis-dayanikliligi-artirma-kilavuzu\/","title":{"rendered":"Chaos Testing AWS EKS ile AWS FIS: Dayan\u0131kl\u0131l\u0131\u011f\u0131 Art\u0131rma K\u0131lavuzu"},"content":{"rendered":"<p><body><\/p>\n<p>AWS EKS k\u00fcmenizin beklenmedik ar\u0131zalara kar\u015f\u0131 ne kadar dayan\u0131kl\u0131 oldu\u011funu merak m\u0131 ediyorsunuz? AWS FIS ile Chaos Testing yaparak uygulamalar\u0131n\u0131z\u0131n zorlu ko\u015fullarda bile kararl\u0131l\u0131\u011f\u0131n\u0131 nas\u0131l korudu\u011funu ke\u015ffedin. Bu kapsaml\u0131 rehber, dayan\u0131kl\u0131l\u0131k m\u00fchendisli\u011finde ustala\u015fman\u0131za yard\u0131mc\u0131 olacak ve AWS Community Day Bangalore 2025&#8217;teki sunumun ruhunu yans\u0131tarak, bulut yerel uygulamalar\u0131n\u0131z\u0131n sars\u0131lmaz bir kararl\u0131l\u0131kla \u00e7al\u0131\u015fmas\u0131n\u0131 sa\u011flaman\u0131n yollar\u0131n\u0131 ad\u0131m ad\u0131m \u00f6\u011fretecek. G\u00fcn\u00fcm\u00fcz\u00fcn dinamik ve karma\u015f\u0131k mikroservis mimarilerinde, sistemlerin yaln\u0131zca \u00e7al\u0131\u015f\u0131r durumda olmas\u0131 yeterli de\u011fildir; ayn\u0131 zamanda beklenmedik ar\u0131zalara kar\u015f\u0131 diren\u00e7li olmas\u0131 da hayati \u00f6nem ta\u015f\u0131maktad\u0131r. Bu makalede, bu direnci test etmek ve art\u0131rmak i\u00e7in Chaos Testing prensiplerini AWS Fault Injection Simulator (FIS) ile AWS Elastic Kubernetes Service (EKS) ortamlar\u0131nda nas\u0131l uygulayaca\u011f\u0131m\u0131z\u0131 detayl\u0131ca inceleyece\u011fiz.<\/p>\n<p>Modern uygulama geli\u015ftirme, b\u00fcy\u00fck \u00f6l\u00e7\u00fcde mikroservis mimarilerine ve bulut platformlar\u0131na y\u00f6nelmi\u015f durumda. AWS EKS gibi y\u00f6netilen Kubernetes servisleri, bu da\u011f\u0131t\u0131k sistemlerin orkestrasyonunu b\u00fcy\u00fck \u00f6l\u00e7\u00fcde kolayla\u015ft\u0131r\u0131yor olsa da, beraberinde yeni zorluklar\u0131 da getiriyor. Birbirine ba\u011fl\u0131 onlarca, hatta y\u00fczlerce mikroservis, farkl\u0131 availability zone&#8217;larda (AZ) \u00e7al\u0131\u015fan sunucular, a\u011f gecikmeleri, disk I\/O sorunlar\u0131 veya basit bir konfig\u00fcrasyon hatas\u0131 gibi say\u0131s\u0131z potansiyel ar\u0131za noktas\u0131na sahip olabilir. Geleneksel test y\u00f6ntemleri, bu t\u00fcr karma\u015f\u0131k sistemlerin ger\u00e7ek d\u00fcnya ko\u015fullar\u0131na ne kadar dayan\u0131kl\u0131 oldu\u011funu tam olarak ortaya koymakta genellikle yetersiz kal\u0131r. Bu nedenle, Chaos Testing, yani kaos m\u00fchendisli\u011fi, sistemlerinizin zay\u0131f noktalar\u0131n\u0131 proaktif bir \u015fekilde ortaya \u00e7\u0131karmak ve dayan\u0131kl\u0131l\u0131klar\u0131n\u0131 art\u0131rmak i\u00e7in vazge\u00e7ilmez bir ara\u00e7 haline gelmi\u015ftir. Bu yakla\u015f\u0131mla, sorunlar ortaya \u00e7\u0131kmadan \u00f6nce onlar\u0131 ke\u015ffedebilir ve d\u00fczeltebiliriz.<\/p>\n<p>D\u00fc\u015f\u00fcn\u00fcn ki, Black Friday gibi kritik bir al\u0131\u015fveri\u015f d\u00f6neminde, bir e-ticaret siteniz var ve yo\u011funlu\u011fun en tepe noktas\u0131nda kritik bir mikroservisiniz veya bir veritaban\u0131 ba\u011flant\u0131n\u0131z aniden kesiliyor. Bu durum, sadece sat\u0131\u015f kayb\u0131na de\u011fil, ayn\u0131 zamanda m\u00fc\u015fteri memnuniyetinin d\u00fc\u015fmesine ve marka itibar\u0131n\u0131n zedelenmesine yol a\u00e7abilir. \u00c7o\u011fu zaman bu t\u00fcr durumlar, &#8220;hi\u00e7 beklemedi\u011fimiz bir \u015fey oldu&#8221; \u015feklinde a\u00e7\u0131klan\u0131r. Ancak Chaos Engineering tam da bu &#8220;beklenmedik&#8221; durumlar\u0131 planl\u0131 bir \u015fekilde sim\u00fcle etmeyi ve sistemin bu durumlara nas\u0131l tepki verdi\u011fini g\u00f6zlemlemeyi hedefler. Kontroll\u00fc bir ortamda, bilerek ar\u0131zalar enjekte ederek sistemin bu ar\u0131zalara nas\u0131l tepki verdi\u011fini, kendini nas\u0131l onard\u0131\u011f\u0131n\u0131 veya hangi noktalarda k\u0131r\u0131ld\u0131\u011f\u0131n\u0131 g\u00f6r\u00fcr\u00fcz. Bu sayede, operasyon ekipleri, geli\u015ftiriciler ve hatta i\u015f birimleri, sistemin dayan\u0131kl\u0131l\u0131k e\u015fiklerini daha iyi anlayabilir ve gerekli iyile\u015ftirmeleri yapabilirler. AWS EKS, konteynerle\u015ftirilmi\u015f uygulamalar i\u00e7in esnek ve \u00f6l\u00e7eklenebilir bir platform sunar; ancak bu esneklik, ar\u0131za noktalar\u0131n\u0131n da artmas\u0131na neden olabilir. Bu y\u00fczden, AWS FIS ile EKS ortam\u0131nda Chaos Testing yapmak, bulut yerel uygulamalar\u0131n\u0131z\u0131n ger\u00e7ek d\u00fcnya stresine kar\u015f\u0131 haz\u0131rl\u0131kl\u0131 olmas\u0131n\u0131 sa\u011flaman\u0131n en etkili yollar\u0131ndan biridir. Bu, sadece bir teknik uygulama de\u011fil, ayn\u0131 zamanda ekiplerin sistemleri hakk\u0131nda derinlemesine bilgi edinmelerini ve operasyonel m\u00fckemmelli\u011fi s\u00fcrekli iyile\u015ftirmelerini sa\u011flayan k\u00fclt\u00fcrel bir de\u011fi\u015fimi de beraberinde getirir. Sonu\u00e7 olarak, da\u011f\u0131t\u0131k sistemlerin karma\u015f\u0131kl\u0131\u011f\u0131 artt\u0131k\u00e7a, Chaos Testing, g\u00fcvenilir ve dayan\u0131kl\u0131 uygulamalar sunman\u0131n temel ta\u015flar\u0131ndan biri haline gelmektedir. Bu s\u00fcre\u00e7, sadece sorunlar\u0131 tespit etmekle kalmaz, ayn\u0131 zamanda ekiplerin proaktif bir yakla\u015f\u0131mla sistemlerini s\u00fcrekli olarak g\u00fc\u00e7lendirmesine olanak tan\u0131r.<\/p>\n<h2 id=\"chaos-engineering-ve-aws-fis-nedir-temel-kavramlara-hizli-bir-bakis\">Chaos Engineering ve AWS FIS Nedir? Temel Kavramlara H\u0131zl\u0131 Bir Bak\u0131\u015f<\/h2>\n<p>Chaos Engineering, da\u011f\u0131t\u0131k sistemlerin kararl\u0131l\u0131\u011f\u0131n\u0131 art\u0131rmak amac\u0131yla proaktif olarak ar\u0131zalar enjekte etme bilimi ve sanat\u0131d\u0131r. Bu disiplin, sistemlerin en zay\u0131f noktalar\u0131n\u0131 ortaya \u00e7\u0131karmay\u0131 ve bu zay\u0131fl\u0131klar\u0131 gidermeyi hedefler. Temel prensipleri aras\u0131nda bir hipotez olu\u015fturma (\u00f6rne\u011fin, &#8220;bir veri taban\u0131 replikas\u0131 ba\u015far\u0131s\u0131z olursa sistem \u00e7al\u0131\u015fmaya devam eder&#8221;), kontroll\u00fc bir deney yapma (ger\u00e7ekten replikay\u0131 devre d\u0131\u015f\u0131 b\u0131rakma), sonu\u00e7lar\u0131 g\u00f6zlemleme ve sistemin dayan\u0131kl\u0131l\u0131\u011f\u0131n\u0131 art\u0131rma yer al\u0131r. Bu s\u00fcre\u00e7, beklenmedik durumlar kar\u015f\u0131s\u0131nda sistemin nas\u0131l davranaca\u011f\u0131n\u0131 \u00f6nceden \u00f6\u011frenmemizi sa\u011flar ve b\u00f6ylece \u00fcretim ortam\u0131nda ya\u015fanabilecek b\u00fcy\u00fck kesintileri engelleme potansiyeli sunar. Manuel olarak bu t\u00fcr testleri yapmak olduk\u00e7a zahmetli, riskli ve hata yapmaya a\u00e7\u0131k bir s\u00fcre\u00e7 olabilir. \u0130\u015fte tam bu noktada AWS Fault Injection Simulator (FIS) devreye giriyor.<\/p>\n<p>AWS Fault Injection Simulator (FIS), AWS ortamlar\u0131nda kontroll\u00fc ar\u0131za enjeksiyon deneyleri y\u00fcr\u00fctmeyi kolayla\u015ft\u0131ran, tam olarak y\u00f6netilen bir hizmettir. FIS, EC2 instance&#8217;lar\u0131n\u0131 durdurma, yeniden ba\u015flatma, EKS pod&#8217;lar\u0131n\u0131 sonland\u0131rma, a\u011f gecikmesi veya paket kayb\u0131 enjekte etme gibi \u00e7e\u015fitli &#8220;aksiyonlar\u0131&#8221; ger\u00e7ekle\u015ftirebilir. Bu hizmetin en b\u00fcy\u00fck avantaj\u0131, ar\u0131za enjeksiyonunu otomatikle\u015ftirmesi ve bunu g\u00fcvenli bir \u015fekilde yapmas\u0131d\u0131r. FIS ile bir &#8220;Deney \u015eablonu&#8221; (Experiment Template) olu\u015fturursunuz. Bu \u015fablon, deneyin nas\u0131l yap\u0131laca\u011f\u0131n\u0131, hangi hedeflere uygulanaca\u011f\u0131n\u0131 (Target), hangi ar\u0131zalar\u0131n enjekte edilece\u011fini (Action) ve ne zaman durdurulaca\u011f\u0131n\u0131 (Stop Condition) tan\u0131mlar. Duru\u015f Ko\u015fullar\u0131 \u00f6zellikle \u00f6nemlidir, \u00e7\u00fcnk\u00fc bir deneyin kontrolden \u00e7\u0131kmas\u0131n\u0131 ve \u00fcretim ortam\u0131na zarar vermesini engellemek i\u00e7in g\u00fcvenlik mekanizmalar\u0131 sa\u011flarlar. \u00d6rne\u011fin, belirli bir CloudWatch alarm\u0131 tetiklendi\u011finde deneyi otomatik olarak durduracak bir duru\u015f ko\u015fulu belirleyebilirsiniz. Bu sayede, Chaos Testing g\u00fcvenli ve kontrol edilebilir bir s\u00fcre\u00e7 haline gelir.<\/p>\n<p>AWS FIS&#8217;in EKS ile entegrasyonu, Kubernetes k\u00fcmelerinde \u00e7al\u0131\u015fan mikroservis mimarilerinin dayan\u0131kl\u0131l\u0131\u011f\u0131n\u0131 test etmek i\u00e7in paha bi\u00e7ilmezdir. EKS ortam\u0131nda, Pod&#8217;lar, Node&#8217;lar, Availability Zone&#8217;lar veya hatta veri taban\u0131 ba\u011flant\u0131lar\u0131 gibi bir\u00e7ok farkl\u0131 seviyede ar\u0131zalar enjekte edebilirsiniz. \u00d6rne\u011fin, belirli bir deployment&#8217;a ait Pod&#8217;lar\u0131 rastgele sonland\u0131rarak uygulaman\u0131z\u0131n kendili\u011finden iyile\u015fme mekanizmalar\u0131n\u0131n (\u00f6rne\u011fin Kubernetes ReplicaSet&#8217;leri) d\u00fczg\u00fcn \u00e7al\u0131\u015f\u0131p \u00e7al\u0131\u015fmad\u0131\u011f\u0131n\u0131 test edebilirsiniz. Veya, belirli bir Availability Zone&#8217;daki t\u00fcm EC2 instance&#8217;lar\u0131n\u0131 durdurarak, uygulaman\u0131z\u0131n multi-AZ mimarisinin felaketlere kar\u015f\u0131 ne kadar diren\u00e7li oldu\u011funu sim\u00fcle edebilirsiniz. Bu testler, uygulaman\u0131z\u0131n sadece teoride de\u011fil, pratikte de beklendi\u011fi gibi davrand\u0131\u011f\u0131ndan emin olman\u0131z\u0131 sa\u011flar. AWS FIS, bu karma\u015f\u0131k deneyleri basit ve y\u00f6netilebilir bir aray\u00fcze d\u00f6n\u00fc\u015ft\u00fcrerek, ekiplerin daha az \u00e7abayla daha fazla g\u00fcvenilirlik elde etmesine yard\u0131mc\u0131 olur. Sonu\u00e7 olarak, AWS FIS, AWS EKS \u00fczerinde \u00e7al\u0131\u015fan bulut yerel uygulamalar\u0131n\u0131z\u0131n dayan\u0131kl\u0131l\u0131k m\u00fchendisli\u011fi s\u00fcre\u00e7lerinin vazge\u00e7ilmez bir par\u00e7as\u0131d\u0131r ve sistemlerinizin s\u00fcrekli olarak sa\u011flaml\u0131\u011f\u0131n\u0131 korumas\u0131n\u0131 sa\u011flamak i\u00e7in g\u00fc\u00e7l\u00fc bir ara\u00e7 seti sunar.<\/p>\n<h2 id=\"aws-eks-ortaminizi-chaos-testinge-nasil-hazirlarsiniz-ilk-adimlar\">AWS EKS Ortam\u0131n\u0131z\u0131 Chaos Testing&#8217;e Nas\u0131l Haz\u0131rlars\u0131n\u0131z? \u0130lk Ad\u0131mlar<\/h2>\n<p>AWS EKS k\u00fcmenizi AWS FIS ile Chaos Testing&#8217;e tabi tutmadan \u00f6nce, ortam\u0131n\u0131z\u0131n do\u011fru \u015fekilde yap\u0131land\u0131r\u0131ld\u0131\u011f\u0131ndan emin olman\u0131z gerekir. Bu \u00f6n haz\u0131rl\u0131k ad\u0131mlar\u0131, testlerinizin g\u00fcvenli, etkili ve \u00f6ng\u00f6r\u00fclebilir olmas\u0131n\u0131 sa\u011flar. \u0130lk olarak, \u00e7al\u0131\u015fan bir AWS EKS k\u00fcmenizin olmas\u0131 ve bu k\u00fcmeye eri\u015fim yetkinli\u011finizin bulunmas\u0131 gerekmektedir. E\u011fer hen\u00fcz bir EKS k\u00fcmeniz yoksa, AWS Y\u00f6netim Konsolu, <code>eksctl<\/code> veya Terraform gibi ara\u00e7larla h\u0131zl\u0131ca bir tane olu\u015fturabilirsiniz. Bu makalenin oda\u011f\u0131 Chaos Testing oldu\u011fu i\u00e7in bir EKS k\u00fcmenizin zaten var oldu\u011funu varsayaca\u011f\u0131z.<\/p>\n<p>\u0130kinci ve en kritik ad\u0131m, AWS FIS&#8217;in EKS k\u00fcmenizle etkile\u015fime girebilmesi i\u00e7in gerekli IAM (Identity and Access Management) rollerini ve izinlerini yap\u0131land\u0131rmakt\u0131r. AWS FIS, arka planda EKS Pod&#8217;lar\u0131n\u0131 sonland\u0131rmak veya EC2 instance&#8217;lar\u0131n\u0131 durdurmak gibi i\u015flemler yapmak i\u00e7in belirli yetkilere ihtiya\u00e7 duyar. Bu yetkileri vermek i\u00e7in \u00f6zel bir IAM rol\u00fc olu\u015fturup FIS servisine ataman\u0131z gerekmektedir. Bu rol, FIS&#8217;in EKS kaynaklar\u0131n\u0131 hedefleyebilmesi ve \u00fczerinde belirli eylemleri ger\u00e7ekle\u015ftirebilmesi i\u00e7in gerekli izinleri i\u00e7ermelidir. Genellikle bu, EKS ile ilgili izinleri (\u00f6rne\u011fin <code>eks:ListNodegroups<\/code>, <code>eks:DescribeNodegroup<\/code>, <code>eks:TerminatePod<\/code> gibi) ve hedefleyece\u011finiz EC2 instance&#8217;lar\u0131 veya di\u011fer AWS kaynaklar\u0131 i\u00e7in gerekli izinleri i\u00e7erir. Bu izinlerin en az ayr\u0131cal\u0131k prensibiyle verilmesi, yani yaln\u0131zca ihtiya\u00e7 duyulan yetkilerin atanmas\u0131 b\u00fcy\u00fck \u00f6nem ta\u015f\u0131r.<\/p>\n<p>A\u015fa\u011f\u0131da, EKS Pod&#8217;lar\u0131n\u0131 sonland\u0131rmak i\u00e7in AWS FIS taraf\u0131ndan kullan\u0131lacak \u00f6rnek bir IAM politikas\u0131 (JSON format\u0131nda) ve bu politikay\u0131 bir role nas\u0131l ba\u011flayaca\u011f\u0131n\u0131za dair bir \u00f6rnek bulabilirsiniz:<\/p>\n<pre><code class=\"language-json\">\n{\n    \"Version\": \"2012-10-17\",\n    \"Statement\": [\n        {\n            \"Effect\": \"Allow\",\n            \"Action\": [\n                \"eks:ListNodegroups\",\n                \"eks:DescribeNodegroup\",\n                \"eks:ListPods\",\n                \"eks:TerminatePod\"\n            ],\n            \"Resource\": \"*\"\n        },\n        {\n            \"Effect\": \"Allow\",\n            \"Action\": [\n                \"ec2:DescribeInstances\",\n                \"ec2:DescribeTags\",\n                \"ec2:RebootInstances\",\n                \"ec2:StopInstances\"\n            ],\n            \"Resource\": \"*\"\n        },\n        {\n            \"Effect\": \"Allow\",\n            \"Action\": \"cloudwatch:PutMetricData\",\n            \"Resource\": \"*\"\n        },\n        {\n            \"Effect\": \"Allow\",\n            \"Action\": \"fis:InjectApiError\",\n            \"Resource\": \"*\"\n        }\n    ]\n}\n\n<\/pre>\n<p><\/code><\/p>\n<p>Bu IAM politikas\u0131n\u0131 AWS Konsolu \u00fczerinden bir IAM rol\u00fcne ekleyebilir veya AWS CLI ile olu\u015fturabilirsiniz. Rol\u00fc olu\u015ftururken, hizmet varl\u0131\u011f\u0131 (trust policy) olarak <code>fis.amazonaws.com<\/code> servisini belirtmeyi unutmay\u0131n, b\u00f6ylece FIS bu rol\u00fc \u00fcstlenebilir.<\/p>\n<pre><code class=\"language-bash\">\n# FIS servisi i\u00e7in bir trust policy olu\u015fturma\ncat > fis-trust-policy.json << EOF\n{\n  \"Version\": \"2012-10-17\",\n  \"Statement\": [\n    {\n      \"Effect\": \"Allow\",\n      \"Principal\": {\n        \"Service\": \"fis.amazonaws.com\"\n      },\n      \"Action\": \"sts:AssumeRole\"\n    }\n  ]\n}\nEOF\n\n# fis-service-role ad\u0131nda bir IAM rol\u00fc olu\u015fturma\naws iam create-role --role-name fis-service-role --assume-role-policy-document file:\/\/fis-trust-policy.json\n\n# Yukar\u0131daki JSON politikas\u0131n\u0131 bir dosya olarak kaydedin (\u00f6rne\u011fin fis-eks-policy.json)\n# Ve bu politikay\u0131 yeni olu\u015fturdu\u011funuz role ili\u015ftirin\naws iam put-role-policy --role-name fis-service-role --policy-name FIS-EKS-ChaosPolicy --policy-document file:\/\/fis-eks-policy.json\n\n<\/pre>\n<p><\/code><\/p>\n<p>Ek olarak, <code>kubectl<\/code> ve AWS CLI'nin yerel makinenizde veya CI\/CD ortam\u0131n\u0131zda kurulu ve yap\u0131land\u0131r\u0131lm\u0131\u015f olmas\u0131, EKS k\u00fcmenizle etkile\u015fim kurman\u0131z ve test sonu\u00e7lar\u0131n\u0131 g\u00f6zlemlemeniz i\u00e7in gereklidir. <code>kubectl<\/code> ile Pod durumlar\u0131n\u0131, deployment'lar\u0131 ve di\u011fer Kubernetes kaynaklar\u0131n\u0131 kontrol ederken, AWS CLI ile AWS FIS deneylerini ba\u015flatabilir ve durdurabilirsiniz. Son olarak, test etmek istedi\u011finiz bir \u00f6rnek uygulaman\u0131n (\u00f6rne\u011fin, bir Nginx deployment'\u0131 veya basit bir mikroservis) EKS k\u00fcmenizde \u00e7al\u0131\u015ft\u0131\u011f\u0131ndan emin olun. Bu sayede, Chaos Testing'in uygulaman\u0131z \u00fczerindeki etkilerini somut bir \u015fekilde g\u00f6zlemleyebilirsiniz. Bu haz\u0131rl\u0131k ad\u0131mlar\u0131 tamamland\u0131\u011f\u0131nda, EKS ortam\u0131n\u0131zda AWS FIS ile g\u00fcvenle Chaos Testing deneyleri yapmaya haz\u0131rs\u0131n\u0131z demektir. Bu ad\u0131mlar\u0131n titizlikle uygulanmas\u0131, hem testlerin do\u011frulu\u011funu hem de olas\u0131 istenmeyen yan etkilerin minimize edilmesini garanti eder.<\/p>\n<h3 id=\"aws-fis-ile-eks-podlarina-ariza-enjeksiyonu-adim-adim-uygulama\">AWS FIS ile EKS Pod'lar\u0131na Ar\u0131za Enjeksiyonu: Ad\u0131m Ad\u0131m Uygulama<\/h3>\n<p>\u015eimdi s\u0131ra geldi AWS FIS'i kullanarak EKS ortam\u0131n\u0131zda somut bir Chaos Testing deneyi ger\u00e7ekle\u015ftirmeye. Bu b\u00f6l\u00fcm, temel bir senaryoyu ele alarak ad\u0131m ad\u0131m bir deney \u015fablonu olu\u015fturmay\u0131, hedefleri tan\u0131mlamay\u0131 ve deneyi ba\u015flatmay\u0131 anlatacak. Senaryomuz: \"Bir EKS k\u00fcmesindeki belirli bir deployment'a ait Pod'lar\u0131n rastgele bir k\u0131sm\u0131n\u0131 sonland\u0131rarak uygulaman\u0131n bu duruma nas\u0131l tepki verdi\u011fini g\u00f6zlemlemek.\" Bu test, Kubernetes'in kendi kendini iyile\u015ftirme mekanizmalar\u0131n\u0131n (\u00f6rne\u011fin ReplicaSet'lerin) beklenen \u015fekilde \u00e7al\u0131\u015ft\u0131\u011f\u0131ndan emin olmak i\u00e7in kritik \u00f6neme sahiptir.<\/p>\n<p>\u0130lk olarak, test etmek istedi\u011fimiz bir Kubernetes deployment'\u0131na ihtiyac\u0131m\u0131z var. Basit bir Nginx deployment'\u0131 kullanabiliriz. E\u011fer k\u00fcmenizde yoksa, a\u015fa\u011f\u0131daki YAML ile bir tane olu\u015fturabilirsiniz:<\/p>\n<pre><code class=\"language-yaml\">\napiVersion: apps\/v1\nkind: Deployment\nmetadata:\n  name: nginx-deployment\n  labels:\n    app: nginx\nspec:\n  replicas: 3\n  selector:\n    matchLabels:\n      app: nginx\n  template:\n    metadata:\n      labels:\n        app: nginx\n    spec:\n      containers:\n      - name: nginx\n        image: nginx:latest\n        ports:\n        - containerPort: 80\n\n<\/pre>\n<p><\/code><\/p>\n<p>Bu deployment'\u0131 <code>kubectl apply -f nginx-deployment.yaml<\/code> komutuyla k\u00fcmenize uygulay\u0131n. \u00dc\u00e7 adet Nginx Pod'unun \u00e7al\u0131\u015ft\u0131\u011f\u0131ndan emin olmak i\u00e7in <code>kubectl get pods -l app=nginx<\/code> komutunu kullanabilirsiniz.<\/p>\n<p>\u015eimdi AWS FIS Deney \u015eablonu'nu olu\u015ftural\u0131m. AWS Konsolu'na gidin, \"Fault Injection Simulator\" hizmetini aray\u0131n ve sol men\u00fcden \"Experiment templates\" se\u00e7ene\u011fine t\u0131klay\u0131n. \"Create experiment template\" butonuna bas\u0131n. Burada a\u015fa\u011f\u0131daki ad\u0131mlar\u0131 izleyece\u011fiz:<\/p>\n<ol>\n<li><strong>Description:<\/strong> \"EKS Nginx Pod Sonland\u0131rma Deneyi\" gibi a\u00e7\u0131klay\u0131c\u0131 bir isim verin.<\/li>\n<li><strong>IAM role:<\/strong> Daha \u00f6nce olu\u015fturdu\u011funuz <code>fis-service-role<\/code> rol\u00fcn\u00fc se\u00e7in.<\/li>\n<li><strong>Targets (Hedefler):<\/strong>\n<ul>\n<li>\"Add target\" butonuna t\u0131klay\u0131n.<\/li>\n<li><strong>Name:<\/strong> <code>MyNginxPods<\/code> gibi bir isim verin.<\/li>\n<li><strong>Resource type:<\/strong> <code>aws:eks:pod<\/code> se\u00e7ene\u011fini se\u00e7in.<\/li>\n<li><strong>Target method:<\/strong> \"All resources in specified resource tags or filters\" se\u00e7ene\u011fini i\u015faretleyin.<\/li>\n<li><strong>Filters:<\/strong>\n<ul>\n<li><strong>Field:<\/strong> <code>eks:cluster-name<\/code><\/li>\n<li><strong>Values:<\/strong> <code><EKS_K\u00dcMEN\u0130Z\u0130N_ADI><\/code> (\u00d6rne\u011fin, <code>my-eks-cluster<\/code>)<\/li>\n<\/ul>\n<ul>\n<li><strong>Field:<\/strong> <code>eks:namespace<\/code><\/li>\n<li><strong>Values:<\/strong> <code>default<\/code> (Nginx Pod'lar\u0131n\u0131z\u0131n \u00e7al\u0131\u015ft\u0131\u011f\u0131 namespace)<\/li>\n<\/ul>\n<ul>\n<li><strong>Field:<\/strong> <code>eks:pod-label:app<\/code><\/li>\n<li><strong>Values:<\/strong> <code>nginx<\/code> (Nginx Pod'lar\u0131n\u0131z\u0131n etiketi)<\/li>\n<\/ul>\n<\/li>\n<li><strong>Selection mode:<\/strong> \"Count\" se\u00e7ene\u011fini se\u00e7in ve <code>1<\/code> veya <code>2<\/code> gibi bir de\u011fer girin. Bu, her deneme \u00e7al\u0131\u015ft\u0131\u011f\u0131nda ka\u00e7 Pod'un hedeflenece\u011fini belirtir. Alternatif olarak \"Percent\" se\u00e7ene\u011fini se\u00e7ip, \u00f6rne\u011fin %50'sini de hedefleyebilirsiniz.<\/li>\n<\/ul>\n<\/li>\n<li><strong>Actions (Aksiyonlar):<\/strong>\n<ul>\n<li>\"Add action\" butonuna t\u0131klay\u0131n.<\/li>\n<li><strong>Name:<\/strong> <code>TerminateNginxPods<\/code> gibi bir isim verin.<\/li>\n<li><strong>Action type:<\/strong> <code>aws:eks:terminate-pods<\/code> se\u00e7ene\u011fini se\u00e7in. Bu aksiyon, se\u00e7ilen EKS Pod'lar\u0131n\u0131 sonland\u0131r\u0131r.<\/li>\n<li><strong>Target:<\/strong> \u00d6nceki ad\u0131mda tan\u0131mlad\u0131\u011f\u0131n\u0131z hedef (<code>MyNginxPods<\/code>) se\u00e7ene\u011fini belirleyin.<\/li>\n<li><strong>Start after:<\/strong> E\u011fer birden fazla aksiyonunuz varsa, bu aksiyonun ne zaman ba\u015flayaca\u011f\u0131n\u0131 belirtebilirsiniz. \u015eu an i\u00e7in bo\u015f b\u0131rak\u0131n.<\/li>\n<\/ul>\n<\/li>\n<li><strong>Stop conditions (Duru\u015f Ko\u015fullar\u0131):<\/strong>\n<ul>\n<li>Bu k\u0131s\u0131m olduk\u00e7a \u00f6nemlidir. Deneyin kontrolden \u00e7\u0131kmas\u0131n\u0131 \u00f6nlemek i\u00e7in bir CloudWatch alarm\u0131 belirleyebilirsiniz. \u00d6rne\u011fin, uygulaman\u0131z\u0131n HTTP 5xx hatalar\u0131 belirli bir e\u015fi\u011fin \u00fczerine \u00e7\u0131kt\u0131\u011f\u0131nda deneyi durduracak bir alarm olu\u015fturabilirsiniz. \"Add stop condition\" butonuna t\u0131klay\u0131n.<\/li>\n<li><strong>CloudWatch alarm ARN:<\/strong> Olu\u015fturdu\u011funuz veya var olan bir CloudWatch alarm\u0131n\u0131n ARN'\u0131n\u0131 girin. \u00d6rne\u011fin, Nginx Pod'lar\u0131n\u0131z\u0131n CPU kullan\u0131m\u0131n\u0131n a\u015f\u0131r\u0131 y\u00fckseldi\u011fini veya belirli bir hata say\u0131s\u0131n\u0131n artt\u0131\u011f\u0131n\u0131 izleyen bir alarm. Bu \u00f6rnek i\u00e7in \u015fimdilik bo\u015f b\u0131rakabiliriz, ancak \u00fcretim ortam\u0131nda mutlaka kullanmal\u0131s\u0131n\u0131z.<\/li>\n<\/ul>\n<\/li>\n<li><strong>Tags:<\/strong> Deney \u015fablonunuza etiketler ekleyebilirsiniz.<\/li>\n<li>Ayarlar\u0131 g\u00f6zden ge\u00e7irin ve \"Create experiment template\" butonuna t\u0131klay\u0131n.<\/li>\n<\/ol>\n<p>Deney \u015fablonunuz olu\u015ftuktan sonra, onu ba\u015flatmaya haz\u0131rs\u0131n\u0131z. Olu\u015fturdu\u011funuz \u015fablonu se\u00e7in ve \"Start experiment\" butonuna t\u0131klay\u0131n. Bir onay penceresi a\u00e7\u0131lacak, burada \"Start experiment\" yazarak i\u015flemi onaylay\u0131n.<\/p>\n<p>Deney ba\u015flad\u0131ktan sonra, <code>kubectl get pods -l app=nginx --watch<\/code> komutunu kullanarak Pod'lar\u0131n\u0131z\u0131n durumunu izleyebilirsiniz. K\u0131sa bir s\u00fcre sonra, baz\u0131 Nginx Pod'lar\u0131n\u0131n <code>Terminating<\/code> durumuna ge\u00e7ti\u011fini ve ard\u0131ndan Kubernetes ReplicaSet'i taraf\u0131ndan yeni Pod'lar\u0131n olu\u015fturuldu\u011funu g\u00f6receksiniz. Bu, Kubernetes'in kendini iyile\u015ftirme mekanizmas\u0131n\u0131n \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131 g\u00f6sterir.<\/p>\n<p>Bu g\u00f6rsel betimleme, konsol ekran\u0131nda ad\u0131m ad\u0131m ilerlerken Pod'lar\u0131n durum de\u011fi\u015fikliklerini izlemenizi, <code>kubectl<\/code> \u00e7\u0131kt\u0131s\u0131nda <code>Terminating<\/code> ve <code>ContainerCreating<\/code> gibi durumlar\u0131 g\u00f6rmenizi ve uygulaman\u0131z\u0131n kesintiye u\u011framadan devam edip etmedi\u011fini kontrol etmenizi sa\u011flar. Deney bittikten sonra FIS konsolunda deneyin durumunu ve sonu\u00e7lar\u0131n\u0131 inceleyebilirsiniz. Ba\u015far\u0131l\u0131 bir Chaos Testing, uygulaman\u0131z\u0131n bu t\u00fcr ar\u0131zalara kar\u015f\u0131 diren\u00e7li oldu\u011funu kan\u0131tlar ve size operasyonel g\u00fcven verir. Ancak, e\u011fer uygulama beklenen \u015fekilde tepki vermezse, bu bir iyile\u015ftirme f\u0131rsat\u0131d\u0131r ve sistemi daha dayan\u0131kl\u0131 hale getirmek i\u00e7in yap\u0131lmas\u0131 gereken de\u011fi\u015fiklikleri i\u015faret eder.<\/p>\n<h2 id=\"gercek-dunya-senaryolari-ve-ileri-duzey-chaos-testing-teknikleri\">Ger\u00e7ek D\u00fcnya Senaryolar\u0131 ve \u0130leri D\u00fczey Chaos Testing Teknikleri<\/h2>\n<p>Chaos Testing'in g\u00fcc\u00fc, sadece basit Pod sonland\u0131rma senaryolar\u0131n\u0131n \u00f6tesine ge\u00e7erek, ger\u00e7ek d\u00fcnya ar\u0131zalar\u0131n\u0131 sim\u00fcle etme yetene\u011finde yatar. AWS FIS, bu geni\u015f spektrumu destekleyerek ekiplerin karma\u015f\u0131k sistemlerini daha kapsaml\u0131 bir \u015fekilde test etmelerine olanak tan\u0131r. \u0130\u015fte iki farkl\u0131 ger\u00e7ek d\u00fcnya vaka analizi ve daha ileri d\u00fczey Chaos Testing teknikleri.<\/p>\n<h4>Vaka Analizi 1: Bir Finansal Kurulu\u015fun AZ Ar\u0131zas\u0131 Sim\u00fclasyonu<\/h4>\n<p>B\u00fcy\u00fck bir finansal kurulu\u015f, m\u00fc\u015fteri i\u015flemlerinin kesintisiz devaml\u0131l\u0131\u011f\u0131n\u0131 sa\u011flamak i\u00e7in AWS EKS \u00fczerinde \u00e7al\u0131\u015fan kritik bir mikroservis mimarisine sahipti. Uygulama, y\u00fcksek eri\u015filebilirlik i\u00e7in birden fazla Availability Zone'a (AZ) yay\u0131lm\u0131\u015ft\u0131. Ancak, \"Tek bir AZ'nin tamamen devre d\u0131\u015f\u0131 kalmas\u0131 durumunda sistemimiz ne kadar s\u00fcreyle \u00e7al\u0131\u015f\u0131r durumda kal\u0131r ve veri b\u00fct\u00fcnl\u00fc\u011f\u00fc sa\u011flan\u0131r m\u0131?\" sorusuna tam bir g\u00fcvenle yan\u0131t veremiyorlard\u0131. Geleneksel felaket kurtarma (DR) tatbikatlar\u0131 pahal\u0131 ve zaman al\u0131c\u0131yd\u0131. AWS FIS'i kullanarak, bir AZ'deki t\u00fcm EC2 instance'lar\u0131n\u0131 (EKS node'lar\u0131n\u0131) durdurma veya yeniden ba\u015flatma aksiyonunu i\u00e7eren bir deney \u015fablonu olu\u015fturdular (<code>aws:ec2:stop-instances<\/code>).<\/p>\n<ul>\n<li><strong>Hipotez:<\/strong> Uygulama, bir AZ ar\u0131zas\u0131nda otomatik olarak kendini di\u011fer AZ'lere kayd\u0131racak ve m\u00fc\u015fteri deneyiminde fark edilir bir kesinti ya\u015fanmayacak.<\/li>\n<li><strong>Deney:<\/strong> FIS ile bir AZ'deki t\u00fcm EKS node'lar\u0131 hedeflenerek durduruldu. Duru\u015f ko\u015fulu olarak, kritik i\u015flem hacminin belirli bir e\u015fi\u011fin alt\u0131na d\u00fc\u015fmesi veya y\u00fcksek hata oranlar\u0131 belirlendi.<\/li>\n<li><strong>G\u00f6zlem:<\/strong> Deney s\u0131ras\u0131nda, Kubernetes'in Pod'lar\u0131 di\u011fer AZ'lerde yeniden \u00e7izelgeledi\u011fi g\u00f6zlemlendi. Ancak, baz\u0131 Pod'lar <code>Pending<\/code> durumunda kald\u0131 \u00e7\u00fcnk\u00fc PersistentVolumeClaim'ler (PVC'ler) ilk AZ'deki EBS birimlerine ba\u011fl\u0131yd\u0131 ve bu birimler AZ'ler aras\u0131nda ta\u015f\u0131nam\u0131yordu. Ayr\u0131ca, baz\u0131 mikroservisler aras\u0131ndaki a\u011f ba\u011flant\u0131lar\u0131 yeniden kurulurken beklenenden daha uzun gecikmeler ya\u015fand\u0131.<\/li>\n<li><strong>\u0130yile\u015ftirme:<\/strong>\n<ul>\n<li>PersistentVolume'lar i\u00e7in AZ'ler aras\u0131 replikasyonu destekleyen \u00e7\u00f6z\u00fcmler (\u00f6rne\u011fin Amazon EFS veya farkl\u0131 CSI s\u00fcr\u00fcc\u00fcleri) ara\u015ft\u0131r\u0131ld\u0131 ve uyguland\u0131.<\/li>\n<li>Mikroservisler aras\u0131 ileti\u015fimi daha esnek hale getirmek i\u00e7in Service Mesh (Istio) konfig\u00fcrasyonlar\u0131 optimize edildi ve tolerans s\u00fcreleri ayarland\u0131.<\/li>\n<li>CloudWatch metrikleri ve alarmlar\u0131, bu t\u00fcr ar\u0131zalar\u0131 daha h\u0131zl\u0131 tespit etmek i\u00e7in geli\u015ftirildi.<\/li>\n<\/ul>\n<\/ul>\n<p>Bu deney, finansal kurulu\u015fun DR stratejilerindeki \u00f6nemli eksiklikleri ortaya koyarak, m\u00fc\u015fterilere kesintisiz hizmet sunma yetene\u011fini \u00f6nemli \u00f6l\u00e7\u00fcde art\u0131rmas\u0131na yard\u0131mc\u0131 oldu.<\/p>\n<h4>Vaka Analizi 2: Bir Oyun \u015eirketinin A\u011f Gecikmesi Testleri<\/h4>\n<p>Bir \u00e7evrimi\u00e7i oyun \u015firketi, EKS \u00fczerinde \u00e7al\u0131\u015fan ger\u00e7ek zamanl\u0131 \u00e7ok oyunculu oyun sunucular\u0131n\u0131n a\u011f sorunlar\u0131na kar\u015f\u0131 ne kadar dayan\u0131kl\u0131 oldu\u011funu merak ediyordu. \u00d6zellikle, oyun sunucular\u0131n\u0131n farkl\u0131 co\u011frafi b\u00f6lgelerdeki oyuncularla etkile\u015fiminde olu\u015fabilecek a\u011f gecikmelerinin kullan\u0131c\u0131 deneyimini nas\u0131l etkiledi\u011fi kritikti. AWS FIS, <code>aws:ec2:inject-network-latency<\/code> gibi aksiyonlarla a\u011f gecikmesi enjekte etme yetene\u011fi sunar.<\/p>\n<ul>\n<li><strong>Hipotez:<\/strong> Belirli bir oranda a\u011f gecikmesi, oyun deneyimini \u00f6nemli \u00f6l\u00e7\u00fcde k\u00f6t\u00fcle\u015ftirmeyecek ve mevcut e\u015fle\u015ftirme algoritmalar\u0131 gecikmeli oyuncular\u0131 uygun \u015fekilde y\u00f6netebilecek.<\/li>\n<li><strong>Deney:<\/strong> Oyun sunucular\u0131n\u0131n \u00e7al\u0131\u015ft\u0131\u011f\u0131 EC2 instance'lar\u0131na 50ms ve 100ms'lik gecikmeler enjekte edildi. Ayn\u0131 zamanda, oyun i\u00e7indeki oyuncu metrikleri (ping, frame drop, lag spike) ve e\u015fle\u015ftirme algoritmalar\u0131n\u0131n performans\u0131 izlendi.<\/li>\n<li><strong>G\u00f6zlem:<\/strong> 50ms'lik gecikme kabul edilebilir bir seviyedeyken, 100ms'lik gecikme baz\u0131 oyun t\u00fcrlerinde (\u00f6rne\u011fin FPS oyunlar\u0131) \"kabul edilemez\" bir lag deneyimine yol a\u00e7t\u0131. E\u015fle\u015ftirme algoritmalar\u0131, gecikmeli oyuncular\u0131 ayn\u0131 lobiye atayarak deneyimi daha da k\u00f6t\u00fcle\u015ftirdi.<\/li>\n<li><strong>\u0130yile\u015ftirme:<\/strong>\n<ul>\n<li>Oyun sunucular\u0131n\u0131n daha fazla b\u00f6lgede konu\u015fland\u0131r\u0131lmas\u0131 stratejisi g\u00fc\u00e7lendirildi.<\/li>\n<li>E\u015fle\u015ftirme algoritmalar\u0131, oyuncu gecikmesini de bir fakt\u00f6r olarak dahil edecek \u015fekilde g\u00fcncellendi.<\/li>\n<li>Kritik a\u011f yollar\u0131 i\u00e7in AWS Direct Connect veya AWS Global Accelerator gibi \u00e7\u00f6z\u00fcmler de\u011ferlendirildi.<\/li>\n<\/ul>\n<\/ul>\n<p>Bu testler, oyun \u015firketinin global oyunculara daha istikrarl\u0131 ve keyifli bir deneyim sunmas\u0131 i\u00e7in \u00f6nemli veriler sa\u011flad\u0131.<\/p>\n<p>Bu vaka analizleri, AWS FIS'in sadece Pod sonland\u0131rman\u0131n \u00f6tesinde, daha geni\u015f ve karma\u015f\u0131k senaryolar\u0131 test etmek i\u00e7in nas\u0131l kullan\u0131labilece\u011fini g\u00f6stermektedir. EKS \u00fczerindeki Chaos Testing, yaln\u0131zca altyap\u0131 seviyesindeki ar\u0131zalar\u0131 de\u011fil, ayn\u0131 zamanda uygulaman\u0131n kendisinin ve entegrasyonlar\u0131n\u0131n dayan\u0131kl\u0131l\u0131\u011f\u0131n\u0131 da test etmenize olanak tan\u0131r. Deneyleri otomatikle\u015ftirmek (\u00f6rne\u011fin CI\/CD pipeline'lar\u0131na entegre etmek veya AWS Lambda fonksiyonlar\u0131 ile belirli aral\u0131klarla \u00e7al\u0131\u015ft\u0131rmak) ve geli\u015fmi\u015f duru\u015f ko\u015fullar\u0131 (Prometheus metrikleri, \u00f6zel API \u00e7a\u011fr\u0131lar\u0131) kullanmak, Chaos Testing program\u0131n\u0131z\u0131n olgunlu\u011funu art\u0131r\u0131r. AWS FIS, EKS k\u00fcmenizle entegre olarak, bulut yerel uygulamalar\u0131n\u0131z\u0131n beklenmedik durumlara kar\u015f\u0131 tam donan\u0131ml\u0131 olmas\u0131n\u0131 sa\u011flar.<\/p>\n<p>Mobil uyumlu HTML \u00fcretimi i\u00e7in ise, CSS media query'ler kullanmak standart bir yakla\u015f\u0131md\u0131r. A\u015fa\u011f\u0131da, temel bir mobil uyumlu stil \u00f6rne\u011fi bulunmaktad\u0131r:<\/p>\n<pre><code class=\"language-html\">\n<style>\n  \/* Varsay\u0131lan stil: Geni\u015f ekranlar i\u00e7in *\/\n  .container {\n    width: 90%;\n    margin: 0 auto;\n    padding: 20px;\n  }\n  h2 {\n    font-size: 2em;\n    color: #2c3e50;\n  }\n  p {\n    line-height: 1.6;\n  }\n\n  \/* Mobil cihazlar i\u00e7in (768px'den k\u00fc\u00e7\u00fck ekranlar) *\/\n  @media (max-width: 768px) {\n    .container {\n      width: 100%;\n      padding: 0 15px; \/* Yanlarda biraz bo\u015fluk b\u0131rak\u0131r *\/\n    }\n    h2 {\n      font-size: 1.5em; \/* Mobil cihazlarda ba\u015fl\u0131klar\u0131 k\u00fc\u00e7\u00fclt\u00fcr *\/\n    }\n    .expert-tip {\n      font-size: 0.9em; \/* Mobil ipucu boyutunu ayarlar *\/\n    }\n  }\n\n  \/* \u00c7ok k\u00fc\u00e7\u00fck ekranlar i\u00e7in (480px'den k\u00fc\u00e7\u00fck ekranlar) *\/\n  @media (max-width: 480px) {\n    .container {\n      padding: 0 10px;\n    }\n    h2 {\n      font-size: 1.3em;\n    }\n  }\n<\/style>\n\n<div class=\"container\">\n  <!-- Makale i\u00e7eri\u011fi bu container i\u00e7inde yer alacak -->\n<\/div>\n<\/pre>\n<p><\/code><\/p>\n<p>Bu \u00f6rnek, sayfa i\u00e7eri\u011finin farkl\u0131 ekran boyutlar\u0131na nas\u0131l uyum sa\u011flayaca\u011f\u0131n\u0131 g\u00f6sterir, b\u00f6ylece mobil cihazlardan okuyan kullan\u0131c\u0131lar i\u00e7in de optimum bir deneyim sunulur. Bu t\u00fcr CSS teknikleri, modern web geli\u015ftirmenin vazge\u00e7ilmez bir par\u00e7as\u0131d\u0131r ve teknik makalelerin eri\u015filebilirli\u011fini art\u0131r\u0131r.<\/p>\n<h3 id=\"chaos-engineering-kulturunu-benimsemek-ve-otomasyonun-onemi\">Chaos Engineering K\u00fclt\u00fcr\u00fcn\u00fc Benimsemek ve Otomasyonun \u00d6nemi<\/h3>\n<p>Chaos Testing, yaln\u0131zca teknik bir ara\u00e7 olman\u0131n \u00f6tesinde, organizasyon i\u00e7inde bir k\u00fclt\u00fcr de\u011fi\u015fimi ve operasyonel felsefe gerektirir. En iyi ara\u00e7lar\u0131 bile kullansan\u0131z, e\u011fer ekipleriniz Chaos Engineering'in faydalar\u0131na inanm\u0131yor ve onu g\u00fcnl\u00fck i\u015f ak\u0131\u015flar\u0131na entegre etmiyorsa, tam potansiyelini asla ger\u00e7ekle\u015ftiremezsiniz. Chaos Engineering'i benimsemek, \"hata ka\u00e7\u0131n\u0131lmazd\u0131r\" ger\u00e7e\u011fini kabul etmek ve sistemleri bu hatalar ger\u00e7ekle\u015fti\u011finde bile i\u015flevselli\u011fini s\u00fcrd\u00fcrebilecek \u015fekilde tasarlamak anlam\u0131na gelir. Bu, geli\u015ftiricilerin, operasyon ekiplerinin ve \u00fcr\u00fcn y\u00f6neticilerinin sistemin zay\u0131f noktalar\u0131n\u0131 s\u00fcrekli olarak aramalar\u0131n\u0131, hipotezler olu\u015fturmalar\u0131n\u0131 ve bu zay\u0131fl\u0131klar\u0131 gidermek i\u00e7in proaktif ad\u0131mlar atmalar\u0131n\u0131 te\u015fvik eder. Bu k\u00fclt\u00fcrel de\u011fi\u015fim, sistemler hakk\u0131nda daha derin bir anlay\u0131\u015f geli\u015ftirilmesine ve beklenmedik durumlar kar\u015f\u0131s\u0131nda daha sakin ve kontroll\u00fc tepki verilmesine olanak tan\u0131r.<\/p>\n<p>Chaos Engineering k\u00fclt\u00fcr\u00fcn\u00fc yayg\u0131nla\u015ft\u0131rmak i\u00e7in, testlere k\u00fc\u00e7\u00fck ad\u0131mlarla ba\u015flamak ve kontroll\u00fc deneyler yapmak \u00f6nemlidir. Ba\u015flang\u0131\u00e7ta, \u00fcretim d\u0131\u015f\u0131 ortamlarda (test, staging) deneyler yapmak ve etki alan\u0131n\u0131 s\u0131n\u0131rlamak, ekiplerin g\u00fcven kazanmas\u0131na yard\u0131mc\u0131 olacakt\u0131r. Deneyler ba\u015far\u0131l\u0131 olduk\u00e7a ve sistemin dayan\u0131kl\u0131l\u0131\u011f\u0131 kan\u0131tland\u0131k\u00e7a, bu testleri \u00fcretim ortam\u0131na daha kademeli ve kontroll\u00fc bir \u015fekilde ta\u015f\u0131mak m\u00fcmk\u00fcn olur. Her deneyden sonra, sonu\u00e7lar\u0131 analiz etmek, \u00e7\u0131kar\u0131mlar yapmak ve sistemde gerekli iyile\u015ftirmeleri uygulamak esast\u0131r. Bu, s\u00fcrekli bir \u00f6\u011frenme ve iyile\u015ftirme d\u00f6ng\u00fcs\u00fcn\u00fc besler.<\/p>\n<p>Otomasyon, Chaos Engineering program\u0131n\u0131z\u0131n ba\u015far\u0131s\u0131nda kritik bir rol oynar. Manuel olarak ar\u0131za enjeksiyonu yapmak, hem zaman al\u0131c\u0131 hem de hata yapmaya a\u00e7\u0131k bir s\u00fcre\u00e7tir. AWS FIS gibi ara\u00e7lar, bu deneyleri otomatikle\u015ftirmeyi m\u00fcmk\u00fcn k\u0131lar. Deney \u015fablonlar\u0131n\u0131 bir kez tan\u0131mlad\u0131ktan sonra, bunlar\u0131 d\u00fczenli aral\u0131klarla veya belirli bir olay tetiklendi\u011finde otomatik olarak \u00e7al\u0131\u015facak \u015fekilde yap\u0131land\u0131rabilirsiniz. \u00d6rne\u011fin, CI\/CD (Continuous Integration\/Continuous Deployment) pipeline'lar\u0131n\u0131za Chaos Testing ad\u0131mlar\u0131 ekleyebilirsiniz. Her kod da\u011f\u0131t\u0131m\u0131ndan sonra, otomatik bir Chaos Testi \u00e7al\u0131\u015ft\u0131rarak yeni kodun sistemin dayan\u0131kl\u0131l\u0131\u011f\u0131n\u0131 olumsuz etkilemedi\u011finden emin olabilirsiniz. Bu, \"Continuous Chaos\" olarak bilinen bir yakla\u015f\u0131md\u0131r ve sistemin s\u00fcrekli olarak de\u011fi\u015fen ko\u015fullara kar\u015f\u0131 dayan\u0131kl\u0131 kalmas\u0131n\u0131 sa\u011flar.<\/p>\n<pre><code class=\"language-yaml\">\n# \u00d6rnek bir Jenkinsfile veya GitHub Actions YAML par\u00e7as\u0131\n# CI\/CD s\u00fcrecinize AWS FIS deneyini entegre etme\n# ...\nstages:\n  - build\n  - test\n  - deploy\n  - chaos-test\n\nchaos-test:\n  stage: chaos-test\n  script:\n    - echo \"Starting Chaos Test on EKS with AWS FIS...\"\n    - export AWS_REGION=us-east-1\n    - # AWS FIS deney \u015fablonunuzun ID'sini veya ad\u0131n\u0131 kullan\u0131n\n    - FIS_EXPERIMENT_ID=$(aws fis start-experiment --experiment-template-id your-fis-template-id --cli-input-json '{}' | jq -r '.experiment.id')\n    - echo \"AWS FIS Experiment ID: $FIS_EXPERIMENT_ID\"\n    - # Deneyin tamamlanmas\u0131n\u0131 bekle\n    - aws fis wait experiment-running --id $FIS_EXPERIMENT_ID\n    - # Sonu\u00e7lar\u0131 kontrol et (iste\u011fe ba\u011fl\u0131)\n    - EXPERIMENT_STATUS=$(aws fis get-experiment --id $FIS_EXPERIMENT_ID | jq -r '.experiment.state.status')\n    - echo \"AWS FIS Experiment Status: $EXPERIMENT_STATUS\"\n    - if [ \"$EXPERIMENT_STATUS\" != \"completed\" ]; then\n        echo \"Chaos Experiment did not complete successfully or encountered an issue!\"\n        exit 1\n      fi\n    - echo \"Chaos Test completed successfully. System remained resilient.\"\n\n<\/pre>\n<p><\/code><\/p>\n<p>Bu kod par\u00e7as\u0131, CI\/CD pipeline'\u0131n\u0131z\u0131n sonuna nas\u0131l bir Chaos Testi ad\u0131m\u0131 ekleyebilece\u011finizi g\u00f6sterir. <code>aws fis start-experiment<\/code> komutuyla bir deney ba\u015flat\u0131l\u0131r ve <code>aws fis wait<\/code> ile deneyin tamamlanmas\u0131 beklenir. Ard\u0131ndan, deneyin durumu kontrol edilerek sistemin dayan\u0131kl\u0131 kal\u0131p kalmad\u0131\u011f\u0131 do\u011frulan\u0131r. E\u011fer deney ba\u015far\u0131s\u0131z olursa, pipeline durdurulabilir ve geli\u015ftiricilere geri bildirim sa\u011flanabilir.<\/p>\n<p>Otomasyonun bir di\u011fer faydas\u0131 da, farkl\u0131 deneyleri programl\u0131 bir \u015fekilde \u00e7al\u0131\u015ft\u0131rabilme yetene\u011fidir. AWS Lambda fonksiyonlar\u0131n\u0131 kullanarak belirli zamanlarda veya belirli olaylara tepki olarak Chaos Testing deneyleri ba\u015flatabilirsiniz. Bu, daha karma\u015f\u0131k senaryolar\u0131 (\u00f6rne\u011fin, g\u00fcn\u00fcn belirli saatlerinde sistem \u00fczerindeki y\u00fck\u00fcn artt\u0131\u011f\u0131 durumlarda ar\u0131za enjekte etmek) test etmenizi sa\u011flar. Sonu\u00e7 olarak, Chaos Engineering k\u00fclt\u00fcr\u00fc, sistemlerinizi proaktif olarak g\u00fc\u00e7lendirmenin ve operasyonel g\u00fcvenilirli\u011fi art\u0131rman\u0131n temelini olu\u015fturur. Otomasyon ise bu s\u00fcreci \u00f6l\u00e7eklenebilir ve s\u00fcrd\u00fcr\u00fclebilir hale getirerek, ekiplerin daha verimli \u00e7al\u0131\u015fmas\u0131na ve daha dayan\u0131kl\u0131 bulut yerel uygulamalar geli\u015ftirmesine olanak tan\u0131r.<\/p>\n<div class=\"expert-tip\">\n  Uzman \u0130pucu: Chaos Testing'i k\u00fc\u00e7\u00fck ad\u0131mlarla ve kontroll\u00fc bir \u015fekilde ba\u015flat\u0131n. B\u00fcy\u00fck \u00e7apl\u0131 y\u0131k\u0131mlardan ka\u00e7\u0131n\u0131n. \u0130lk deneylerinizde tek bir Pod'u veya k\u00fc\u00e7\u00fck bir servisi hedefleyin ve sistemin beklenen \u015fekilde iyile\u015fti\u011finden emin olun. Ard\u0131ndan, deneylerinizi kademeli olarak karma\u015f\u0131kla\u015ft\u0131r\u0131n ve etki alan\u0131n\u0131 geni\u015fletin. Bu yakla\u015f\u0131m, ekibinizin g\u00fcvenini art\u0131racak ve olas\u0131 riskleri minimize edecektir.\n<\/div>\n<h2 id=\"sonuc-eks-uygulamalarinizin-dayanikliligini-kalici-hale-getirmek\">Sonu\u00e7: EKS Uygulamalar\u0131n\u0131z\u0131n Dayan\u0131kl\u0131l\u0131\u011f\u0131n\u0131 Kal\u0131c\u0131 Hale Getirmek<\/h2>\n<p>G\u00fcn\u00fcm\u00fcz\u00fcn h\u0131zla de\u011fi\u015fen ve s\u00fcrekli b\u00fcy\u00fcyen dijital d\u00fcnyas\u0131nda, AWS EKS gibi bulut yerel platformlar \u00fczerinde \u00e7al\u0131\u015fan uygulamalar\u0131n sadece i\u015flevsel olmas\u0131 yeterli de\u011fildir; ayn\u0131 zamanda beklenmedik ar\u0131zalara kar\u015f\u0131 diren\u00e7li ve kesintisiz hizmet sunabilecek kadar dayan\u0131kl\u0131 olmas\u0131 da kritik bir gerekliliktir. Bu makalede ele ald\u0131\u011f\u0131m\u0131z Chaos Testing ve AWS Fault Injection Simulator (FIS) entegrasyonu, bu dayan\u0131kl\u0131l\u0131\u011f\u0131 proaktif bir \u015fekilde test etmenin ve art\u0131rman\u0131n g\u00fc\u00e7l\u00fc bir yolunu sunar. Chaos Engineering felsefesini benimseyerek, sistemlerimizin zay\u0131f noktalar\u0131n\u0131 \u00f6nceden ke\u015ffedebilir, olas\u0131 felaketleri k\u00fc\u00e7\u00fck, kontroll\u00fc deneylere d\u00f6n\u00fc\u015ft\u00fcrebilir ve bu sayede \u00fcretim ortam\u0131nda ya\u015fanabilecek b\u00fcy\u00fck kesintilerin \u00f6n\u00fcne ge\u00e7ebiliriz.<\/p>\n<p>AWS FIS'in sundu\u011fu y\u00f6netilen hizmet avantaj\u0131yla, EKS k\u00fcmenizdeki Pod'lara, Node'lara veya hatta AZ'lere y\u00f6nelik ar\u0131zalar\u0131 g\u00fcvenli ve otomatize bir \u015fekilde enjekte etmek m\u00fcmk\u00fcn hale gelir. Bu, ekiplerin manuel testlerin getirdi\u011fi zaman ve efor y\u00fck\u00fcnden kurtulmas\u0131n\u0131 sa\u011flarken, ayn\u0131 zamanda deneylerin tekrarlanabilirli\u011fini ve do\u011frulu\u011funu art\u0131r\u0131r. Ger\u00e7ek d\u00fcnya vaka analizlerinde g\u00f6rd\u00fc\u011f\u00fcm\u00fcz gibi, AZ ar\u0131zas\u0131 veya a\u011f gecikmesi gibi karma\u015f\u0131k senaryolar\u0131 sim\u00fcle etmek, uygulaman\u0131z\u0131n kritik durumlara nas\u0131l tepki verdi\u011fini anlamak ve iyile\u015ftirme alanlar\u0131n\u0131 belirlemek i\u00e7in paha bi\u00e7ilmez bilgiler sa\u011flar. Bu s\u00fcre\u00e7, sadece teknik bir uygulama de\u011fil, ayn\u0131 zamanda operasyonel m\u00fckemmelli\u011fi hedefleyen bir k\u00fclt\u00fcr de\u011fi\u015fimi ve s\u00fcrekli \u00f6\u011frenme d\u00f6ng\u00fcs\u00fcd\u00fcr. Otomasyonun CI\/CD pipeline'lar\u0131na entegrasyonuyla, Chaos Testing'i geli\u015ftirme ve da\u011f\u0131t\u0131m s\u00fcre\u00e7lerinizin ayr\u0131lmaz bir par\u00e7as\u0131 haline getirerek \"Continuous Chaos\" prensibini uygulayabilir, b\u00f6ylece uygulaman\u0131z\u0131n dayan\u0131kl\u0131l\u0131\u011f\u0131n\u0131 s\u00fcrekli olarak do\u011frulayabilirsiniz. Sonu\u00e7 olarak, AWS EKS \u00fczerindeki Chaos Testing, bulut yerel uygulamalar\u0131n\u0131z\u0131n gelece\u011fin zorluklar\u0131na kar\u015f\u0131 haz\u0131r olmas\u0131n\u0131 sa\u011flaman\u0131n ve m\u00fc\u015fterilerinize kesintisiz, g\u00fcvenilir bir deneyim sunman\u0131n anahtar\u0131d\u0131r.<\/p>\n<h3>S\u0131k\u00e7a Sorulan Sorular (SSS)<\/h3>\n<p>Chaos Testing ve AWS FIS hakk\u0131nda merak edilen baz\u0131 yayg\u0131n sorular ve cevaplar\u0131:<\/p>\n<ol>\n<li>\n        <strong>Chaos Testing \u00fcretim ortam\u0131nda g\u00fcvenli mi?<\/strong><\/p>\n<p>Evet, ancak dikkatli bir planlama ve kademeli bir yakla\u015f\u0131mla. Ba\u015flang\u0131\u00e7ta \u00fcretim d\u0131\u015f\u0131 ortamlarda (dev, test, staging) deneyler yapmak ve etki alan\u0131n\u0131 s\u0131n\u0131rlamak \u00f6nemlidir. \u00dcretim ortam\u0131nda yap\u0131lacak testler i\u00e7in g\u00fc\u00e7l\u00fc duru\u015f ko\u015fullar\u0131 (stop conditions) belirlemek, k\u00fc\u00e7\u00fck bir etki alan\u0131 ile ba\u015flamak ve deneyi yak\u0131ndan izlemek esast\u0131r. Ama\u00e7, sistemi y\u0131kmak de\u011fil, zay\u0131f noktalar\u0131 ortaya \u00e7\u0131karmakt\u0131r. Do\u011fru yap\u0131ld\u0131\u011f\u0131nda, \u00fcretim ortam\u0131ndaki dayan\u0131kl\u0131l\u0131\u011f\u0131 art\u0131r\u0131r ve beklenmedik kesintilerin maliyetini azalt\u0131r.<\/p>\n<\/li>\n<li>\n        <strong>AWS FIS sadece EKS ile mi \u00e7al\u0131\u015f\u0131r?<\/strong><\/p>\n<p>Hay\u0131r, AWS FIS geni\u015f bir AWS hizmet yelpazesini destekler. EKS Pod'lar\u0131 ve Node'lar\u0131 (EC2 instance'lar\u0131) d\u0131\u015f\u0131nda, Amazon EC2, Amazon RDS, Amazon EBS, AWS Systems Manager, Amazon ECS, AWS Lambda ve daha bir\u00e7ok hizmette ar\u0131za enjeksiyonu yapabilir. Bu, \u00e7e\u015fitli AWS kaynaklar\u0131 \u00fczerinde \u00e7al\u0131\u015fan uygulamalar\u0131n\u0131z\u0131n dayan\u0131kl\u0131l\u0131\u011f\u0131n\u0131 test etme esnekli\u011fi sa\u011flar.<\/p>\n<\/li>\n<li>\n        <strong>Chaos Engineering'e nereden ba\u015flamal\u0131y\u0131m?<\/strong><\/p>\n<p>K\u00fc\u00e7\u00fck ba\u015flay\u0131n! En kritik ve basit bir uygulaman\u0131z\u0131 veya mikroservisinizi se\u00e7in. Uygulaman\u0131z hakk\u0131nda bir hipotez olu\u015fturun (\u00f6rne\u011fin, \"Pod'lar \u00f6l\u00fcrse uygulama \u00e7al\u0131\u015fmaya devam eder\"). Ard\u0131ndan, AWS FIS gibi bir ara\u00e7la bu hipotezi test etmek i\u00e7in basit bir deney \u015fablonu olu\u015fturun. Deneyin sonu\u00e7lar\u0131n\u0131 g\u00f6zlemleyin ve \u00e7\u0131kar\u0131mlar yap\u0131n. Bu s\u00fcre\u00e7ten \u00f6\u011frendiklerinizi kullanarak sisteminizi iyile\u015ftirin ve kademeli olarak daha karma\u015f\u0131k deneylere ge\u00e7in. Ekibinizi e\u011fitmeyi ve k\u00fclt\u00fcrel de\u011fi\u015fimi desteklemeyi unutmay\u0131n.<\/p>\n<\/li>\n<li>\n        <strong>Duru\u015f ko\u015fulu belirlemek neden bu kadar \u00f6nemli?<\/strong><\/p>\n<p>Duru\u015f ko\u015fullar\u0131 (stop conditions), Chaos Testing deneylerinin kontrolden \u00e7\u0131kmas\u0131n\u0131 ve \u00fcretim ortam\u0131na beklenenden daha fazla zarar vermesini \u00f6nlemek i\u00e7in bir g\u00fcvenlik a\u011f\u0131 sa\u011flar. Bir deneyin, sistemin belirli bir metrikte (CPU kullan\u0131m\u0131, hata oran\u0131, gecikme vb.) \u00f6nceden belirlenen bir e\u015fi\u011fi a\u015fmas\u0131 durumunda otomatik olarak durmas\u0131n\u0131 sa\u011flar. Bu, Chaos Testing'in \"kontroll\u00fc kaos\" olmas\u0131n\u0131 ve sistemin tamam\u0131n\u0131 \u00e7\u00f6kertmeden zay\u0131f noktalar\u0131 ortaya \u00e7\u0131karmas\u0131n\u0131 garanti eder.<\/p>\n<\/li>\n<li>\n        <strong>Testleri otomatikle\u015ftirmek i\u00e7in hangi ara\u00e7lar\u0131 kullanabilirim?<\/strong><\/p>\n<p>AWS FIS, zaten bir otomasyon arac\u0131d\u0131r. Ancak, deneylerinizi daha geni\u015f bir otomasyon ak\u0131\u015f\u0131na dahil etmek i\u00e7in AWS CLI, AWS SDK'lar, AWS Lambda fonksiyonlar\u0131 ve CI\/CD ara\u00e7lar\u0131 (\u00f6rne\u011fin Jenkins, GitHub Actions, GitLab CI) gibi ara\u00e7lar\u0131 kullanabilirsiniz. Bu sayede, Chaos Testing'i s\u00fcrekli entegrasyon ve s\u00fcrekli da\u011f\u0131t\u0131m s\u00fcre\u00e7lerinizin bir par\u00e7as\u0131 haline getirebilirsiniz.<\/p>\n<\/li>\n<\/ol>\n<p><\/body><\/p>\n","protected":false},"excerpt":{"rendered":"AWS EKS k\u00fcmenizin beklenmedik ar\u0131zalara kar\u015f\u0131 ne kadar dayan\u0131kl\u0131 oldu\u011funu merak m\u0131 ediyorsunuz? AWS FIS ile Chaos Testing&hellip;","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":[1406],"tags":[],"class_list":{"0":"post-32848","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-aws","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>Chaos Testing AWS EKS ile AWS FIS: Dayan\u0131kl\u0131l\u0131\u011f\u0131 Art\u0131rma K\u0131lavuzu<\/title>\n<meta name=\"description\" content=\"AWS EKS k\u00fcmenizin beklenmedik ar\u0131zalara kar\u015f\u0131 ne kadar dayan\u0131kl\u0131 oldu\u011funu merak m\u0131 ediyorsunuz? AWS FIS ile Chaos Testing yaparak uygulamalar\u0131n\u0131z\u0131n zorlu ko\u015fullarda bile kararl\u0131l\u0131\u011f\u0131n\u0131 nas\u0131l korudu\u011funu ke\u015ffedin. Bu kapsaml\u0131 rehber, dayan\u0131kl\u0131l\u0131k m\u00fchendisli\u011finde ustala\u015fman\u0131za yard\u0131mc\u0131 olacak ve AWS Community Day Bangalore 2025&#039;teki sunumun ruhunu yans\u0131tarak, bulut yerel uygulamalar\u0131n\u0131z\u0131n sars\u0131lmaz bir kararl\u0131l\u0131kla \u00e7al\u0131\u015fmas\u0131n\u0131 sa\u011flaman\u0131n yollar\u0131n\u0131 ad\u0131m ad\u0131m \u00f6\u011fretecek. G\u00fcn\u00fcm\u00fcz\u00fcn dinamik ve karma\u015f\u0131k mikroservis mimarilerinde, sistemlerin yaln\u0131zca \u00e7al\u0131\u015f\u0131r durumda olmas\u0131 yeterli de\u011fildir; ayn\u0131 zamanda beklenmedik ar\u0131zalara kar\u015f\u0131 diren\u00e7li olmas\u0131 da hayati \u00f6nem ta\u015f\u0131maktad\u0131r. Bu makalede, bu direnci test etmek ve art\u0131rmak i\u00e7in Chaos Testing prensiplerini AWS Fault Injection Simulator (FIS) ile AWS Elastic Kubernetes Service (EKS) ortamlar\u0131nda nas\u0131l uygulayaca\u011f\u0131m\u0131z\u0131 detayl\u0131ca inceleyece\u011fiz.\" \/>\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\/chaos-testing-aws-eks-ile-aws-fis-dayanikliligi-artirma-kilavuzu\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Chaos Testing AWS EKS ile AWS FIS: Dayan\u0131kl\u0131l\u0131\u011f\u0131 Art\u0131rma K\u0131lavuzu\" \/>\n<meta property=\"og:description\" content=\"AWS EKS k\u00fcmenizin beklenmedik ar\u0131zalara kar\u015f\u0131 ne kadar dayan\u0131kl\u0131 oldu\u011funu merak m\u0131 ediyorsunuz? AWS FIS ile Chaos Testing yaparak uygulamalar\u0131n\u0131z\u0131n zorlu ko\u015fullarda bile kararl\u0131l\u0131\u011f\u0131n\u0131 nas\u0131l korudu\u011funu ke\u015ffedin. Bu kapsaml\u0131 rehber, dayan\u0131kl\u0131l\u0131k m\u00fchendisli\u011finde ustala\u015fman\u0131za yard\u0131mc\u0131 olacak ve AWS Community Day Bangalore 2025&#039;teki sunumun ruhunu yans\u0131tarak, bulut yerel uygulamalar\u0131n\u0131z\u0131n sars\u0131lmaz bir kararl\u0131l\u0131kla \u00e7al\u0131\u015fmas\u0131n\u0131 sa\u011flaman\u0131n yollar\u0131n\u0131 ad\u0131m ad\u0131m \u00f6\u011fretecek. G\u00fcn\u00fcm\u00fcz\u00fcn dinamik ve karma\u015f\u0131k mikroservis mimarilerinde, sistemlerin yaln\u0131zca \u00e7al\u0131\u015f\u0131r durumda olmas\u0131 yeterli de\u011fildir; ayn\u0131 zamanda beklenmedik ar\u0131zalara kar\u015f\u0131 diren\u00e7li olmas\u0131 da hayati \u00f6nem ta\u015f\u0131maktad\u0131r. Bu makalede, bu direnci test etmek ve art\u0131rmak i\u00e7in Chaos Testing prensiplerini AWS Fault Injection Simulator (FIS) ile AWS Elastic Kubernetes Service (EKS) ortamlar\u0131nda nas\u0131l uygulayaca\u011f\u0131m\u0131z\u0131 detayl\u0131ca inceleyece\u011fiz.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/chaos-testing-aws-eks-ile-aws-fis-dayanikliligi-artirma-kilavuzu\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2025-10-26T13:01:44+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=\"8 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/chaos-testing-aws-eks-ile-aws-fis-dayanikliligi-artirma-kilavuzu\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/chaos-testing-aws-eks-ile-aws-fis-dayanikliligi-artirma-kilavuzu\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"Chaos Testing AWS EKS ile AWS FIS: Dayan\u0131kl\u0131l\u0131\u011f\u0131 Art\u0131rma K\u0131lavuzu\",\"datePublished\":\"2025-10-26T13:01:44+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/chaos-testing-aws-eks-ile-aws-fis-dayanikliligi-artirma-kilavuzu\/\"},\"wordCount\":4806,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"articleSection\":[\"AWS\"],\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/chaos-testing-aws-eks-ile-aws-fis-dayanikliligi-artirma-kilavuzu\/#respond\"]}],\"copyrightYear\":\"2025\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/chaos-testing-aws-eks-ile-aws-fis-dayanikliligi-artirma-kilavuzu\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/chaos-testing-aws-eks-ile-aws-fis-dayanikliligi-artirma-kilavuzu\/\",\"name\":\"Chaos Testing AWS EKS ile AWS FIS: Dayan\u0131kl\u0131l\u0131\u011f\u0131 Art\u0131rma K\u0131lavuzu\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2025-10-26T13:01:44+00:00\",\"description\":\"AWS EKS k\u00fcmenizin beklenmedik ar\u0131zalara kar\u015f\u0131 ne kadar dayan\u0131kl\u0131 oldu\u011funu merak m\u0131 ediyorsunuz? AWS FIS ile Chaos Testing yaparak uygulamalar\u0131n\u0131z\u0131n zorlu ko\u015fullarda bile kararl\u0131l\u0131\u011f\u0131n\u0131 nas\u0131l korudu\u011funu ke\u015ffedin. Bu kapsaml\u0131 rehber, dayan\u0131kl\u0131l\u0131k m\u00fchendisli\u011finde ustala\u015fman\u0131za yard\u0131mc\u0131 olacak ve AWS Community Day Bangalore 2025'teki sunumun ruhunu yans\u0131tarak, bulut yerel uygulamalar\u0131n\u0131z\u0131n sars\u0131lmaz bir kararl\u0131l\u0131kla \u00e7al\u0131\u015fmas\u0131n\u0131 sa\u011flaman\u0131n yollar\u0131n\u0131 ad\u0131m ad\u0131m \u00f6\u011fretecek. G\u00fcn\u00fcm\u00fcz\u00fcn dinamik ve karma\u015f\u0131k mikroservis mimarilerinde, sistemlerin yaln\u0131zca \u00e7al\u0131\u015f\u0131r durumda olmas\u0131 yeterli de\u011fildir; ayn\u0131 zamanda beklenmedik ar\u0131zalara kar\u015f\u0131 diren\u00e7li olmas\u0131 da hayati \u00f6nem ta\u015f\u0131maktad\u0131r. Bu makalede, bu direnci test etmek ve art\u0131rmak i\u00e7in Chaos Testing prensiplerini AWS Fault Injection Simulator (FIS) ile AWS Elastic Kubernetes Service (EKS) ortamlar\u0131nda nas\u0131l uygulayaca\u011f\u0131m\u0131z\u0131 detayl\u0131ca inceleyece\u011fiz.\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/chaos-testing-aws-eks-ile-aws-fis-dayanikliligi-artirma-kilavuzu\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/chaos-testing-aws-eks-ile-aws-fis-dayanikliligi-artirma-kilavuzu\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/chaos-testing-aws-eks-ile-aws-fis-dayanikliligi-artirma-kilavuzu\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Chaos Testing AWS EKS ile AWS FIS: Dayan\u0131kl\u0131l\u0131\u011f\u0131 Art\u0131rma K\u0131lavuzu\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/\",\"name\":\"Fatihsoysal.com\",\"description\":\"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim\",\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"tr\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\",\"name\":\"Fatih Soysal\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"tr\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"contentUrl\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"width\":512,\"height\":512,\"caption\":\"Fatih Soysal\"},\"logo\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\"},\"description\":\"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Chaos Testing AWS EKS ile AWS FIS: Dayan\u0131kl\u0131l\u0131\u011f\u0131 Art\u0131rma K\u0131lavuzu","description":"AWS EKS k\u00fcmenizin beklenmedik ar\u0131zalara kar\u015f\u0131 ne kadar dayan\u0131kl\u0131 oldu\u011funu merak m\u0131 ediyorsunuz? AWS FIS ile Chaos Testing yaparak uygulamalar\u0131n\u0131z\u0131n zorlu ko\u015fullarda bile kararl\u0131l\u0131\u011f\u0131n\u0131 nas\u0131l korudu\u011funu ke\u015ffedin. Bu kapsaml\u0131 rehber, dayan\u0131kl\u0131l\u0131k m\u00fchendisli\u011finde ustala\u015fman\u0131za yard\u0131mc\u0131 olacak ve AWS Community Day Bangalore 2025'teki sunumun ruhunu yans\u0131tarak, bulut yerel uygulamalar\u0131n\u0131z\u0131n sars\u0131lmaz bir kararl\u0131l\u0131kla \u00e7al\u0131\u015fmas\u0131n\u0131 sa\u011flaman\u0131n yollar\u0131n\u0131 ad\u0131m ad\u0131m \u00f6\u011fretecek. G\u00fcn\u00fcm\u00fcz\u00fcn dinamik ve karma\u015f\u0131k mikroservis mimarilerinde, sistemlerin yaln\u0131zca \u00e7al\u0131\u015f\u0131r durumda olmas\u0131 yeterli de\u011fildir; ayn\u0131 zamanda beklenmedik ar\u0131zalara kar\u015f\u0131 diren\u00e7li olmas\u0131 da hayati \u00f6nem ta\u015f\u0131maktad\u0131r. Bu makalede, bu direnci test etmek ve art\u0131rmak i\u00e7in Chaos Testing prensiplerini AWS Fault Injection Simulator (FIS) ile AWS Elastic Kubernetes Service (EKS) ortamlar\u0131nda nas\u0131l uygulayaca\u011f\u0131m\u0131z\u0131 detayl\u0131ca inceleyece\u011fiz.","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\/chaos-testing-aws-eks-ile-aws-fis-dayanikliligi-artirma-kilavuzu\/","og_locale":"tr_TR","og_type":"article","og_title":"Chaos Testing AWS EKS ile AWS FIS: Dayan\u0131kl\u0131l\u0131\u011f\u0131 Art\u0131rma K\u0131lavuzu","og_description":"AWS EKS k\u00fcmenizin beklenmedik ar\u0131zalara kar\u015f\u0131 ne kadar dayan\u0131kl\u0131 oldu\u011funu merak m\u0131 ediyorsunuz? AWS FIS ile Chaos Testing yaparak uygulamalar\u0131n\u0131z\u0131n zorlu ko\u015fullarda bile kararl\u0131l\u0131\u011f\u0131n\u0131 nas\u0131l korudu\u011funu ke\u015ffedin. Bu kapsaml\u0131 rehber, dayan\u0131kl\u0131l\u0131k m\u00fchendisli\u011finde ustala\u015fman\u0131za yard\u0131mc\u0131 olacak ve AWS Community Day Bangalore 2025'teki sunumun ruhunu yans\u0131tarak, bulut yerel uygulamalar\u0131n\u0131z\u0131n sars\u0131lmaz bir kararl\u0131l\u0131kla \u00e7al\u0131\u015fmas\u0131n\u0131 sa\u011flaman\u0131n yollar\u0131n\u0131 ad\u0131m ad\u0131m \u00f6\u011fretecek. G\u00fcn\u00fcm\u00fcz\u00fcn dinamik ve karma\u015f\u0131k mikroservis mimarilerinde, sistemlerin yaln\u0131zca \u00e7al\u0131\u015f\u0131r durumda olmas\u0131 yeterli de\u011fildir; ayn\u0131 zamanda beklenmedik ar\u0131zalara kar\u015f\u0131 diren\u00e7li olmas\u0131 da hayati \u00f6nem ta\u015f\u0131maktad\u0131r. Bu makalede, bu direnci test etmek ve art\u0131rmak i\u00e7in Chaos Testing prensiplerini AWS Fault Injection Simulator (FIS) ile AWS Elastic Kubernetes Service (EKS) ortamlar\u0131nda nas\u0131l uygulayaca\u011f\u0131m\u0131z\u0131 detayl\u0131ca inceleyece\u011fiz.","og_url":"https:\/\/fatihsoysal.com\/blog\/chaos-testing-aws-eks-ile-aws-fis-dayanikliligi-artirma-kilavuzu\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2025-10-26T13:01:44+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"8 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/chaos-testing-aws-eks-ile-aws-fis-dayanikliligi-artirma-kilavuzu\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/chaos-testing-aws-eks-ile-aws-fis-dayanikliligi-artirma-kilavuzu\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"Chaos Testing AWS EKS ile AWS FIS: Dayan\u0131kl\u0131l\u0131\u011f\u0131 Art\u0131rma K\u0131lavuzu","datePublished":"2025-10-26T13:01:44+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/chaos-testing-aws-eks-ile-aws-fis-dayanikliligi-artirma-kilavuzu\/"},"wordCount":4806,"commentCount":0,"publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"articleSection":["AWS"],"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fatihsoysal.com\/blog\/chaos-testing-aws-eks-ile-aws-fis-dayanikliligi-artirma-kilavuzu\/#respond"]}],"copyrightYear":"2025","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/chaos-testing-aws-eks-ile-aws-fis-dayanikliligi-artirma-kilavuzu\/","url":"https:\/\/fatihsoysal.com\/blog\/chaos-testing-aws-eks-ile-aws-fis-dayanikliligi-artirma-kilavuzu\/","name":"Chaos Testing AWS EKS ile AWS FIS: Dayan\u0131kl\u0131l\u0131\u011f\u0131 Art\u0131rma K\u0131lavuzu","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2025-10-26T13:01:44+00:00","description":"AWS EKS k\u00fcmenizin beklenmedik ar\u0131zalara kar\u015f\u0131 ne kadar dayan\u0131kl\u0131 oldu\u011funu merak m\u0131 ediyorsunuz? AWS FIS ile Chaos Testing yaparak uygulamalar\u0131n\u0131z\u0131n zorlu ko\u015fullarda bile kararl\u0131l\u0131\u011f\u0131n\u0131 nas\u0131l korudu\u011funu ke\u015ffedin. Bu kapsaml\u0131 rehber, dayan\u0131kl\u0131l\u0131k m\u00fchendisli\u011finde ustala\u015fman\u0131za yard\u0131mc\u0131 olacak ve AWS Community Day Bangalore 2025'teki sunumun ruhunu yans\u0131tarak, bulut yerel uygulamalar\u0131n\u0131z\u0131n sars\u0131lmaz bir kararl\u0131l\u0131kla \u00e7al\u0131\u015fmas\u0131n\u0131 sa\u011flaman\u0131n yollar\u0131n\u0131 ad\u0131m ad\u0131m \u00f6\u011fretecek. G\u00fcn\u00fcm\u00fcz\u00fcn dinamik ve karma\u015f\u0131k mikroservis mimarilerinde, sistemlerin yaln\u0131zca \u00e7al\u0131\u015f\u0131r durumda olmas\u0131 yeterli de\u011fildir; ayn\u0131 zamanda beklenmedik ar\u0131zalara kar\u015f\u0131 diren\u00e7li olmas\u0131 da hayati \u00f6nem ta\u015f\u0131maktad\u0131r. Bu makalede, bu direnci test etmek ve art\u0131rmak i\u00e7in Chaos Testing prensiplerini AWS Fault Injection Simulator (FIS) ile AWS Elastic Kubernetes Service (EKS) ortamlar\u0131nda nas\u0131l uygulayaca\u011f\u0131m\u0131z\u0131 detayl\u0131ca inceleyece\u011fiz.","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/chaos-testing-aws-eks-ile-aws-fis-dayanikliligi-artirma-kilavuzu\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/chaos-testing-aws-eks-ile-aws-fis-dayanikliligi-artirma-kilavuzu\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/chaos-testing-aws-eks-ile-aws-fis-dayanikliligi-artirma-kilavuzu\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Chaos Testing AWS EKS ile AWS FIS: Dayan\u0131kl\u0131l\u0131\u011f\u0131 Art\u0131rma K\u0131lavuzu"}]},{"@type":"WebSite","@id":"https:\/\/fatihsoysal.com\/blog\/#website","url":"https:\/\/fatihsoysal.com\/blog\/","name":"Fatihsoysal.com","description":"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim","publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"tr"},{"@type":["Person","Organization"],"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1","name":"Fatih Soysal","image":{"@type":"ImageObject","inLanguage":"tr","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","contentUrl":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","width":512,"height":512,"caption":"Fatih Soysal"},"logo":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/"},"description":"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.","url":"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/"}]}},"yoast_meta":{"yoast_wpseo_title":"","yoast_wpseo_metadesc":"","yoast_wpseo_canonical":""},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/32848","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=32848"}],"version-history":[{"count":0,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/32848\/revisions"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=32848"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=32848"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=32848"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}