İleri seviye izleme ve makine öğrenmesi ile mikroservis mimarilerinde anomali tespiti
Anomaly detection in microscervices architectures with advanced monitoring and machine learning
- Tez No: 910098
- Danışmanlar: PROF. DR. BÜNYAMİN CİYLAN
- Tez Türü: Yüksek Lisans
- Konular: Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol, Computer Engineering and Computer Science and Control
- Anahtar Kelimeler: Belirtilmemiş.
- Yıl: 2024
- Dil: Türkçe
- Üniversite: Gazi Üniversitesi
- Enstitü: Fen Bilimleri Enstitüsü
- Ana Bilim Dalı: Bilgisayar Mühendisliği Ana Bilim Dalı
- Bilim Dalı: Belirtilmemiş.
- Sayfa Sayısı: 86
Özet
Mikroservis tek başına tek sorumluluğu olan ve tek iş yapan sadece sorumlu olduğu işe ait işleri yürüten modüler yazılım projeleridir. Mikroservis mimarisini kullanan geniş ölçekli yazılımların, kolay kurulum ve ihtiyaca göre kolay ölçeklendirilme gibi birçok avantajı varken bu mimarinin yanında getirdiği birçok zorluğu da vardır. Mikroservis mimarisi, birçok küçük hizmetten oluşur ve bu hizmetler genellikle farklı sunucular üzerinde dağıtılmıştır. Mikroservisler arasındaki bağımlılıkların artmasıyla, bir hizmetteki küçük bir sorun diğer hizmetleri ve son kullanıcıyı etkileyebilir. Mikroservis mimarisi genellikle farklı teknolojilerin ve dillerin kullanımını içerir buda ekipler arasında farklı bilgi düzeylerine sahip olunmasına neden olur. Her bir mikroservis kendi günlükleme ve izleme verilerini üretir. Bu verileri birleştirmek ve bir sorunun izini sürmek yoğun bir çaba gerektirir. Tüm bu nedenlerden ötürü mikroservis mimarisi kullanan yazılımlarda sorun tespiti ve bakım yapmak geleneksel mimarili yazılımlara göre oldukça zordur. Bu çalışmada, bu zorlukların üstesinden gelmek amacıyla konteyner orkestrasyon yazılımı olan Kubernetes üzerinde çalıştırılan mikroservisler için bir konteyner ağ arayüzü çözümü olan Cilium'un sağladığı çekirdek seviyesinde izleme yeteneği kullanılmıştır. Üretilen trafik verileri Opentelemetry adlı veri standartlaştırma ve yüksek performanslı veri toplama yazılımı aracılığıyla taşınıp anlamlandırılmıştır. Bu verinin analiz edilebilmesi için Jaeger adlı izleme verilerini görselleştiren ve anlamlı hale getiren yazılıma gönderilip yüksek izlenebilirlik modeli sunulmuştur. Çekirdek seviyesinde izleme yeteneğiyle elde edilen veriler kullanılarak oluşturulan HTTP metrik veri seti, anormal ve normal veriler etiketlenerek zaman serisi biçiminde düzenlenmiştir. Bu veriler üzerinde makine öğrenmesi ve derin öğrenme yöntemleriyle yapılan analizler sonucunda Hoeffding Ağacı algoritmasıyla %99,9235 doğruluk oranı elde edilmiştir. Bu doğruluk oranı, literatürde Genişletilmiş Berkeley Paket Filtresi (Extended Berkeley Packet Filter) (eBPF) teknolojisi kullanılarak mikroservislerde anomali tespiti üzerine yapılan çalışmalar arasında en yüksek seviyeye ulaşmıştır. Ayrıca bu çalışma, eBPF teknolojisini kullanan bir konteyner ağ arayüzü teknolojisinin izlenebilirlik sistemine entegre edilmesine dair ilk örnek olma niteliğini taşımaktadır.
Özet (Çeviri)
A microservice is a modular software project that has a single responsibility and it performs only one job and only carries out the work for which it is responsible. While large it scale software using microservice architecture has many advantages such as easy installation and easy scaling according to needs, this architecture also brings many challenges. A microservice architecture consists of many small services, often distributed on different servers. With increasing dependencies between microservices, a small problem in one service can affect other services and the end user. Microservice architecture often involves the use of different technologies and languages, resulting in different levels of knowledge and experience across teams. Microservices often run on cloud-based infrastructures and these environments can be constantly changing. Each microservice generates its own logging and monitoring data. Combining this data and tracing a problem requires intensive effort. For all these reasons, problem detection and maintenance in software using microservice architecture is much more difficult than in software with traditional architecture. To overcome these challenges, this paper utilizes the kernel-level monitoring capability provided by Cilium, a container network interface solution for microservices running on Kubernetes, a container orchestration software. The traffic data generated was migrated and interpreted through Opentelemetry, a data standardization and high performance data collection software. In order to analyze this data, it was sent to Jaeger, a software that visualizes and makes sense of monitoring data, and a high traceability model was presented. The HTTP metric dataset created using the data obtained with kernel-level monitoring capability was organized as a time series by labeling abnormal and normal data. As a result of the analysis performed on this data with machine learning and deep learning methods, an accuracy rate of 99.9235% was obtained with the Hoeffding Tree algorithm. This accuracy rate is the highest among the studies on anomaly detection in microservices using Extended Berkeley Packet Filter (eBPF) technology in the literature. In addition, this study is the first example of integrating a container network interface technology using eBPF technology into a traceability system.
Benzer Tezler
- Identification of tea plantation areas using Google cloud based random forest and deep learning
Google bulut servise dayalı rastgele orman ve derin öğrenme ile çay tarım alanlarının belirlenmesi
BERKAY ÖZEN
Yüksek Lisans
İngilizce
2020
Jeodezi ve Fotogrametriİstanbul Teknik ÜniversitesiGeomatik Mühendisliği Ana Bilim Dalı
DOÇ. DR. ESRA ERTEN
- Müzik verilerinin makine öğrenmesi yöntemleri ile duygu ve içerik analizi yapılması
Emotion and content analysis of music data using machine learning methods
BUĞRA KAĞAN KAYHAN
Yüksek Lisans
Türkçe
2024
Bilim ve TeknolojiOSTİM TEKNİK ÜNİVERSİTESİYazılım Mühendisliği Ana Bilim Dalı
DR. ÖĞR. ÜYESİ MURAT ŞİMŞEK
- Detection of cancerous brain cells with machine learning
Makine öğrenimi ile kanserli beyin hücrelerinin tespiti
UYGAR CANKAT
Yüksek Lisans
İngilizce
2024
Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolAkdeniz ÜniversitesiBilgisayar Mühendisliği Ana Bilim Dalı
DR. ÖĞR. ÜYESİ TANER DANIŞMAN
- Brain-inspired cortical-coding algorithm for multimedia processing
Multimedya işlemek için beyinden esinlenilmiş kortikal kodlama algoritması
AHMET EMİN ÜNAL
Yüksek Lisans
İngilizce
2024
Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrolİstanbul Teknik ÜniversitesiBilgisayar Mühendisliği Ana Bilim Dalı
PROF. DR. BURAK BERK ÜSTÜNDAĞ
- Makine öğrenme yöntemlerini kullanarak çok değişkenli zaman serisi analizi ve tahmin
Multivariate time series analysis and forecasting using machine learning methods
LUBNA ALANIS
Yüksek Lisans
Türkçe
2024
Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolMersin ÜniversitesiBilgisayar Mühendisliği Ana Bilim Dalı
PROF. DR. HAMZA EROL