Offline trace examples
The repository ships baseline step, spike, and seasonality CSV traces for local validation and offline simulation.
Use them with mpc-validate-trace before running mpc-offline-sim to check schema and timing assumptions.
Local checks need no cluster. Offline simulation needs Python dependencies. Live experiments need Kubernetes, Helm, kubectl, and Prometheus access.
Run Go tests, Helm checks, Python unit tests, shell syntax checks, dashboard JSON validation.
make checkGenerate a synthetic trace or start from the bundled trace examples, simulate the controller, inspect outputs under ignored analysis paths.
python3 -m pip install -e analysis
mpc-generate-synthetic-trace --scenario spike --out analysis/out/spike.csv
mpc-offline-sim --trace-csv analysis/out/spike.csv --out-dir analysis/out/offline/spikeUse curated evidence roots when local raw artifacts are present.
PYTHONPATH=analysis python3 -m mpc_autoscaler_analysis.cli.summarize_costs \
--hpa-root experiments/thesis-evidence/main/hpa60-cpu-hpa-max70 \
--hybrid-root experiments/thesis-evidence/main/hybrid-sa-max70-tuned \
--out-csv /tmp/mpc-cost-summary.csv \
--out-aggregate-csv /tmp/mpc-cost-aggregate.csvDeploy toy-load with Helm, then run HPA or MPC scripts against the service.
helm upgrade --install toy-load toy-load/deploy/helm/toy-load --namespace default --create-namespace
bash loadgen/scripts/run_hpa_experiment_incluster.sh spike
bash loadgen/scripts/run_mpc_experiment_incluster.sh spikeThe repository ships baseline step, spike, and seasonality CSV traces for local validation and offline simulation.
Use them with mpc-validate-trace before running mpc-offline-sim to check schema and timing assumptions.
mpc-validate-trace \
--trace-csv analysis/mpc_autoscaler_analysis/data/traces/baseline_spike_profile_dt15.csv
mpc-offline-sim \
--trace-csv analysis/mpc_autoscaler_analysis/data/traces/baseline_spike_profile_dt15.csv \
--out-dir analysis/out/offline/spike