Im Management großer Cloud-Infrastrukturen können selbst minimale Leistungseinbußen zu erheblichen Ressourcenverschwendungen führen. Bei Unternehmen wie Meta beispielsweise mag eine Geschwindigkeitsreduzierung einer Anwendung um 0,05 % unbedeutend erscheinen, doch bei Millionen gleichzeitig laufender Server summieren sich diese winzigen Verzögerungen zu einem Ausfall von Tausenden von Servern. Die frühzeitige Erkennung und Behebung dieser minimalen Leistungsrückgänge stellt daher für Meta eine enorme Herausforderung dar.
Um dieses Problem zu lösen, hat Meta AI FBDetect entwickelt, ein System zur Erkennung von Leistungsrückgängen in Produktionsumgebungen. Es kann selbst kleinste Rückgänge, bis hinunter zu 0,005 %, erfassen. FBDetect überwacht etwa 800.000 Zeitreihen, die verschiedene Kennzahlen wie Durchsatz, Latenz, CPU- und Speichernutzung umfassen und Hunderte von Diensten sowie Millionen von Servern betreffen. Durch innovative Technologien wie Stack-Trace-Sampling über den gesamten Servercluster hinweg kann FBDetect selbst subtile Leistungsunterschiede auf Unterprogramm-Ebene erfassen.
FBDetect konzentriert sich hauptsächlich auf die Leistungsanalyse auf Unterprogrammebene. Dadurch wird die Schwierigkeit der Erkennung von einem Rückgang auf Anwendungsebene von 0,05 % auf eine leichter erkennbare Änderung von 5 % auf Unterprogrammebene reduziert. Diese Methode reduziert Rauschen erheblich und macht das Auffinden von Veränderungen praktikabler.
Der technische Kern von FBDetect umfasst drei Hauptaspekte. Erstens reduziert es durch die Erkennung von Rückgängen auf Unterprogrammebene die Varianz der Leistungsdaten, sodass selbst minimale Rückgänge rechtzeitig erkannt werden können. Zweitens führt das System ein Stack-Trace-Sampling über den gesamten Servercluster durch, um die Leistung jedes Unterprogramms präzise zu messen – ähnlich einer Leistungsanalyse in einer großen Umgebung. Drittens führt FBDetect für jeden erkannten Rückgang eine Ursachenanalyse durch, um festzustellen, ob der Rückgang auf ein temporäres Problem, Kostenänderungen oder tatsächliche Codeänderungen zurückzuführen ist.
FBDetect wurde sieben Jahre lang in realen Produktionsumgebungen getestet und verfügt über eine hohe Störfestigkeit. Es kann effektiv falsche Rückgangssignale herausfiltern. Die Einführung dieses Systems reduziert nicht nur die Anzahl der Ereignisse, die von Entwicklern untersucht werden müssen, sondern steigert auch die Effizienz der Meta-Infrastruktur. Durch die Erkennung kleiner Rückgänge konnte FBDetect Meta jährlich die Verschwendung von etwa 4000 Servern vermeiden.
In großen Unternehmen wie Meta mit Millionen von Servern ist die Erkennung von Leistungsrückgängen besonders wichtig. FBDetect verbessert mit seinen fortschrittlichen Überwachungsfunktionen nicht nur die Erkennungsrate kleiner Rückgänge, sondern bietet Entwicklern auch wirksame Mittel zur Ursachenanalyse, um potenzielle Probleme rechtzeitig zu beheben und so den effizienten Betrieb der gesamten Infrastruktur zu fördern.
论文入口:https://tangchq74.github.io/FBDetect-SOSP24.pdf
Wichtigste Punkte:
🔍 FBDetect kann minimale Leistungsrückgänge bis zu 0,005 % erkennen und die Genauigkeit der Erkennung deutlich verbessern.
💻 Das System umfasst etwa 800.000 Zeitreihen, verschiedene Leistungsindikatoren und ermöglicht präzise Analysen in großen Umgebungen.
🚀 FBDetect wurde sieben Jahre lang in der Praxis eingesetzt und hat Meta jährlich die Vermeidung von etwa 4000 Servern ermöglicht, wodurch die Effizienz der Infrastruktur gesteigert wurde.