bottlerocket-os / bottlerocket

An operating system designed for hosting containers
https://bottlerocket.dev
Other
8.74k stars 516 forks source link

Azure managed image #1114

Open steve-jansen opened 4 years ago

steve-jansen commented 4 years ago

What I'd like: As a multi-cloud enterprise, I want to use the same container-friendly Linux distro in both AWS and Azure.

Context My company was an early adopter of CoreOS Container Linux, which was beloved by our teams for both AWS and Azure. There are many exciting things about Bottlerocket OS, similar to what we :heart: about CoreOS: minimal, container focused, atomic updates, systemd, and new things like Rust for 1st party components and zero trust privileged access.

Formal builds for both AWS and Azure would role model the Charter principle of being Open :smile:

Any alternatives you've considered: Flatcar Linux (which is also great!)

samuelkarp commented 4 years ago

Thanks for opening this issue! I'll echo what @jhaynes wrote on https://github.com/bottlerocket-os/bottlerocket/issues/968:

We’d love to get Bottlerocket working on Azure and are looking forward to expanding Bottlerocket's build targets. However, Azure support isn't next on our priority list. That said, we'd welcome contributions here if you have experience with Azure! We’re happy to provide guidance on what build system changes might be required.

The first few things that are currently AWS-centric are any place we call IMDS; namely pluto and early_boot_config. In the case of early_boot_config, a user could extend the program for Azure using the PlatformDataProvider trait provided in main.rs. In the case of pluto, a user could duplicate or extend it to read whatever data sources Azure makes available for Kubernetes configuration variables.

Aside from that, this would involve building a new variant. A recent example that shows some of the things that would need to be updated is here.

Other things that would need to be extended, validated or built (and this isn't a complete list):

mjudeikis commented 1 year ago

Would be great to have this!

I think contributing from outside could be done, but fact Azure nodes images are private and build based on semi-proprietary image building project https://github.com/Azure/AgentBaker/issues/3340 does not make it easier to work on this in opensource capacity. Testing is very hard if you don't carry Microsoft badge.

We could make it working on Azure/AKS but it still need to be integrated into Agentbaker some way as looks like only way to get image properly adopted by AKS is agentbaker.