DOMANDA Come montare un pool ZFS (2 hdd in mirroring) o un disco singolo in un container lxc su proxmox?

MANU_T

Utente Attivo
188
11
CPU
i7 12700F
Dissipatore
Corsair H115i Hydro Platinum
Scheda Madre
Msi b660 mortar DDR4 wifi
HDD
Samsung 980 500Gb
RAM
Ballistix 16gb (2x8gb) 3600 MHz
GPU
XFX RX 6800XT
Audio
Presonus Eris 3,5”, Sennheiser HD590
Monitor
LG 27GN850 UltraGear
PSU
SilentStorm Cool Zero 850W
Case
Cooler Master MasterCase H500P
Periferiche
Akko 3068 Silent, Logitech G502
OS
WIN 11 PRO
Salve, come da titolo sto cercando di montare un pool zfs in un container lxc su proxmox.... vi spiego meglio la situazione.
Su proxmox ho una VM dedicata a truenas ed alcuni container che devono accedere al pool zfs di truenas, in primis photoprism per la catalogazione delle foto.
Dall'host vedo solamente i 2 dischi da 1tb che sono in raid 1 (su truenas), ma non il pool. Come faccio a far visualizzare al container di photoprism il contenuto del pool o generalmente di uno dei due dischi del raid?

1687124410376.png

Ho provato seguendo questa guida ma non funziona (ho aggiunto mp0: /dev/sdd2,mp=/test nel config del container)... la vm non parte, compare questo errore generico:

1687124455771.png

Ho provato anche a montare uno dei due dischi effettuando un: mount /dev/sdd2 /mnt/disco1 ma compare il seguente errore: "mount: unknown filesystem type ‘zfs_member’.
Lanciando un "zpool import" vedo il pool ma come faccio ad aggiungerlo o meglio mapparlo anche sull'host evitando perdita di dati?

1687124679669.png

Su https://openzfs.github.io/openzfs-docs/msg/ZFS-8000-EY leggo che forzando l'import con il parametro "-f" si rischia di perdere dati.

1687124658683.png

Come diavolo si fa?
 

MANU_T

Utente Attivo
188
11
CPU
i7 12700F
Dissipatore
Corsair H115i Hydro Platinum
Scheda Madre
Msi b660 mortar DDR4 wifi
HDD
Samsung 980 500Gb
RAM
Ballistix 16gb (2x8gb) 3600 MHz
GPU
XFX RX 6800XT
Audio
Presonus Eris 3,5”, Sennheiser HD590
Monitor
LG 27GN850 UltraGear
PSU
SilentStorm Cool Zero 850W
Case
Cooler Master MasterCase H500P
Periferiche
Akko 3068 Silent, Logitech G502
OS
WIN 11 PRO
Da truenas esporti una condivisione in NFS e la monti nei container
Ehm… come si fa? Una volta creata la condivisione in NFS la posso montare nel container andando sempre a modificare il config file del container?
 

r3dl4nce

Utente Èlite
16,969
9,271
monti la condivisione NFS nel file fstab del container

 
  • Mi piace
Reazioni: MANU_T

MANU_T

Utente Attivo
188
11
CPU
i7 12700F
Dissipatore
Corsair H115i Hydro Platinum
Scheda Madre
Msi b660 mortar DDR4 wifi
HDD
Samsung 980 500Gb
RAM
Ballistix 16gb (2x8gb) 3600 MHz
GPU
XFX RX 6800XT
Audio
Presonus Eris 3,5”, Sennheiser HD590
Monitor
LG 27GN850 UltraGear
PSU
SilentStorm Cool Zero 850W
Case
Cooler Master MasterCase H500P
Periferiche
Akko 3068 Silent, Logitech G502
OS
WIN 11 PRO
monti la condivisione NFS nel file fstab del container

Okk grazie mille... mi sorge un ulteriore dubbio.... utilizzando la condivisione NFS quindi il container non ha accesso diretto al disco in quanto il collegamento viene effettuato tramite protocollo di rete (tipo samba)... giusto? Non si puó effettuare un passthrough diretto del pool senza passare da un protoccolo client-server?
Non si hanno in questo modo perdite di prestazioni?
 

r3dl4nce

Utente Èlite
16,969
9,271
Un container LXC vede direttamente il pool ZFS dell'host di virtualizzazione a livello di file system, dato che un container LXC fa girare direttametne i servizi e i programmi come parte del sistema operativo host. Se però il pool zfs è gestito diversamente, tipo in questo caso con dei dischi in passthrough a una VM truenas, un container non può accederci se non con le normali funzioni client/server, trattandosi di Linux il protocollo più efficiente è quindi NFS
 
  • Mi piace
Reazioni: MANU_T

MANU_T

Utente Attivo
188
11
CPU
i7 12700F
Dissipatore
Corsair H115i Hydro Platinum
Scheda Madre
Msi b660 mortar DDR4 wifi
HDD
Samsung 980 500Gb
RAM
Ballistix 16gb (2x8gb) 3600 MHz
GPU
XFX RX 6800XT
Audio
Presonus Eris 3,5”, Sennheiser HD590
Monitor
LG 27GN850 UltraGear
PSU
SilentStorm Cool Zero 850W
Case
Cooler Master MasterCase H500P
Periferiche
Akko 3068 Silent, Logitech G502
OS
WIN 11 PRO
Un container LXC vede direttamente il pool ZFS dell'host di virtualizzazione a livello di file system, dato che un container LXC fa girare direttametne i servizi e i programmi come parte del sistema operativo host. Se però il pool zfs è gestito diversamente, tipo in questo caso con dei dischi in passthrough a una VM truenas, un container non può accederci se non con le normali funzioni client/server, trattandosi di Linux il protocollo più efficiente è quindi NFS
chiaro, perfetto grazie
 

MANU_T

Utente Attivo
188
11
CPU
i7 12700F
Dissipatore
Corsair H115i Hydro Platinum
Scheda Madre
Msi b660 mortar DDR4 wifi
HDD
Samsung 980 500Gb
RAM
Ballistix 16gb (2x8gb) 3600 MHz
GPU
XFX RX 6800XT
Audio
Presonus Eris 3,5”, Sennheiser HD590
Monitor
LG 27GN850 UltraGear
PSU
SilentStorm Cool Zero 850W
Case
Cooler Master MasterCase H500P
Periferiche
Akko 3068 Silent, Logitech G502
OS
WIN 11 PRO
monti la condivisione NFS nel file fstab del container

Seguendo questa guida sono riuscito a montare nell'host solamente il pool senza il relativo dataset ovvero: /mnt/Archivio_FV. Ho effettuato il bind a questo mountpoint mappandolo sul percorso /mnt/archivio_fv del container di photoprism. Provando a leggere il contenuto di questa cartella peró, mi compare questo errore: 1687180387515.png
Non funzione invece il mount automatico all'avvio del sistema.
1687180734881.png

Non riesco invece a montare il dataset (/mnt/Archivio_FV/Archivio_FV) in quanto mi dice accesso negato, nonostante abbia modificato i permessi ACL da truenas impostando il fullcontrol all'utente root, impostato l'accesso non root alla condivisione NFS e tramite UDP... cosa sbaglio?
1687180780764.png
1687180806630.png
Abilitando il permesso di lettura ad @everyone riesco a montare tranquillamente il dataset.
 
Ultima modifica:

r3dl4nce

Utente Èlite
16,969
9,271
Non conosco bene truenas, quindi non saprei dirti come gestisce l'esportazione NFS, generalmente su NFS nel file /etc/exports c'è da impostare il nome della condivisione e gli ip / subnet da cui accedono i client

 
  • Mi piace
Reazioni: MANU_T

Jabosky

Utente Attivo
300
139
CPU
AMD Ryzen 9 5900X
Dissipatore
Noctua NH-D15 chromax.black
Scheda Madre
MSI MAG B550 TOMAHAWK
HDD
Samsung MZ-V8P2T0B 980 PRO SSD 2TB + WD HDD Red Plus 4TB 256MB 3,5"
RAM
Crucial Ballistix BL2K16G36C16U4RL RGB, 3600 MHz, 32GB
GPU
ASUS TUF RTX 3070 TI OC 8GB
Monitor
LG 27GP850
PSU
Seasonic PC FOCUS GX-850
Case
Fractal Design Define 7 Nero - Alluminio spazzolato / acciaio - Vetro temperato - Mid Tower
OS
Linux Mint 20.03 - Windows 10 Pro
Ho notato che spesso, chi si approccia per la prima volta a sistemi vitualizzati, cade spesso nel errato concetto... e tutto su una macchina e come leggo o uso i dati di questa vm da quella vm .
Quando si creando delle vm o container si deve pensare sempre che queste sono come se fossero sistemi indipendenti, come se fossero su macchina fisicamente a se.
Ora se io ho due server con due servizi che hanno la necessità di condividere dei dati... come farei ?? Userei la rete no...poi ci sono truschini vari...ma il concetto di base a mia opinione è questo.
Pertanto il suggerimento di r3dl4nce è corretto... però... noto che qui spesso le richieste sono a livello casalingo o di homelab e secondo me può capitare che la condivisione nfs (efficentissima a livello enterprise se abbiamo in back un server ldap) funziona perfettamente...ma in un ambiente casalingo o di piccolo ufficio con nfs possono nascere problematiche tra user e uid se non gestiti.
Ovvero non basta che l'utente pippo sia pippo su tutte le macchine in rete ma che se pippo ha la uid 1000 sul server x è plausibile che pippo abbia la uid 1000 su tutte le macchine in rete. Questa non è una critica a r3dl4nce che ha sicuramente esposto la modalità più efficente e professionale. Ma in caso di export nfs non mirate e ben configurate credo convenga prima approfondire i concetti nfs e valutare bene le opzioni di export.
 
Ultima modifica:
  • Mi piace
Reazioni: MANU_T

Entra

oppure Accedi utilizzando
Discord Ufficiale Entra ora!