Overzicht van Azure Linux-architectuur

Azure Linux is een Microsoft-onderhouden Linux-distributie die is gebouwd op het Fedora-ecosysteem en geoptimaliseerd voor Azure. In dit artikel wordt uitgelegd hoe Azure Linux is gestructureerd, wat het standaard bevat en waar deze opzettelijk grenzen tekent.

Opmerking

Azure Linux 4.0 bevindt zich nu in preview en is strikt beperkt tot evaluatie- en testdoeleinden. Het is niet geschikt voor productiegebruik.

Hoe Azure Linux zich verhoudt tot Fedora

Azure Linux is afgeleid van Fedora en maakt gebruik van hetzelfde op RPM gebaseerde verpakkingsecosysteem. Je krijgt de vertrouwdheid van dnf5, Fedora-buildtools (mock, fedpkg, koji, kiwi) en moderne compiler-toolchains — allemaal gevolgd vanuit upstream Fedora. Bovendien voegt Microsoft Azure specifieke beveiliging, een aangepaste kernel en een beheerde levenscyclus toe die geschikt is voor cloudworkloads.

De kernel wordt geleverd in versie 6.18 LTS, uitgebreid met Hyper-V-gastdrivers, Azure-specifieke prestatieoptimalisatie en beveiligingsversterking, gevalideerd voor Azure-VM-SKU's.

Gelaagde architectuur

Azure Linux maakt gebruik van een gelaagd model. Elke laag bouwt voort op de laag eronder, van hardware en firmware tot uw workloads bovenaan.

Schermafbeelding van een diagram met de Azure gelaagde architectuur.

Kernellaag

De aangepaste Azure Linux-kernel bevat Hyper-V gaststuurprogramma's, beveiligingsbeveiligingspatches en prestatieoptimalisaties die zijn afgestemd op Azure infrastructuur. U kunt kiezen tussen Long-Term Support-kernels (LTS) voor stabiliteit of Hardware Enablement-kernels (HWE) voor ondersteuning van nieuwe hardware en GPU's. Zie releasefrequentie en levenscyclus voor meer informatie.

Kernlaag van het besturingssysteem

Deze laag biedt het minimale basisbestandssysteem: systemd voor servicebeheer, glibc als de C-runtime en OpenSSL voor cryptografie. Dit zijn laag 1-onderdelen, wat betekent dat ze versievergrendeling hebben voor de levensduur van een grote release en alleen beveiligingsbackports ontvangen. Hierdoor blijft ABI (Application Binary Interface) stabiel en gedrag voorspelbaar.

Laag voor gebruikersruimtepakketten

Runtime-omgevingen voor talen (Python, Go, Rust, Node.js), containertools en applicatieafhankelijkheden bevinden zich hier. Tier 1-pakketten zijn vastgezet om de stabiliteit te waarborgen. Tier 2-pakketten worden volgens een voorspelbaar ritme bijgewerkt. Zie Releasefrequentie en levenscyclus voor meer informatie.

Workloadlaag

Uw Azure services en toepassingen worden hier uitgevoerd. Azure Linux dezelfde basis van het besturingssysteem, dezelfde pakketset en hetzelfde gedrag biedt, ongeacht of u gebruikmaakt van AKS, Azure VM's of containerinstallatiekopieën.

Platformbereik

Azure Linux is ontworpen voor Azure cloudworkloads. Hoewel Azure Linux open source is, zijn Microsoft ondersteunings- en levenscyclusverplichtingen alleen van toepassing op Azure scenario's.

De volgende tabel bevat een overzicht van wat wel en niet wordt ondersteund in Azure Linux:

Area Supported Niet ondersteund
Architecturen x86-64 (v2 minimum), ARMv8 (64-bit) 32-bitarchitecturen
Omgevingen Azure VMs, AKS, containerimages ISO-images, on-premises, multicloud, IoT, edge-apparaten
Gebruikersinterface Op tekst gebaseerde console, SSH Grafische bureaubladomgevingen, GUI-installatieprogramma
Virtualisatie KVM-gasten, Hyper-V Xen
Randapparatuur Azure gekoppelde opslag, netwerken, GPU's Bluetooth, Wi‑Fi, printers, audio/video, robotica
Vertrouwd platform TPM 2.0 TPM 1.x
Taalondersteuning Ondersteuning voor wereldwijde lokalisatie beschikbaar Niet alle taalpakketten zijn opgenomen in de basisinstallatiekopieën

Elke Azure Linux-image bevat waagent en cloud-init. Deze onderdelen zijn vereist voor Azure integratie en moeten altijd aanwezig zijn.

Structuur van opslagplaats

Azure Linux verzendt pakketten in verschillende afzonderlijke opslagplaatsen. Als u weet van welke opslagplaats een pakket afkomstig is, kunt u redeneren over ondersteuning, wat er standaard beschikbaar is en waar u zich voor moet aanmelden. Zie Pakketbeheer voor dagelijkse informatie over pakketbeheer.

Standaardinstellingen voor netwerken

Azure Linux wordt geleverd met een netwerkstack die is afgestemd op Azure VM's, AKS-knooppunten en containerworkloads. De meeste workloads kunnen de standaardwaarden zonder wijzigingen gebruiken.

De volgende tabel bevat een overzicht van de standaardnetwerkonderdelen in Azure Linux en de alternatieven die beschikbaar zijn als u de standaardinstellingen voor een specifiek scenario wilt overschrijven:

Onderdeel Default Alternatief Aantekeningen
Netwerkbeheerder systemd‑networkd + cloud‑init NetworkManager (beschikbaar, niet standaard) systemd-networkd is de standaardinstelling voor Azure VM- en containerscenario's.
Firewall firewalld N/A Standaard ingeschakeld met een beleid waarbij inkomend verkeer wordt geweigerd en uitgaand verkeer wordt toegestaan.
Firewallbackend nftables iptables (verouderd, beschikbaar) nftables is de moderne vervanging voor iptables. verouderde iptables-ondersteuning is beschikbaar, maar niet standaard.
IPv6 Ingeschakeld en beveiligd N/A Strikte sysctl-beveiliging toegepast voor zowel IPv4 als IPv6.

Standaardinstellingen voor opslag

Azure standaardinstellingen voor Linux-opslag zijn afgestemd op Azure gekoppelde schijven en de Hyper-V hypervisor onder elke Azure VM. Het bestandssysteem, het opstartlaadprogramma en de klokbron worden gekozen voor voorspelbare prestaties en compatibiliteit met Azure platformfuncties zoals momentopnamen en beheerde schijven.

De volgende tabel bevat een overzicht van de standaardopslaginstellingen in Azure Linux en de alternatieven die beschikbaar zijn als u de standaardinstellingen voor een specifiek scenario wilt overschrijven:

Configuratie Default Alternatieven
Bestandssysteem ext4 xfs, btrfs
Opstarten GRUB2 bootloader N/A
Klok Hyper‑V PTP-klokbron N/A
NVMe Time-outinstelling geoptimaliseerd voor aan Azure gekoppelde opslag N/A

Beveiligingsarchitectuur

Azure Linux wordt op elke laag beveiligd, vanaf de kernel tot aan de toeleveringsketen. In de volgende secties worden de beveiligingscontroles beschreven die standaard zijn ingeschakeld. Zie Beveiliging en naleving voor meer informatie.

Verplicht toegangsbeheer

Verplichte toegangscontrole (MAC) beperkt processen tot alleen de toegang die ze daadwerkelijk nodig hebben, zelfs als ze als root worden uitgevoerd.

De preview van Azure Linux 4.0 schakelt SELinux in de afdwingingsmodus in als framework voor verplichte toegangscontrole.

Beveiligd opstarten

Beveiligd opstarten zorgt ervoor dat alleen ondertekende bootloaders en kernels worden uitgevoerd. Kernelvergrendeling beveiligt de actieve kernel en schakelt het laden van niet-vertrouwde kernelmodules tijdens runtime uit.

Opmerking

Azure Linux 4.0 is nu in preview en de bijbehorende onderdelen zijn nog niet ondertekend voor Beveiligd opstarten.

Kernel- en systeemversterking

De kernel en userspace zijn gebouwd met oplossingen waarmee aanvallen moeilijker te schrijven en gemakkelijker te bevatten zijn als ze slagen.

De volgende tabel bevat een overzicht van de kernel- en systeembeveiligingsmogelijkheden in Azure Linux:

Vermogen Description
ASLR Sterke willekeurige indeling van de adresruimte is ingeschakeld.
Stackbeveiliging Stackbeveiligingen op compilerniveau die worden toegepast op alle pakketten.
Syscall-beperkingen Standaardprofielen voor seccomp en syscall-filtering.
Minimale basisimage Verminderd aanvalsoppervlak door een minimale set pakketten.

Cryptography

Azure Linux centraliseert cryptografisch beleid, zodat algoritmen en sleutelgrootten consistent blijven in OpenSSL, GnuTLS, NSS en OpenSSH.

De volgende tabel bevat een overzicht van de cryptografie-instellingen in Azure Linux:

Configuratie Value
FIPS FIPS 140-3-certificering is verplicht.
Cryptobeleid Fedora cryptobeleid dat wordt gebruikt voor consistente algoritmeselectie.
Post-quantum ML-KEM gepland, afgestemd op de routekaart van Fedora en RHEL.

Logboekregistratie en controle

De volgende tabel bevat een overzicht van de instellingen voor logboekregistratie en controle in Azure Linux:

Configuratie Value
Auditdaemon auditd ingeschakeld.
Logboekopslag Permanente logboekopslag.