Se la tua organizzazione utilizza kernel personalizzati o richiede configurazioni di ambiente specifiche, i pacchetti Lustre standard potrebbero non essere compatibili.
In questi casi, Managed Lustre supporta il supporto dei moduli del kernel dinamico (DKMS). DKMS è un framework utilizzato per gestire i moduli del kernel Linux il cui codice sorgente esiste al di fuori dell'albero del kernel principale. La sua funzione principale è ricompilare e installare automaticamente questi moduli quando viene installato un nuovo kernel, garantendo la compatibilità senza intervento manuale.
Sebbene i moduli del kernel precompilati rimangano il percorso di installazione consigliato per la maggior parte degli utenti, DKMS fornisce un'alternativa per chi utilizza kernel Linux personalizzati.
Considerazioni
L'utilizzo del supporto dei moduli del kernel dinamico (DKMS) per il client Managed Lustre è destinato in modo specifico agli utenti esperti che richiedono la compatibilità con i kernel personalizzati e sono pronti a gestire autonomamente i problemi lato client. A differenza dei moduli precompilati, DKMS richiede l'installazione di una toolchain di compilazione completa e di intestazioni del kernel specifiche, il che aumenta la superficie di attacco alla sicurezza del sistema e l'ingombro su disco. Inoltre, poiché i moduli vengono compilati on demand, gli utenti devono tenere conto di tempi di avvio delle VM client notevolmente più lunghi e della possibilità di errori di compilazione durante gli aggiornamenti del kernel.
Piattaforme supportate
Managed Lustre supporta i pacchetti client DKMS per:
- Ubuntu 22.04 LTS
- Ubuntu 24.04 LTS, solo per le VM Arm.
Requisiti
Per utilizzare DKMS, il sistema deve includere:
Tutti i pacchetti del compilatore necessari per compilare un modulo del kernel. Questo valore è specifico per la distribuzione.
Le intestazioni per il kernel specifico. Per i kernel personalizzati, devi indirizzare manualmente il servizio DKMS alla posizione dell'intestazione.
DKMS non è supportato su Shielded VM.
Installare DKMS e le intestazioni
Prima di installare i pacchetti DKMS di Managed Lustre, devi installare il pacchetto dkms e le intestazioni del kernel Linux corrette per il tuo sistema.
La versione delle intestazioni del kernel deve corrispondere esattamente alla versione del kernel in esecuzione.
Per i kernel Ubuntu standard
Se utilizzi un kernel standard fornito da Ubuntu, in genere puoi installare i pacchetti necessari eseguendo:
sudo apt update
sudo apt install dkms linux-headers-$(uname -r)
Per kernel non standard o personalizzati
Se utilizzi un kernel personalizzato, è tua responsabilità ottenere e installare le intestazioni del kernel corrette.
La procedura per installare le intestazioni per un kernel personalizzato varia a seconda dell'origine. Potresti dover:
- Consultare la documentazione del fornitore del sistema operativo: il fornitore potrebbe fornire un pacchetto o un repository specifico per le intestazioni del kernel.
- Compilare dall'origine: se hai compilato tu stesso il kernel, potresti dover compilare e installare le intestazioni dall'albero di origine del kernel.
Posizioni delle intestazioni personalizzate
DKMS prevede di trovare le intestazioni del kernel nella directory /usr/src/linux-headers-$(uname -r).
Esegue il comando uname -r per ottenere la stringa della versione del kernel e costruire il percorso. Ad esempio: /usr/src/linux-headers-5.15.0-101-generic.
Se le intestazioni del kernel non sono installate nella posizione prevista, devi indirizzare manualmente il servizio DKMS a quella posizione creando un link simbolico dalla directory delle intestazioni personalizzate alla posizione in cui DKMS prevede di trovarle.
Ad esempio, se le intestazioni si trovano in /opt/custom-kernel/headers/, esegui il seguente comando:
sudo ln -s /opt/custom-kernel/headers/ /usr/src/linux-headers-$(uname -r)
È tua responsabilità assicurarti che le intestazioni del kernel corrette siano installate correttamente e accessibili a DKMS. Se non è possibile trovare le intestazioni, il pacchetto DKMS non riuscirà a compilare il modulo del kernel Lustre.
Installare i pacchetti DKMS di Managed Lustre
Per installare i pacchetti DKMS di Managed Lustre, segui questi passaggi.
Configurare l'accesso al repository
I pacchetti client DKMS sono ospitati nel progetto lustre-client-modules-dkms in Artifact Registry.
Per configurare la VM per l'installazione da Artifact Registry, segui queste istruzioni.
Ubuntu 22.04 LTS
Installa le chiavi di firma del repository Apt:
curl -fsSL https://packages.cloud.google.com/apt/doc/apt-key.gpg \ | sudo gpg --dearmor -o /usr/share/keyrings/google-cloud.gpg curl -fsSL https://us-apt.pkg.dev/doc/repo-signing-key.gpg \ | sudo gpg --dearmor -o /usr/share/keyrings/lustre-client.gpgConfigura la VM per accedere ai pacchetti di Artifact Registry:
echo 'deb [signed-by=/usr/share/keyrings/google-cloud.gpg] http://packages.cloud.google.com/apt apt-transport-artifact-registry-stable main' \ | sudo tee /etc/apt/sources.list.d/artifact-registry.listAggiorna Apt e installa il pacchetto
apt-transport-artifact-registry:sudo apt update && sudo apt install apt-transport-artifact-registryConfigura Apt per recuperare i pacchetti dal repository:
echo "deb [signed-by=/usr/share/keyrings/lustre-client.gpg] ar+https://us-apt.pkg.dev/projects/lustre-client-modules-dkms lustre-client-ubuntu-jammy main" \ | sudo tee -a /etc/apt/sources.list.d/artifact-registry.listAggiorna le origini del repository:
sudo apt updateSe il comando restituisce un errore, assicurati che la VM Compute Engine sia stata creata con l'ambito di accesso che consente l'accesso completo a tutte le API Cloud. Per maggiori dettagli, consulta Concedere l'accesso alle istanze Compute Engine.
Ulteriori informazioni su questi comandi sono disponibili nella documentazione di Artifact Registry : Configurare le VM per installare i pacchetti Debian.
Ubuntu 24.04 LTS
Installa le chiavi di firma del repository Apt:
curl -fsSL https://packages.cloud.google.com/apt/doc/apt-key.gpg \ | sudo gpg --dearmor -o /usr/share/keyrings/google-cloud.gpg curl -fsSL https://us-apt.pkg.dev/doc/repo-signing-key.gpg \ | sudo gpg --dearmor -o /usr/share/keyrings/lustre-client.gpgConfigura la VM per accedere ai pacchetti di Artifact Registry:
echo 'deb [signed-by=/usr/share/keyrings/google-cloud.gpg] http://packages.cloud.google.com/apt apt-transport-artifact-registry-stable main' \ | sudo tee /etc/apt/sources.list.d/artifact-registry.listAggiorna Apt e installa il pacchetto
apt-transport-artifact-registry:sudo apt update && sudo apt install apt-transport-artifact-registryConfigura Apt per recuperare i pacchetti dal repository:
echo "deb [signed-by=/usr/share/keyrings/lustre-client.gpg] ar+https://us-apt.pkg.dev/projects/lustre-client-modules-dkms lustre-client-ubuntu-noble main" \ | sudo tee -a /etc/apt/sources.list.d/artifact-registry.listAggiorna le origini del repository:
sudo apt updateSe il comando restituisce un errore, assicurati che la VM Compute Engine sia stata creata con l'ambito di accesso che consente l'accesso completo a tutte le API Cloud. Per maggiori dettagli, consulta Concedere l'accesso alle istanze Compute Engine.
Ulteriori informazioni su questi comandi sono disponibili nella documentazione di Artifact Registry : Configurare le VM per installare i pacchetti Debian.
Installare i pacchetti client Lustre
Segui le istruzioni per installare i pacchetti client Lustre.
Ubuntu 22.04 LTS
Esegui questi comandi:
sudo apt install lustre-client-modules-dkms/lustre-client-ubuntu-jammy
sudo apt install lustre-client-utils/lustre-client-ubuntu-jammy
Ubuntu 24.04 LTS
Esegui questi comandi:
sudo apt install lustre-client-modules-dkms/lustre-client-ubuntu-noble
sudo apt install lustre-client-utils/lustre-client-ubuntu-noble
Questo passaggio compila i pacchetti client e può richiedere un po' di tempo.
Montare e accedere all'istanza Managed Lustre
Segui le istruzioni riportate in Montare un'istanza Managed Lustre.