AUDI, a subsidiary of the Volkswagen Group, manufactures premium automobiles for more than 100 markets worldwide. Using its car configurator, dealers can customize and place orders for their customers. Customers also use the tool to shop and compare vehicles on AUDI’s website. The car configurator is the main entry point for customers and is a highly business-critical application.
AUDI’s car-configurator backend ran on premises as a monolithic application. But AUDI wanted to make it more scalable and resource efficient to better handle large traffic spikes without overprovisioning resources and to release software updates to individual markets. So, it needed great efficiency, high availability, and seamless scalability. The company was overprovisioned in the on-premises environment and needed to keep additional servers on standby because it would take days or weeks of internal processes to set up completely new environments.
In 2018, AUDI tested its tool in the cloud as a prototype in the North American market. After verifying the benefits of the cloud through the prototype, AUDI migrated its production application to Amazon Elastic Compute Cloud (Amazon EC2), which provides secure and resizable compute capacity for virtually any workload. The company began deploying its infrastructure using Terraform, an infrastructure automation tool, and AWS CloudFormation, which speeds up cloud provisioning with infrastructure as code. In the cloud, AUDI no longer has to manage equipment and data centers; instead, it can provision resources as needed. The company also addressed the latency issues that its overseas customers experienced by deploying workloads close to these customers using AWS Regions—physical locations around the world where AWS clusters data centers.
On AWS, development speed and stability have increased, along with developer productivity. “We’re now doing everything with infrastructure as code,” says Florian Königer, PO and system architect at AUDI. The complete environment is built using Terraform, and AWS CloudFormation for some components. AUDI is also simplifying maintenance and empowering developers with more options to set permissions at a granular level and avoid unnecessary overhead. And by applying blue/green deployments, AUDI can stabilize its environment because it can cover resource spikes in the cloud.
To increase agility, deployment speed, and scalability for its application, AUDI migrated to a containerized architecture. This also made it simple to release updates to individual markets. AUDI chose to split its monolithic application into microservices by deploying containers using Amazon Elastic Kubernetes Service (Amazon EKS)— an open-source system for managing containers—and its Cluster Autoscaler feature. The company wanted to further optimize its operational management and increase flexibility while taking advantage of the various Amazon EC2 purchasing options and multiarchitecture solution. So, it decided to migrate to Karpenter, an open-source, high-performance Kubernetes cluster automatic scaler, which was originally built and contributed to the Cloud Native Computing Foundation by AWS.