Che cos'è Azure Container Linux (ACL) per Servizio Azure Kubernetes (AKS)?

In questo articolo viene fornita una panoramica di Azure Container Linux (ACL), un sistema operativo (OS) non modificabile e ottimizzato per i contenitori per Servizio Azure Kubernetes (AKS). ACL deriva dal progetto Flatcar Container Linux e si basa sul design immutabile, incentrato sui container e già collaudato di Flatcar, integrando al contempo i pacchetti di Azure Linux, la gestione degli aggiornamenti e l'integrazione con la piattaforma. Ciò consente a ACL di rimanere strettamente allineati con l'innovazione flatcar upstream, rispettando al contempo i requisiti di produzione, sicurezza e conformità di Azure. Per altre informazioni su Flatcar Container Linux, vedere la documentazione di Flatcar.

ACL è generalmente disponibile (GA) come opzione del sistema operativo in AKS a partire dalla versione 1.34. È possibile distribuire pool di nodi ACL in un nuovo cluster del servizio Azure Kubernetes o aggiungere pool di nodi ACL ai cluster esistenti.

Importante

A partire dal 10 dicembre 2026, Servizio Azure Kubernetes (AKS) non supporta più Azure Linux con OS Guard per il servizio Azure Kubernetes (anteprima). A quel punto, AKS non produce più nuove immagini dei nodi di Azure Linux con OS Guard né fornisce patch di sicurezza, e non è più possibile creare nuovi pool di nodi con Azure Linux e OS Guard. Il 10 marzo 2027, AKS rimuove tutte le immagini dei nodi esistenti di Azure Linux con OS Guard, causando il fallimento delle operazioni di ridimensionamento e ripristino (reimaging e ridistribuzione). Per evitare interruzioni, eseguire la migrazione a Azure Contenitore Linux (ACL). Per altre informazioni su questo ritiro, vedere il problema di ritiro GitHub e l'annuncio di ritiro degli aggiornamenti Azure. Per rimanere aggiornati sugli annunci e gli aggiornamenti, vedere le note sulla versione di AKS.

Vantaggi dell'utilizzo di ACL in AKS

Benefit Description
Immutabilità predefinita per una maggiore sicurezza L'immutabilità della directory /usr, imposta dal kernel, garantisce l'integrità dell'immagine del sistema operativo all'avvio e in fase di esecuzione. Questa progettazione consente di bloccare le modifiche non autorizzate prima di poter influire sul cluster e ridurre il rischio di manomissioni a livello di sistema operativo.
Superficie di attacco minima ACL fornisce solo i componenti necessari per eseguire i contenitori. Riducendo le dimensioni e la complessità del sistema operativo, L'ACL riduce al minimo il numero di pacchetti, servizi e potenziali punti di ingresso disponibili per gli utenti malintenzionati e semplifica la gestione della sicurezza.
Aggiornamenti automatici delle immagini dei nodi ACL offre aggiornamenti settimanali basati su immagini che includono le patch di sicurezza e le correzioni di bug più recenti. Questo approccio mantiene coerenti e aggiornate le versioni del sistema operativo del nodo nel cluster e consente di ridurre l'esposizione a vulnerabilità note.
Attendibilità della catena di approvvigionamento Si basa sui pacchetti firmati di Azure Linux e sui processi della supply chain, offrendo una chiara provenienza per i componenti di sistema.
Integrazione con le funzionalità di sicurezza di Azure Il supporto nativo per l'avvio attendibile e l'avvio protetto fornisce protezioni e attestazioni di avvio misurate.
Trasparenza open source Flatcar e molte delle tecnologie sottostanti (dm-verity e SELinux) sono upstream o open source e Microsoft include strumenti e contributi per supportare queste funzionalità.

Funzionalità principali di ACL

Le seguenti funzionalità chiave distinguono ACL come sistema operativo rinforzato e ottimizzato per i container per AKS:

  • Immutabilità: la directory '/usr' viene montata come volume di sola lettura protetto da dm-verity. In fase di esecuzione, il kernel convalida un hash radice firmato per rilevare e bloccare la manomissione
  • Controllo di accesso obbligatorio con SELinux: ACL include SELinux per applicare criteri di controllo di accesso obbligatori che limitano i processi che possono accedere alle risorse di sistema sensibili. Per impostazione predefinita, SELinux funziona in modalità di imposizione.
  • Avvio attendibile e avvio protetto: L'ACL richiede l'avvio attendibile con avvio protetto e vTPM, per garantire l'integrità della catena di avvio prima del caricamento del sistema operativo. Questo risultato viene ottenuto usando un'immagine del kernel unificata (UKI), che aggrega il kernel, initramfs e la riga di comando del kernel in un singolo artefatto firmato. Durante l'avvio, l'immagine unificata del kernel viene misurata e registrata in vTPM, garantendo l'integrità dalla fase iniziale.
  • Supporto dei nodi GPU NVIDIA: ACL supporta i pool di nodi con GPU NVIDIA su architetture AMD64, consentendo di eseguire su AKS carichi di lavoro di calcolo ad alte prestazioni (HPC) e AI/ML con un sistema operativo con protezione avanzata ottimizzato per i contenitori. L'ACL non supporta le architetture ARM64 per i pool di nodi abilitati per GPU.
  • Supporto dell'architettura AMD64 e ARM64: ACL è disponibile per le architetture AMD64 e ARM64 nel servizio Azure Kubernetes.
  • Sicurezza sovrana della catena di fornitura: ACL eredita da Azure Linux le pipeline di build sicure e le immagini kernel unificate (UKI) firmate.
  • Provisioning automatico dei nodi: ACL supporta il provisioning automatico dei nodi.

Funzionalità non supportate

ACL attualmente non supporta le funzionalità seguenti:

  • Canali di aggiornamento del SecurityPatchUnmanaged e .
  • Macchine virtuali di prima generazione: non è possibile usare le dimensioni delle macchine virtuali che supportano solo la generazione 1 con ACL.
  • Sandboxing dei pod.
  • Una variante senza Trusted Launch. ACL richiede Trusted Launch.

Se il cluster esistente usa una delle funzionalità non supportate, potrebbe non essere possibile aggiungere un pool di nodi ACL a tale cluster.

Roadmap delle funzionalità

Azure Linux pubblica una roadmap feature che contiene funzionalità in fase di sviluppo e disponibili per la disponibilità generale e l'anteprima pubblica.

Migrazioni e aggiornamenti del sistema operativo con ACL

AKS supporta la migrazione dei pool di nodi esistenti ad ACL tramite la migrazione sul posto dello SKU del sistema operativo o mediante la creazione di nuovi pool di nodi ACL. Per istruzioni dettagliate sulla migrazione, considerazioni e rollback, vedere Eseguire la migrazione di nodi esistenti a ACL.

ACL per la gestione delle versioni di AKS

ACL per AKS rilascia immagini settimanali dei nodi di AKS. La versione segue il formato basato sulla data di AKS (ad esempio: 202506.13.0). ACL supporta attualmente solo gli aggiornamenti completi delle immagini del nodo.

È possibile verificare le immagini dei nodi disponibili nelle note di rilascio e visualizzare nodeImageVersion per un cluster in esecuzione usando il comando az aks nodepool list. Per esempio:

az aks nodepool list --resource-group <resource-group-name> --cluster-name <aks-cluster-name> --query '[].{name: name, nodeImageVersion: nodeImageVersion}'

Output di esempio:

[
{
    "name": "nodes",
    "nodeImageVersion": "AKSAzureContainerLinux-202606.01.0"
}
]

Per iniziare a usare ACL per AKS, consulta le risorse seguenti: