Measures Sentinel CPU and memory usage over time using kubectl top.
- Python 3
kubectlconfigured with access to thehyperfleetnamespace- Sentinel deployed in the
hyperfleetnamespace
Samples kubectl top every 60 seconds and writes results to a timestamped CSV in results/.
| Variable | Default | Description |
|---|---|---|
CLUSTER_COUNT |
100 |
Cluster count (used in the output filename) |
DURATION_MIN |
5 |
How long to record, in minutes |
CLUSTER_COUNT=1000 DURATION_MIN=10 sh ./test/profiling/profile.shOutput: results/profile-<cluster_count>-clusters-<timestamp>.csv
TIME,POD,CPU,MEMORY
11:42:49,hyperfleet-sentinel-clusters-...-vmz62,54m,12Mi
11:43:49,hyperfleet-sentinel-clusters-...-vmz62,1m,12Mi
Aggregates all CSVs in results/ into a single summary with min/max/avg CPU and memory per run.
python3 ./test/profiling/analyze.pyOutput: results/summary.csv
cluster_count,timestamp,samples,cpu_low_m,cpu_high_m,cpu_avg_m,mem_low_mi,mem_high_mi,mem_avg_mi
100,2026-03-25 11:46:06,5,36,54,41,11,12,12
1000,2026-03-25 11:59:14,5,74,88,81,26,29,27
5000,2026-03-25 12:21:07,5,71,154,98,85,163,128