Azure Linux released at Build – where Microsoft revealed why it did not fork Fedora

Azure Linux released at Build – where Microsoft revealed why it did not fork Fedora

At its Build developer event this week, Microsoft made Azure Linux – its own distribution of the open source operating system – generally available. During a Q&A session the principal program manager lead Jim Perrin also spoke about how the company’s history with Linux – Steve Ballmer, then CEO, said in 2001 that “Linux is a cancer” – was still felt today, impacting the decision to build a new distribution from scratch rather than forking an existing one such as Fedora.

Azure Linux is the same distribution as CBL-Mariner, where CBL stands for Common Base Linux, and is still known by that name in its GitHub repository. Strictly, as explained by Perrin at a Build Q&A session, Azure Linux is “the commercially supported offering for CBL Mariner Linux.” Even the commercially supported aspect is limited, since the current primary purpose of the OS is to run as the container host for Azure Kubernetes Service (AKS). This means that Azure Linux itself runs as a VM on Hyper-V, Microsoft’s Windows hypervisor, and it is optimized for this scenario, though bare metal installs on x64 or ARM64 are also possible.

At Build, Microsoft emphasized that Azure Linux has “a very opinionated Azure focus” and intentionally includes “just the bare essentials for getting a Kubernetes cluster running”, according to Perrin. That said, other product teams may build on it for other purposes, an example being the .NET team. Some container workloads use Azure Linux but Microsoft’s official support extends only to the host.

How Azure Linux is composed

Why did Microsoft create Azure Linux? “We needed a Linux distribution internally,” Perrin said. “We wanted a consistent platform for ourselves.” Now there is “one vendor to support the full AKS stack”, he also stated.

Sean McKenna, partner program manager, added that “now we’ve got a fully Microsoft-built operating system to complement the builds of Kubernetes that we run.”

These statements show how far Microsoft has come from the days when what was meant by a full Microsoft stack was one build on Windows.

A Build attendee asked what distro Azure Linux was based on. “Azure Linux is its own distribution. We didn’t fork Fedora or anything like that. We have borrowed code from them, it’s an RPM-based distro,” said Perrin. “The reason we chose not to fork a different distro … Microsoft has kind of a history with Linux. …  I think the Balmer quote is from 2001, but a lot of the sentiment still lingers even today. Part of the reason we did not choose to start with a distribution and then fork it for our needs is we didn’t want to be seen as doing the embrace and extend thing again, we didn’t want to wake any of that up, we figured, build it from scratch, we can tailor it to our needs … we’re scratching an itch we had and offering the solution back to the community.”

Another question was how much community there is around Azure Linux. The answer is, not much yet. “We’ve had a couple of contributions from the community into the distro,” said Perrin. The issue is two-fold. One is that the distribution is narrowly focused and tailored to Microsoft’s own requirements. Another is time, and the company expressed the hope that a community would build.

Is Azure Linux comparable to Amazon Linux? This was another question from an attendee, yielding the reply that it is somewhat comparable. The reality though is that there are many differences. Amazon’s Linux is designed for customers to install on their VMs, whereas Azure Linux is not, currently. Further, Amazon Linux 2023 is somewhat related to Fedora though AWS docs state that “the Generally Available (GA) version of AL2023 isn’t directly comparable to any specific Fedora release.” Nevertheless, it “includes components from Fedora 34, 35, and 36.”

AWS has on occasion had difficulties engaging with the open source community, but appears to feel that it is ahead of Microsoft in this respect.