Wyzwanie #
Chciałem przeprowadzić świeżą instalację TrueNAS SCALE i przenieść dyski z wcześniejszej instalacji TrueNAS CORE. Ponieważ stara instalacja TrueNAS CORE (działająca na VM 100) zarządzała dyskami samodzielnie — zamiast Proxmoxa — musiałem najpierw odłączyć te dyski od VM 100, a następnie podłączyć je do nowej VM (ID 103), która będzie działać na TrueNAS SCALE. Poniżej przedstawiam kroki, które podjąłem, aby to osiągnąć.
WAŻNE: Najważniejszym punktem jest wykonanie kopii zapasowej kluczy szyfrujących z poprzedniej instalacji TrueNAS CORE przed odłączeniem dysków, aby móc pomyślnie zaimportować pulę na nowym środowisku TrueNAS SCALE.
Przegląd Rozwiązania #
Typy dysków w Proxmox #
- Dyski zarządzane przez Proxmox: Pojawiają się w konfiguracji VM jako
local-zfs:vm-<ID>-disk-<X>
lublocal-lvm:vm-<ID>-disk-<X>
. Można je przenosić za pomocą wbudowanego polecenia Proxmoxqm move-disk
. - Dyski w trybie Pass-Through/Surowe: Pojawiają się jako
/dev/disk/by-id/ata-...
lub/dev/sdX
. Nie są zarządzane przez magazyn Proxmox. Trzeba je ręcznie odłączyć od starej VM i podłączyć do nowej VM.
Kroki Przenoszenia dysków #
- Wyłącz źródłową VM (VM 100).
- Odłącz dyski zarządzane przez Proxmox za pomocą
qm move-disk
lub dyski w trybie pass-through, usuwając je z konfiguracji VM (qm set 100 -delete scsiX
). - Podłącz te dyski do docelowej VM (VM 103) za pomocą
qm set 103 -scsiX ...
. - Potwierdź konfigurację VM (polecenie
qm config 103
), aby upewnić się, że dyski są rozpoznane. - Uruchom nową VM (VM 103) i przejdź do konfiguracji na poziomie systemu operacyjnego (np. import puli ZFS w TrueNAS).
Pełne Polecenia dla dysków w Trybie Pass-Through #
Przykład: Masz dyski w trybie pass-through na VM 100, które pojawiają się jako /dev/disk/by-id/ata-DISKID1
, /dev/disk/by-id/ata-DISKID2
, itd.:
# (Opcjonalnie) Sprawdź, które dyski są obecnie przypisane do VM 100
qm config 100
# 1) Wyłącz VM 100
qm stop 100
# 2) Odłącz każdy dysk w trybie pass-through od VM 100
qm set 100 -delete scsi1
qm set 100 -delete scsi2
qm set 100 -delete scsi3
qm set 100 -delete scsi4
qm set 100 -delete scsi5
qm set 100 -delete scsi6
qm set 100 -delete scsi7
# 3) Podłącz te same dyski do VM 103
qm set 103 -scsi1 /dev/disk/by-id/ata-DISKID1
qm set 103 -scsi2 /dev/disk/by-id/ata-DISKID2
qm set 103 -scsi3 /dev/disk/by-id/ata-DISKID3
qm set 103 -scsi4 /dev/disk/by-id/ata-DISKID4
qm set 103 -scsi5 /dev/disk/by-id/ata-DISKID5
qm set 103 -scsi6 /dev/disk/by-id/ata-DISKID6
qm set 103 -scsi7 /dev/disk/by-id/ata-DISKID7
# 4) Potwierdź nową konfigurację
qm config 103
# 5) Uruchom VM 103
qm start 103
Jeśli zamiast tego przenosisz dysk zarządzany przez Proxmox (np. local-zfs:vm-100-disk-0
), użyj:
# 1) Wyłącz VM 100
qm stop 100
# 2) Przenieś dysk za pomocą wbudowanego polecenia Proxmox
qm move-disk 100 scsi0 local-zfs --target-vmid 103
# 3) Sprawdź konfigurację
qm config 103
# 4) Uruchom VM 103
qm start 103
Importowanie Puli ZFS w TrueNAS #
Po podłączeniu dysków do VM TrueNAS (VM 103), TrueNAS rozpozna je jako fizyczne dyski. Aby zaimportować istniejącą pulę ZFS (nawet zaszyfrowaną) znajdującą się na tych dyskach, postępuj według jednej z poniższych metod.
1) Przez Interfejs Webowy #
- Zaloguj się do TrueNAS (interfejs webowy).
- Przejdź do Storage → Pools.
- Kliknij Add (lub Add Pool), a następnie wybierz Import an existing pool.
- TrueNAS wyświetli wykryte pule na nowo podłączonych dyskach.
- Wybierz pulę, którą chcesz zaimportować, a następnie kliknij Import.
- Jeśli pula jest zaszyfrowana, zostaniesz poproszony o klucz lub hasło. Wprowadź wymagane informacje, aby odblokować pulę.
- Po zaimportowaniu (i odblokowaniu, jeśli to konieczne) upewnij się, że pula jest widoczna w Storage → Pools.
2) Przez Konsolę #
- Otwórz konsolę TrueNAS (menu po lewej lub SSH).
- Wykonaj polecenie:
Wyświetli ono pule dostępne do zaimportowania.
zpool import
- Zaimportuj pulę:
zpool import <poolname>
- Jeśli pula nie została poprawnie wyeksportowana, możesz wymusić jej import:
zpool import -f <poolname>
- Jeśli pula nie została poprawnie wyeksportowana, możesz wymusić jej import:
- Jeśli pula jest zaszyfrowana, odblokuj ją za pomocą:
Może być wymagane podanie pliku klucza lub hasła, w zależności od konfiguracji szyfrowania.
zfs load-key <poolname>
- Potwierdź status importu:
Powinieneś zobaczyć nowo zaimportowaną pulę i jej dyski.
zpool status
Uwaga: Zawsze przechowuj kopię zapasową klucza szyfrującego lub hasła w bezpiecznym miejscu. Utrata klucza uniemożliwi dostęp do danych na zaszyfrowanej puli.
Podsumowanie #
Poprawne odłączanie i podłączanie dysków w Proxmox pozwala na przenoszenie fizycznych lub zarządzanych przez Proxmox dysków z jednej VM (ID 100) do innej (ID 103). Jeśli przekazujesz te dyski do TrueNAS, wystarczy postępować zgodnie z krokami importu puli, aby uzyskać do nich dostęp w TrueNAS. Ten prosty proces ułatwia migrację pamięci masowej lub reorganizację dysków między VM, zachowując wszystkie dane i konfiguracje ZFS.