DevOps-ის ეფექტიანობის ოპტიმიზაცია ქაოსური ინჟინერიის გამოყენებით
Authors: Demchenko, Nikoloz, kuchava, giorgi
Type: Thesis
Published: 2025
Keywords: ქაოსის ინჟინერია, დევოპსი, მიკროსერვისული არქიტექტურა, Chaos Engineering, DevOps, Kubernetes

<p>თანამედროვე, ღრუბლოვან ტექნოლოგიებზე დაფუძნებული მიკროსერვისული სისტემების<br>მზარდი სირთულე მნიშვნელოვან გამოწვევებს უქმნის DevOps პრაქტიკებს,<br>განსაკუთრებით სისტემის მდგრადობისა და საიმედოობის უზრუნველყოფის კუთხით.<br>წინამდებარე სამაგისტრო ნაშრომი იკვლევს ქაოსის ინჟინერიის, როგორც პროაქტიული,<br>ექსპერიმენტული მეთოდოლოგიის, როლს DevOps პროცესების ოპტიმიზაციასა და<br>Kubernetes-ზე დაფუძნებული სისტემების მდგრადობის ამაღლებაში. კვლევის<br>ცენტრალურ ობიექტს წარმოადგენს Google Cloud-ის "Online Boutique" მიკროსერვისული<br>აპლიკაცია, რომლის მაგალითზეც განხორციელდა ქაოსის ექსპერიმენტების სერია.<br>კვლევის მეთოდოლოგია აერთიანებდა რაოდენობრივ ანალიზს და კონკრეტული<br>შემთხვევის სიღრმისეულ შესწავლას. კონტროლირებად GKE (Google Kubernetes Engine)<br>გარემოში, Chaos Mesh პლატფორმის გამოყენებით, მოხდა რესურსების და ქსელური<br>ხარვეზების სიმულაცია. ინტეგრირებული მონიტორინგის სისტემის მეშვეობით,<br>ხდებოდა წარმადობის ძირითადი ინდიკატორების უწყვეტი გაზომვა.<br>ექსპერიმენტებმა გამოავლინა არაოპტიმიზირებული სისტემის რამდენიმე კრიტიკული<br>სისუსტე, მათ შორის "ჩუმი მარცხის" ფენომენი, მეხსიერების არასაკმარისი ლიმიტებით<br>გამოწვეული კრახი და ავტომატური მასშტაბირების მექანიზმების არარსებობა.<br>გამოვლენილი პრობლემების საპასუხოდ, განხორციელდა მიზნობრივი ოპტიმიზაციები,<br>კერძოდ, რესურსების ლიმიტების კორექტირება და Horizontal Pod Autoscaler-ის (HPA)<br>დანერგვა. ვალიდაციის ფაზაში, ექსპერიმენტების გამეორებამ ოპტიმიზირებულ<br>სისტემაზე დაადასტურა გატარებული ღონისძიებების ეფექტიანობა, რაც გამოიხატა<br>სისტემის ქცევის პროგნოზირებადობის ზრდასა და კრიტიკული ხარვეზების<br>აღმოფხვრაში.<br>ნაშრომის მთავარი დასკვნაა, რომ ქაოსის ინჟინერია წარმოადგენს ფასდაუდებელ<br>ინსტრუმენტს DevOps გუნდებისთვის. ის საშუალებას იძლევა, მოხდეს სისტემის<br>მდგრადობის ემპირიული ტესტირება, ფარული სისუსტეების პროაქტიულად აღმოჩენა<br>და მონაცემებზე დაფუძნებული ოპტიმიზაციის სტრატეგიების შემუშავება, რაც,<br>საბოლოო ჯამში, ზრდის სისტემის საიმედოობას და აჩქარებს პროგრამული<br>უზრუნველყოფის მიწოდების პროცესს.</p>
<p> </p>
<p> </p>
<p>The increasing complexity of modern, cloud-native microservices systems presents significant<br>challenges for DevOps practices, particularly in ensuring system resilience and reliability. This<br>master's thesis investigates the role of Chaos Engineering, a proactive and experimental<br>methodology, in optimizing DevOps processes and enhancing the resilience of Kubernetes-based<br>systems. The central object of the study is the Google Cloud "Online Boutique" microservices<br>application, which served as a practical case for a series of chaos experiments.<br>The research methodology combined quantitative analysis with an in-depth case study. In a<br>controlled GKE (Google Kubernetes Engine) environment, resource and network failures were<br>simulated using the Chaos Mesh platform. Key performance indicators were continuously<br>measured through an integrated observability stack.<br>The experiments revealed several critical vulnerabilities in the non-optimized system, including the</p>
<p>"silent failure" phenomenon, crashes due to insufficient memory limits, and the absence of auto-<br>scaling mechanisms. In response to these findings, targeted optimizations were implemented,</p>
<p>namely the adjustment of resource limits and the introduction of the Horizontal Pod Autoscaler<br>(HPA). The validation phase, which involved repeating the experiments on the optimized system,<br>confirmed the effectiveness of these measures, demonstrated by increased predictability in system<br>behavior and the elimination of critical failures.<br>The main conclusion of the thesis is that Chaos Engineering is an invaluable tool for DevOps teams. It<br>enables the empirical testing of system resilience, the proactive discovery of hidden<br>vulnerabilities, and the development of data-driven optimization strategies. Ultimately, this<br>approach enhances system reliability and accelerates the software delivery lifecycle.</p>