VeUP
← All case studies
Amazon MSK · Kafka/MSK modernization
Bronto logo

BrontoBytes runs 4-5 TB/day per customer on AWS Lambda + Kinesis Firehose

Well-Architected ReviewAdvisoryHigh-risk-issue remediation roadmapResilience-gap assessment (RTO/RPO)Blast-radius & tenancy isolation reviewCost-optimization deep diveStreaming ingest & data-lake designServerless analytics on S3Workload placement & runtime selectionCommitment & RI optimizationRightsizing & instance-family modernizationUnit-cost optimizationMulti-tenant isolationFoundational Technical Review readinessMarketplace listing launchManaged billing & resellStanding cost-optimization mechanism
4–5 TB
per day, per customer, in production
30–40%
per-search cost-reduction target, latency-guarded
Managed
ingestion modernized onto Kinesis Firehose
Amazon MSKAmazon Kinesis Data FirehoseAmazon S3AWS Lambda

Real-time log analytics at ~4–5 TB/day per customer needs an ingestion plane that absorbs whatever tenants emit. In BrontoBytes’s architecture, a managed-Kafka path — Apache Kafka on Amazon MSK, alongside Kinesis Data Firehose — carries the streaming log flow into the Amazon S3 store that hundreds of Lambda burst-search functions query. VeUP’s Well-Architected engagement modernized that path, resolving the MSK IAM-authentication posture and hardening flow control for multi-tenant burst behavior.

The challenge

Kafka semantics matter to a log platform — ordered, replayable, producer-friendly ingestion is what customers’ shippers and agents expect to write to. But Kafka operated casually at terabyte scale becomes its own incident source: authentication between producers, brokers, and consumers must be right (the platform’s MSK IAM authentication had open questions that needed resolution with AWS Support), and without a deliberate flow-control posture, one tenant’s log storm becomes every tenant’s latency. The review had to leave the Kafka lane both trustworthy and boring — secure by configuration, predictable under burst, and cheap enough to carry multi-TB/day indefinitely.

The solution

VeUP’s modernization treated the managed-Kafka path as production infrastructure to harden, not replumb. The MSK IAM-authentication posture was worked through to resolution with AWS Support, landing the cluster on IAM-based auth — access to topics governed by the same identity plane as the rest of the AWS estate, with no parallel credential system to operate. Flow control was engineered end to end: producer and broker behavior under tenant bursts examined against the platform’s real traffic shapes, so back-pressure degrades a noisy tenant’s lane instead of the shared plane, with the parallel Firehose path’s buffering rigor applied consistently across both ingestion lanes. Downstream, the S3 log store and the GraalVM-Lambda burst-search tier consume from the hardened plane unchanged, and the engagement’s FinOps program — targeting 30–40% off per-search compute cost without sacrificing P95 latency — prices the whole flow, Kafka included, as one measured system.

Production outcomes

KPIResult
Streaming scaleManaged-Kafka ingestion carrying the platform’s streaming log flow at ~4–5 TB/day per customer at scale into the S3 store — Kafka semantics preserved for producers, broker operations owned by MSK.
Authentication resolvedMSK IAM authentication posture worked to resolution — topic access governed by the estate’s IAM identity plane, eliminating a parallel credential surface on the ingest path.
Burst behaviorFlow-control posture hardened for multi-tenant reality: tenant log storms contained to their lane, with the platform’s P95 search latency protected as an explicit constraint of the FinOps program.
Lessons & continuationManaged Kafka still demands deliberate engineering at the edges — authentication and flow control are where MSK estates succeed or melt; solving them once, with AWS Support in the loop, converts the Kafka lane from a risk register entry to a utility.
AWS services in production

Amazon MSK (managed Apache Kafka, IAM auth) · Amazon Kinesis Data Firehose · Amazon S3 (log store) · AWS Lambda (GraalVM burst search) · Amazon CloudWatch