banner
Casa / Notizia / Mani
Notizia

Mani

Nov 13, 2023Nov 13, 2023

Di Simon Bisson, editorialista, InfoWorld |

La distribuzione CBL-Mariner Linux di Microsoft sta diventando sempre più importante per Azure, sia nel cloud che in locale. Oltre a ospitare le funzionalità GUI di WSL 2 in Windows 11, è l'host del contenitore nel servizio Azure Kubernetes ed è disponibile come immagine del contenitore di base nel registro dei contenitori di Microsoft, inoltre supporta contenitori senza distribuzione in Azure. Vale quindi la pena dedicare del tempo a CBL-Mariner, apprendendone le caratteristiche e le capacità e vedendo come può influenzare il tuo codice.

Lavorare con CBL-Mariner è molto più semplice ora con il rilascio della versione 2.0. Le prime versioni dovevano essere create da zero, il che richiedeva una toolchain basata su Go in esecuzione su Linux. Ora puoi semplicemente scaricare un ISO e installarlo nel tuo strumento server virtuale preferito. Dato che utilizzavo Windows, ho utilizzato Hyper-V per ospitare la mia installazione. Se preferisci Azure come host, puoi configurare la tua macchina virtuale o utilizzare un'installazione preconfigurata dalla libreria VM di Azure. Un approccio alternativo consiste nell'utilizzare Docker per scaricare ed eseguire un'immagine di base direttamente dal Container Registry di Microsoft.

CBL-Mariner è un Linux decisamente moderno, progettato per funzionare con i sistemi UEFI (Unified Extensible Firmware Interface) in modo da poter utilizzare un disco virtuale Hyper-V Gen2 per ottenere il massimo dalla tua installazione. Esiste un possibile errore: è necessario assicurarsi che l'ambiente UEFI Hyper-V utilizzi il certificato corretto; in caso contrario, l'ISO non verrà avviato. Nella sezione Sicurezza delle impostazioni Hyper-V per la tua macchina virtuale, assicurati di utilizzare l'autorità di certificazione Microsoft UEFI per l'avvio sicuro, non il certificato Windows predefinito.

Al primo avvio ti verrà offerta la possibilità di scegliere tra un programma di installazione basato su testo o grafico. L'opzione grafica ti consente di scegliere un'installazione completa o un'installazione principale. Ho scelto l'installazione completa per vedere quanto spazio ha utilizzato e quali servizi ha installato.

Una volta scelta l'installazione, seleziona il disco che utilizzerà e se sarà crittografato o meno. La crittografia è utile in un ambiente multi-tenant o dove non sai chi ha accesso ai dischi di sistema. Il programma di installazione formatta quindi l'unità scelta e installa CBL-Mariner.

Il programma di installazione grafico offre la possibilità di scegliere tra un'installazione completa o principale.

Sul mio sistema di test, un'installazione completa ha richiesto 85 secondi e ha utilizzato 2,2 GB di spazio su disco. Un'installazione core di CBL-Mariner utilizzando il programma di installazione testuale ha richiesto ancora meno tempo, solo 21 secondi, e richiedeva solo 297 MB di spazio.

L'installazione completa di CBL-Mariner ha richiesto meno di due minuti.

Dopo l'installazione, un altro avvio ti porta a una richiesta di accesso. Come Windows Server Core, non esiste un desktop. Ciò non dovrebbe sorprendere. CBL-Mariner è concepito per essere un sistema headless in esecuzione su server cloud, che ospita applicazioni native del cloud dotate di interfacce utente Web. Un desktop in modalità utente aggiunge solo rischi per la sicurezza, rendendo il sistema più complesso. Il grande vantaggio che ottieni con una distribuzione leggera, solo console come quella di Microsoft è la semplicità. Se hai voglia di sperimentare, c'è una versione X11 nel repository dei pacchetti CBL-Mariner, molto probabilmente come parte del suo ruolo nel fornire supporto grafico per WSL 2.

Una piccola installazione come questa è importante quando si lavora con i contenitori. Ciò significa che l'immagine di base verrà caricata rapidamente, garantendo una rapida distribuzione dei contenitori man mano che le applicazioni scalano in Kubernetes o in ambienti di orchestrazione leggeri come le istanze di contenitore di Azure, utilizzando il pacchetto Moby-containerd predefinito. È qui che entra in gioco la versione principale; è abbastanza piccolo da poter essere scaricato in modo estremamente veloce sulla rete interna di Azure o da un registro contenitori locale a un sistema Azure Stack HCI. Immagini di piccole dimensioni consentiranno una densità ancora maggiore su sistemi come questo, una funzionalità utile quando si esegue hardware con risorse limitate sull'edge.