Run the Confluent Cloud Passthrough Benchmark
This page reproduces the Confluent Cloud Passthrough Benchmark with the Aklivity fork of the OpenMessaging Benchmark (OMB) on AWS. The run sends the same workload to Confluent Cloud directly and then through Zilla Plus.
Provision the Environment
Create a dedicated 2 CKU Confluent Cloud cluster, with an API key and secret and a VPC peering connection in the AWS region you test from.
Clone and build the OMB fork:
git clone https://github.com/aklivity/openmessaging-benchmark.git
cd openmessaging-benchmark
mvn clean install -Dlicense.skip=trueFollow the prerequisites and Terraform steps in the deployment README with the 2cku setup. Before you run Ansible, copy ccloud.properties.tpl to ccloud.properties and zilla-ccloud.properties.tpl to zilla-ccloud.properties, and fill in your Confluent Cloud bootstrap server and credentials in both.
Run the Workloads
From the OMB root directory, load your SSH key and generate the workloads:
eval $(ssh-agent)
ssh-add ~/.ssh/omb
./confluent-bin/create-blog-workloads.shThe generated workloads use a 30-minute warm-up and a 60-minute measurement. To match the published run, set these values in workloads/confluent-blog-workloads-2cku-1p-1c-2Kb-45topic-200part-100MBps.yaml:
warmupDurationMinutes: 10
testDurationMinutes: 20Run the workload against Confluent Cloud directly:
./confluent-bin/run-workloads.sh cc workloads/confluent-blog-workloads-2cku-1p-1c-2Kb-45topic-200part-100MBps.yamlRun the same workload through Zilla Plus:
./confluent-bin/run-workloads.sh zpcc workloads/confluent-blog-workloads-2cku-1p-1c-2Kb-45topic-200part-100MBps.yamlChart the Results
When a run completes, OMB writes output.txt to the results/ directory. Generate publish and end-to-end latency charts from it:
python3 ./bin/create_charts.py results/<your-result-folder>/output.txtTear Down
From the deployment directory, destroy the AWS resources:
cd driver-kafka/deploy/aklivity-deployment
terraform destroy
