Adaptive Vertical Scaling with Granular Degradation Prediction & Contextualized Multi-Armed Bandits

Onderzoeksvraag en methodologie

De centrale onderzoeksvraag luidt: “Hoe kunnen we over-allocatie van compute resources in cloud-native orchestration platforms minimaliseren zonder performance te degraderen?” Deze vraag is bijzonder relevant, aangezien meer dan 65% van de containers die met Kubernetes worden gedeployed minder dan de helft van hun toegewezen CPU- en memory-resources gebruikt. Het onderzoek hanteert een kwantitatieve methodologie en analyseert metrics zoals CPU-utilization, memory-utilization, disk I/O, network I/O, CPU throttling, out-of-memory errors en end-to-end latency. Daarbij wordt expliciet rekening gehouden met meerdere dimensies van resource contention, verder dan alleen CPU en memory.

Onderzoeksopzet en technieken

De studie introduceert een tweefasig voorspellend vertical-scaling mechanisme dat kernel-level telemetry combineert met online learning-algoritmen. In de eerste fase worden holistische metrics verzameld — variërend van kernel-level run-queue latency en block I/O stalls tot container-level CPU- en memorygebruik — en ingevoerd in een gekalibreerde Random Forest-classifier. Deze classifier genereert een performance-degradation likelihood score. In de tweede fase gebruikt een contextueel multi-armed bandit-algoritme deze degradatieschatting, samen met actuele utilization-metrics, om over opeenvolgende iteraties te leren hoe CPU- en memory-allocaties moeten worden aangepast. Hierbij wordt een balans gezocht tussen resource-besparing en performance-risico.

Het framework is geïmplementeerd op Kubernetes en geëvalueerd ten opzichte van industriestandaarden, waaronder de Vertical Pod Autoscaler en SHOWAR.

Resultaten: resource-besparing versus performance- en stabiliteitsafwegingen

De resultaten schetsen een genuanceerd beeld van optimalisatie-afwegingen. Het voorgestelde mechanisme elimineerde alle out-of-memory errors in beide geteste benchmarkapplicaties (Google Cloud Online Boutique en Train Ticket), terwijl bestaande state-of-the-art oplossingen meerdere OOM-failures vertoonden. Daarnaast werd tot 3x minder CPU throttling gerealiseerd ten opzichte van deze oplossingen, terwijl een vergelijkbaar niveau van CPU-resource-allocatie behouden bleef.

Deze winst gaat echter gepaard met trade-offs. De aanpak laat een hogere end-to-end latency zien dan eenvoudigere bestaande oplossingen, waarschijnlijk als gevolg van de overhead die ontstaat door frequente resource-aanpassingen en kernel-level instrumentatie.

Implicaties en toekomstig onderzoek

Het onderzoek benadrukt de nauwe samenhang tussen resource-efficiëntie en applicatiestabiliteit in containerized omgevingen. Hoewel het voorgestelde mechanisme uitblinkt in het voorkomen van performance-degradatie dankzij zijn voorspellende capaciteiten, brengt het aanzienlijke overhead met zich mee in termen van CPU- en memorygebruik voor monitoring- en besluitvormingscomponenten. De bevindingen laten zien dat geen enkele autoscaling-configuratie universeel optimaal is. Operators moeten bewust kiezen waar hun systemen zich bevinden op de curve tussen agressieve resource-optimalisatie en conservatieve performancebescherming.

Toekomstig onderzoek kan zich richten op het reduceren van de overhead van kernel-level instrumentatie, het optimaliseren van de granulariteit van schaalacties en het integreren van deze aanpak met horizontal autoscaling om tot meer holistische resource management-strategieën te komen.

Download