EKS Cluster Setup for Enterprise Application
Complete Amazon EKS cluster setup with advanced networking, security, and monitoring for a large-scale enterprise application serving millions of users.
Read itFour months building the ingestion and search layer for a Magento 2 estate: Kinesis Firehose buffering, Lambda cleaning records in flight, OpenSearch with rotating indices and S3 lifecycle rules behind it.
A Magento 2 estate was producing more event and log data than its search layer could take. Queries that used to return instantly were timing out, and the ingestion path dropped records whenever a sale doubled traffic. The requirement was blunt: take everything, lose nothing, keep search under a second.
Applications wrote to the search cluster directly. That works until traffic spikes, at which point the cluster applies back-pressure, the application times out, and the record is gone. There was no buffer between producer and consumer, so the fastest producer set the pace for everyone.
The parallel S3 write is what makes "lose nothing" true. If OpenSearch rejects a batch, the raw records are still in S3 and can be replayed. Without it, a rejected batch is a lost batch.
The shard fix alone accounted for most of the query improvement. It usually does.
Batches land in S3 gzipped and partitioned by date. A lifecycle policy moves partitions past the hot window to infrequent access and then to Glacier tiers. The data stays queryable through Athena, which covers the occasional historical question without keeping years of records on search-cluster storage.
Mapping conflicts. Years of dynamic mapping had produced fields typed differently in different indices, and reindexing that history without a search outage took longer than building the pipeline did.
Cluster sizing review each quarter, ingestion monitoring, and the alerting on Firehose delivery failures.
Confidential, e-commerce
4 months
3 engineers
Data
Because traffic spikes. Firehose absorbs the burst, batches and compresses, and hands OpenSearch a rate it can index. A direct write path drops records the first time a sale doubles the traffic.
Rotate indices on a schedule so a query touches the period it needs rather than the whole history, size shards against the actual document count instead of a default, and push anything past the retention window to S3.
Gzip on the archived batches and an S3 lifecycle policy moving old partitions to Glacier tiers. The data is still there and still queryable through Athena; it just stopped being billed at hot-storage rates.
For a new workload of this shape, it is worth pricing. On this one the estate already had provisioned domains with reserved capacity, so moving would have cost more than it saved for the term.
Complete Amazon EKS cluster setup with advanced networking, security, and monitoring for a large-scale enterprise application serving millions of users.
Read itNine months moving core policy and transaction services off on-premises virtualisation into a multi-account AWS Organization, with Transit Gateway carrying traffic between 30+ VPCs and the remaining datacentre.
Read itThirty minutes with an engineer, no slide deck. We will tell you what we would change first and what it would cost to have us do it.