# Migration Performance Analysis ## Überblick Dieses Repository dokumentiert das Experiment **migration_performance_analysis**. Ziel ist die Untersuchung der Auswirkungen von vCPU-Pinning auf Migrationsspitzen in virtualisierten Umgebungen. Analyse- und Visualisierungstools bewerten Performance-Daten, um Migrationsverhalten unter Last nachvollziehbar zu machen. **Hinweis** Alle Inhalte wurden per KI generiert. Nutzung, Anpassung und Weiterentwicklung erfolgen eigenverantwortlich auf eigenes Risiko. Es wird keine Korrektheit, Sicherheit, Funktionsfähigkeit oder rechtliche Eignung zugesichert. **Link zum Artikel:** [Begleitender Blogeintrag](https://donau2space.de/tag-114-1510-leichter-schnee-ueber-passau-und-ich-lasse-migrationen-gegen-halb-gepinnt-antreten/) **Git-Repository:** [https://git.donau2space.de/Mika/migration_performance_analysis](https://git.donau2space.de/Mika/migration_performance_analysis) ## Inhalt des Repositories Das Repository besteht aus drei technischen Artefakten: ### 1. trace_analysis - **Zweck:** Analyse von Performance-Daten von Migrationen mithilfe von eBPF-Probes - **Art:** Python-Skript - **Zielplattform:** Linux Userspace - **Sprache:** Python - **API-Funktion:** - `analyze_spikes(event_log)` → Liefert `spike_analysis_report` mit Feldern *migration_type*, *timestamp*, *spike_count*. ### 2. migration_metrics - **Zweck:** Berechnung und Aufbereitung von Metriken, insbesondere P99-Spitzenwerten und Migrationsfrequenzen - **Art:** Python-Skript - **Zielplattform:** Linux Userspace - **Sprache:** Python - **API-Funktion:** - `calculate_metrics(migration_data)` → Erzeugt `metric_report` mit Feldern *p99_delta* und *migration_spike_percentage*. ### 3. data_visualization - **Zweck:** Weboberfläche zur Darstellung der Analysedaten und Metriken - **Art:** Web-UI - **Zielplattform:** Webbrowser - **Sprachen:** HTML, CSS, JavaScript - **Routen:** - `GET /migration_report` → Liefert ein *metric_report*-Objekt - **Genutzte JS-Module:** *chart.js* ## Installation & Nutzung ### Python-Komponenten 1. Voraussetzung: Python ≥ 3.8 unter Linux 2. Installation der Abhängigkeiten: ```bash pip install -r requirements.txt ``` 3. Ausführung der Skripte: ```bash python trace_analysis.py --input events.json python migration_metrics.py --input spike_analysis.json ``` ### Weboberfläche 1. Öffnen Sie `data_visualization/index.html` im Browser. 2. Die grafische Darstellung wird automatisch aus den generierten Metrikdaten erstellt. ## Typische Use-Cases - Evaluation der Effekte von CPU-Pinning bei Migrationen - Identifikation von Migrationsspitzen mit Hilfe von eBPF-Traces - Darstellung und Vergleich von Performance-Metriken über verschiedene Testläufe ## Struktur & mögliche Erweiterungen - **scripts/** enthält Python-Analysetools - **visualization/** stellt Visualisierungs-Frontend und Ressourcen - **data/** dient zur Ablage der verwendeten und erzeugten JSON-Berichte Erweiterungsmöglichkeiten: - Zusätzliche Analysefunktionen zur Korrelation mit IO- und Netzwerklatenz - Verbesserung der Visualisierung mit erweiterten Diagrammtypen - Integration einer REST-API zur Live-Datenabfrage ## Lizenz Lizenz: **MIT** Alle Inhalte wurden automatisch durch KI erstellt. Nutzung auf eigenes Risiko.