Come passare direttamente i dischi rigidi in Proxmox VE con 2 metodi?

Il passaggio diretto del disco consente alla macchina virtuale un accesso esclusivo a un disco fisico, offrendo diversi vantaggi, tra cui una riduzione dell'overhead di I/O e la funzionalità hardware nativa all'interno della macchina virtuale.

download-icon
Download Gratuito
per VM, OS, DB, File, NAS, ecc.
giovanni

Updated by Giovanni on 2025/10/24

Indice dei contenuti
  • Cos'è il pass-through del disco?

  • Tipi di pass-through del disco

  • Casi d'uso comuni

  • Metodo 1: Mappare un singolo disco rigido tramite pass-through mediante comando

  • Metodo 2: Aggiungi un dispositivo PCI, passaggio diretto di un controller SATA

  • Il backup della macchina virtuale Proxmox è essenziale

  • Conclusione

Proxmox VE è una piattaforma potente e open-source per la virtualizzazione che supporta sia macchine virtuali basate su KVM che container Linux. Una delle caratteristiche che rende Proxmox particolarmente flessibile per utenti avanzati è il pass-through del disco, che consente l'accesso diretto a dischi fisici all'interno di una macchina virtuale. Questa funzionalità è essenziale per determinati casi d'uso, come l'esecuzione di applicazioni intensive in termini di archiviazione, l'utilizzo nativo di ZFS o il passaggio di controller RAID hardware ai sistemi guest.

Cos'è il pass-through del disco?

Il pass-through del disco è una tecnica che consente a una macchina virtuale in Proxmox di accedere direttamente a un dispositivo di archiviazione fisico, bypassando lo stack di archiviazione dell'host. A differenza delle immagini di dischi virtuali tradizionali memorizzate sul filesystem dell'host, il pass-through del disco concede alla VM un accesso esclusivo a un disco fisico, offrendo diversi vantaggi, tra cui una riduzione dell'overhead di I/O e la possibilità di utilizzare funzionalità hardware native all'interno della VM.

Tipi di pass-through del disco

1. Pass-through dell'intero disco: L'intero disco fisico viene passato alla macchina virtuale senza alcun livello intermedio. Ciò consente alla macchina virtuale un controllo completo sul disco, utile per ZFS, configurazioni RAID o quando si eseguono applicazioni di archiviazione specializzate.

2. Passaggio diretto della partizione: invece di passare l'intero disco, puoi passare solo una partizione specifica alla macchina virtuale. Questo consente un controllo più granulare se non vuoi dedicare l'intero disco.

3. Pass-through del controller hardware: Per configurazioni che prevedono schede RAID hardware o controller specializzati, il pass-through dell'intero controller di storage alla macchina virtuale garantisce che quest'ultima possa gestire in modo nativo tutti i dischi collegati al controller.

Casi d'uso comuni

ZFS all'interno di una macchina virtuale: ZFS è un file system popolare che include funzionalità come snapshot e funzionalità simili a RAID. Passare dischi fisici alla macchina virtuale consente a ZFS di controllare direttamente i dischi, offrendo prestazioni migliori e abilitando funzionalità avanzate come i controlli di integrità dei dati.

VM collegate all'archiviazione: Per sistemi come NAS, destinazioni iSCSI o altre applicazioni intensivo sull'uso del disco, il pass-through diretto del disco garantisce che i collo di bottiglia prestazionali tipicamente causati dai livelli di virtualizzazione siano ridotti al minimo.

RAID hardware: Se il tuo server utilizza controller RAID hardware, passarli in trasparenza assicura che la tua macchina virtuale abbia pieno accesso alle configurazioni RAID senza dover dipendere dall'emulazione software.

Esistono due modi per passare attraverso i dischi rigidi in Proxmox VE:

Metodo 1: Mappare un singolo disco rigido tramite comando;

Metodo 2: Aggiungi un dispositivo PCI, passa attraverso un controller SATA.

Metodo 1: Mappare un singolo disco rigido tramite pass-through mediante comando  

Accedi all'SSH del sistema Proxmox VE oppure entra direttamente nella shell web di gestione di PVE.

1. Verifica l'ID del disco

ls -l /dev/disk/by-id/

Nota: «ata, mmc», ecc. indicano il metodo di interfaccia. I tipi comuni includono ATA, SATA, SCSI, NVME, eMMC e SASI. Le interfacce IDE e SATA sono generalmente etichettate come "ata", mentre le interfacce SCSI e SAS sono etichettate come "scsi".

2. Importa la macchina virtuale

qm set <vm_id> –<disk_type>[n] /dev/disk/by-id/<type>-$brand-$model_$serial_number

<disk_type>[n]: Il tipo di bus e il relativo numero per il disco importato. I tipi di bus possono essere IDE, SATA, VirtIO Block o SCSI, con numerazione che inizia da 0. Il valore massimo dipende dal tipo di interfaccia del bus: IDE è 3, SATA è 5, VirtIO Block è 15 e SCSI è 13.

/dev/disk/by-id/-brand-brand−model_$serial_number: Il percorso e il nome specifici dell'ID del disco.

Ad esempio, con il dato del disco „ata-ST4000VX000-2AG166_ZGY163KG“, questo disco verrà passato alla macchina virtuale con ID 102, e l'interfaccia del tipo di bus è sata2 (impostare il numero del bus in base alla macchina virtuale PVE).

qm set 102 -sata2 /dev/disk/by-id/ata-ST4000VX000-2AG166_ZGY163KG

Le informazioni sul reso verranno visualizzate:

update VM 102: -sata2 /dev/disk/by-id/ata-ST4000VX000-2AG166_ZGY163KG

Questo indica che il pass-through è stato eseguito correttamente.

Metodo 2: Aggiungi un dispositivo PCI, passaggio diretto di un controller SATA  

Quando si effettua il passaggio diretto di un controller SATA in Proxmox VE, viene passato l'intero bus SATA, il che significa che il bus SATA collegato al southbridge o al northbridge viene trasferito direttamente. Su alcune schede madri, ciò comporta che tutte le interfacce SATA vengano passate attraverso.

Nota: Se il sistema PVE è installato su un disco rigido SATA, ciò potrebbe causare l'impossibilità di avvio del sistema PVE. Pertanto, prima di passare attraverso il controller SATA, verifica la posizione di installazione del sistema PVE oppure installa direttamente il sistema su un'unità NVMe.

Prima di iniziare, assicurarsi che la funzione di pass-through hardware IOMMU sia abilitata, quindi procedere con l'aggiunta del controller SATA.

1. Conferma se il processore del tuo motherboard supporta Vt-d

Se non lo supporta, non è possibile eseguire il pass-through. Intel richiede almeno il chipset B75 per supportarlo. In altre parole, i processori Intel Core dalla 4a generazione in poi supportano questa funzione. VT-D è destinato alla virtualizzazione I/O, non a VT-X.

Molti principianti pensano erroneamente che abilitare la virtualizzazione sulla scheda madre sia sufficiente per il pass-through, ma non è così. È necessario abilitare VT-D per la virtualizzazione I/O. Sulla piattaforma AMD si chiama IOMMU, e su alcune schede madri OEM è denominato SRIOV. Si prega di prendere nota.

2. Abilita IOMMU

Modifica il file grub. Non modificarlo ciecamente. Configuralo in base al tuo ambiente.

vi /etc/default/grub

Trova questa riga:

GRUB_CMDLINE_LINUX_DEFAULT="quiet"

Se si utilizza una CPU Intel, modificarla in:

GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on iommu=pt"

Se si utilizza una CPU AMD, modificarlo in:

GRUB_CMDLINE_LINUX_DEFAULT="quiet amd_iommu=on iommu=pt"

Se è richiesta la trasmissione diretta della GPU, si consiglia di aggiungere una riga aggiuntiva:

video=vesafb:off video=efifb:off video=simplefb:off

Dopo aver aggiunto questa riga, PVE si riavvierà e si fermerà su una schermata dopo l'ingresso nel kernel.

GRUB_CMDLINE_LINUX_DEFAULT="quiet amd_iommu=on iommu=pt video=vesafb:off video=efifb:off video=simplefb:off"

Dopo la modifica, aggiornare direttamente grub:

update-grub

Nota: Se questo metodo non abilita l'IOMMU, modificare il file "/etc/kernel/cmdline" e utilizzare "proxmox-boot-tool refresh" per aggiornare le opzioni di avvio.

3. Caricare i moduli kernel necessari

echo vfio >> /etc/modules
echo vfio_iommu_type1 >> /etc/modules
echo vfio_pci >> /etc/modules
echo vfio_virqfd >> /etc/modules

Aggiornare i parametri del kernel

update-initramfs -k all -u

Riavvia l'host

reboot

4. Verifica se l'IOMMU è abilitato

Dopo il riavvio, inserisci il seguente comando nel terminale:

dmesg | grep iommu

Se viene visualizzato il seguente output, indica che l'operazione è riuscita:

[ 1.341100] pci 0000:00:00.0: Adding to iommu group 0
[ 1.341116] pci 0000:00:01.0: Adding to iommu group 1
[ 1.341126] pci 0000:00:02.0: Adding to iommu group 2
[ 1.341137] pci 0000:00:14.0: Adding to iommu group 3
[ 1.341146] pci 0000:00:17.0: Adding to iommu group 4

A questo punto, inserisci:

find /sys/kernel/iommu_groups/ -type l

Se appaiono molti gruppi pass-through, ciò indica successo. Se non appare nulla, allora l'IOMMU non è abilitato.

Selezionare il sistema PVE richiesto, fare clic su "Hardware" > "Aggiungi" > "Dispositivo PCI" > scegliere "Controller SATA" e infine fare clic su "Aggiungi" per assegnare il controller SATA al sistema corrispondente. Dopo il riavvio, le impostazioni di pass-through hardware di PVE entreranno in vigore.

Il backup della macchina virtuale Proxmox è essenziale

Vinchin Backup & Recovery è una soluzione robusta per la protezione dei dati delle macchine virtuali progettata per ambienti multi-piattaforma, con pieno supporto per piattaforme di virtualizzazione popolari come Proxmox. Le sue funzionalità principali includono backup automatizzati, tecnologie di deduplicazione e compressione, che aiutano gli utenti a risparmiare notevole spazio di archiviazione. Inoltre, supporta la migrazione dei dati tra piattaforme e funzioni avanzate come il ripristino immediato e il ripristino granulare a livello di file, aumentando significativamente velocità ed efficienza del recupero. In un ambiente Proxmox, Vinchin Backup & Recovery garantisce sicurezza e affidabilità dei dati grazie a un'efficiente crittografia e protezione dei backup, rendendolo una soluzione indispensabile per gli ambienti di macchine virtuali.

Sono necessari solo 4 passaggi per eseguire il backup delle VM Proxmox VE con Vinchin Backup & Recovery:

1. Seleziona l'oggetto del backup.

Esegue il backup delle VM Proxmox VE

2. Seleziona la destinazione del backup.

Eseguire il backup delle VM Proxmox VE

3. Configura le strategie di backup.

Backup di VM Proxmox VE

4. Rivedi e invia il lavoro.

Backup di VM Proxmox VE

Fai clic sul pulsante qui sotto per scaricare una prova gratuita di 60 giorni e provare personalmente funzionalità ancora più avanzate!

Conclusione

Il pass-through del disco Proxmox è una funzionalità preziosa in scenari in cui la macchina virtuale richiede accesso nativo al disco. Che tu stia eseguendo applicazioni intensive in termini di archiviazione, gestendo pool ZFS o configurazioni RAID hardware, l'accesso diretto ai dischi fisici può migliorare notevolmente prestazioni e funzionalità.

Condividi su:

Categories: VM Tips