Elkjøp is the largest electronics retailer in Norway, Sweden, Denmark, and Finland, with franchise subsidiaries in Iceland, Greenland, and the Faroe Islands. Having earned annual revenue of $4.6 billion U.S. in 2019, it is four times larger than its nearest competitor and the Nordic region’s leading supplier of TVs, headsets, portable devices, and other consumer electronics. It operates some 400 big-box retail stores and has around 12,000 employees.
Elkjøp is part of Dixons Carphone plc, a leading multinational consumer electrical and mobile retailer and services company, employing over 42.000 people in nine countries. Together they are the market leader in the UK & Ireland, throughout the Nordics and in Greece.
Information technology may not be central to Elkjøp’s mission, but it is essential to its business, nonetheless. In addition to its brick-and-mortar stores, which are powered by digital point-of-sale (POS) systems, Elkjøp also maintains a highly active website that drives a growing portion of its sales.
Electronics retailing also presents unique challenges compared to other market segments. In addition to selling the products themselves, transactions at Elkjøp also often involve such optional purchases as warranty insurance and delivery, which increase the amount of processing necessary to complete the sale.
These requirements, in turn, increase Elkjøp’s reliance on technology. Elkjøp must maintain a complex backend infrastructure that allows it to offer a mix of products and services across its online and in-person retail outlets, and in the various countries in which it operates.
As with many industries, retail is evolving rapidly. Patterns of sales are shifting, with a growing portion of transactions moving online. Elkjøp also faces increased competition, given Amazon’s recent yet long-anticipated entry into the Nordics retail market.
For Elkjøp, these pressures have spurred an ongoing mission of innovation and modernization. Where once the company was saddled with an antiquated backend infrastructure with a nearly 40-year legacy, it has since shifted its in-house development efforts to a model based on microservices. It has also begun increasing its reliance on public cloud services, which in Elkjøp’s case has meant Microsoft Azure.
“Two years before we started this project, I looked at the requirements for the future, and the future meant that our microservice architecture would be at the center of almost all transactions facing customers.” — Henry Hagnäs, Enterprise Cloud Architect, Elkjøp
Elkjøp’s progress has not been without difficulties, however. The first iteration of its new infrastructure was based on Azure App Service. Elkjøp Enterprise Cloud Architect Henry Hagnäs soon realized that continuing on this path would be too expensive and too complex to manage and scale over the long term. Under the new model he envisioned, microservices would power almost every customer-facing transaction.
Furthermore, as the number of microservices increased and the volume online transaction volume grew, networking became a critical concern. Elkjøp needed a networking solution that could handle the challenges of routing traffic to a vast number of public IP addresses. In addition, the solution needed to be easy enough to work with that individual development teams wouldn’t face deployment headaches when shipping new services.
To address Elkjøp’s microservice hosting needs, Hagnäs and his team opted to go all-in on Kubernetes. Specifically, they chose to migrate from Azure App Service to Azure Kubernetes Service (AKS), Microsoft’s managed version of the popular container orchestration tool. To ease this transition, Elkjøp’s development teams began migrating their existing C# microservices to .Net Core and packaging them into Linux containers for deployment to AKS.
As a key component of this transition, Hagnäs chose Traefik as the answer to Elkjøp’s networking needs. Compared to other solutions, Traefik’s straightforward setup and automated routing discovery meant Hagnäs’s team could tackle infrastructure concerns while leaving development teams to deploy their services to the AKS infrastructure with minimal configuration.
We need to make it as simple as possible for the developers, and that's why we chose tools that are well understood, stable, well-performing, and don't require too much configuration. Traefik fits all these requirements out of the box. — Henry Hagnäs, Enterprise Cloud Architect, Elkjøp
Today, Traefik fulfills two needs for Elkjøp. It functions both as an edge router to exchange traffic between Elkjøp’s systems and the external network, and as an internal ingress controller to route requests between Elkjøp’s systems.
Building its new infrastructure on Kubernetes with Traefik also gave Elkjøp the opportunity to try new ways of addressing such challenging issues as security, scalability, visibility, and automation. Here, too, Traefik offered valuable features, including automated SSL certificate management via Let’s Encrypt and support for sharing monitoring data with Instana.
The planning and effort that Hagnäs and his team have put into Elkjøp’s modernized infrastructure are already paying off. The 2020 holiday shopping season broke all sales records for Elkjøp, and its backend systems, with routing provided by Traefik, were more than up to the task.
“We're putting the business behind Traefik. Every one of our transactions will go through it, and we completely trust that they will go through without problems.” — Henry Hagnäs, Enterprise Cloud Architect, Elkjøp
Under Elkjøp’s new architecture, each transaction might touch as many as 10-15 microservices before a sale is complete, with each of these interactions facilitated by Traefik. A significant portion of transactions already follow this pattern today – Elkjøp’s Denmark subsidiary, for example, has completed its transition to the new infrastructure – and Hagnäs expects that Traefik will touch every sale by the end of 2021.
Elkjøp’s move to AKS progresses. Roughly 40% of the company’s microservices are already running on AKS, and Hagnäs expects it to use Azure for all its hosting needs by the end of 2021. He projects the resulting cost savings to be as much as 80%. More importantly, by realigning its backend systems around microservices and Kubernetes, Elkjøp is well positioned for continued growth and to take on its competitors, now and into the future.
This is a companion discussion topic for the original entry at https://traefik.io/blog/elkjop-traefik-kubernetes-microservices/