Section 2 established a storage-only baseline on local-path using repeated kubestr/fio runs. That baseline was necessary to isolate raw storage behavior before introducing database and application effects. The next step is to extend the measurement surface from block I/O into transaction-level and workload-level behavior while preserving the same evidence discipline: repeated runs, explicit metadata capture, raw logs, UTC timestamps, and structured summaries.
This phase therefore implements a reproducible benchmark harness that moves from storage-only measurement to storage-plus-database and storage-plus-application measurement. Concretely, it adds three capabilities on top of the Section 2 method: PostgreSQL benchmarking with pgbench, Uyuni workload benchmarking, and synchronized observability collection through Prometheus query windows and Grafana-compatible da