Für mein kleines Virtualisierungsprojekt brauche ich ein Debian Bullseye mit ZFS-Pool. Warum? Man muss auch mal Neues ausprobieren
Das Debian läuft als VM innerhalb meines Proxmox. Diese VM soll als erstes zwei Platten zugewiesen bekommen. Wir nehmen zwei Festplatten und machen diese am Besten mit fdisk schön platt. Danach sollte der Proxmox die anzeigen.
Wir bruchen die IDs.
/dev/disk/by-id
ls -lha /dev/disk/by-id
lrwxrwxrwx 1 root root 9 Oct 17 16:36 ata-ST2000LM015-2E8174_WDZHD87G -> ../../sdc
lrwxrwxrwx 1 root root 9 Oct 17 16:36 ata-ST2000LM015-2E8174_ZDZ2MY9W -> ../../sdd
Nehmen wir an, wir haben diese beiden Platten und die wollen wir jetzt der VM zuweisen. Das geht nicht übers GUI, dazu gibt man auf der Konsole folgendes ein.
qm set 100 -scsi1 /dev/disk/by-id/ata-ST2000LM015-2E8174_WDZHD87G
qm set 100 -scsi2 /dev/disk/by-id/ata-ST2000LM015-2E8174_ZDZ2MY9W
Sieht dann so aus.
Damit stehen uns diese beiden Platten innerhalb der VM zur Verfügung. Sieht dann wie folgt aus (hier schon mit ZFS-Pool)
root@debian1:~# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 32G 0 disk
├─sda1 8:1 0 31G 0 part /
├─sda2 8:2 0 1K 0 part
└─sda5 8:5 0 975M 0 part [SWAP]
sdb 8:16 0 1,8T 0 disk
├─sdb1 8:17 0 1,8T 0 part
└─sdb9 8:25 0 8M 0 part
sdc 8:32 0 1,8T 0 disk
├─sdc1 8:33 0 1,8T 0 part
└─sdc9 8:41 0 8M 0 part
sr0 11:0 1 377M 0 rom
Nun möchte ich aus diesen beiden Platten einen ZFS-Pool machen. Auf Debian Bullseye ist kein ZFS vorinstalliert. Dazu müssen wir die Repositories anpassen.
nano /etc/apt/sources.list
# deb cdrom:[Debian GNU/Linux 11.0.0 _Bullseye_ - Official amd64 NETINST 20210814-10:07]/ bullseye main
#deb cdrom:[Debian GNU/Linux 11.0.0 _Bullseye_ - Official amd64 NETINST 20210814-10:07]/ bullseye main
deb http://deb.debian.org/debian/ bullseye contrib main
deb-src http://deb.debian.org/debian/ bullseye contrib main
deb http://security.debian.org/debian-security bullseye-security main
deb-src http://security.debian.org/debian-security bullseye-security main
# bullseye-updates, to get updates before a point release is made;
# see https://www.debian.org/doc/manuals/debian-reference/ch02.en.html#_updates_and_backports
deb http://deb.debian.org/debian/ bullseye-updates main
deb-src http://deb.debian.org/debian/ bullseye-updates main
# This system was installed using small removable media
# (e.g. netinst, live or single CD). The matching "deb cdrom"
# entries were disabled at the end of the installation process.
# For information about how to configure apt package sources,
# see the sources.list(5) manual.
Wir müssen das contrib ergänzen, danach kann man ZFS installieren.
apt update
apt install zfs-dkms
Danach steht uns ZFS in der VM zur Verfügung. Wir bauen nun den Pool, dafür brauchen wir wieder die IDs.
root@debian1:~# ls -lha /dev/disk/by-id/
insgesamt 0
drwxr-xr-x 2 root root 260 17. Okt 16:42 .
drwxr-xr-x 8 root root 160 17. Okt 16:42 ..
lrwxrwxrwx 1 root root 9 17. Okt 16:42 ata-QEMU_DVD-ROM_QM00003 -> ../../sr0
lrwxrwxrwx 1 root root 9 17. Okt 16:42 scsi-0QEMU_QEMU_HARDDISK_drive-scsi0 -> ../../sda
lrwxrwxrwx 1 root root 10 17. Okt 16:42 scsi-0QEMU_QEMU_HARDDISK_drive-scsi0-part1 -> ../../sda1
lrwxrwxrwx 1 root root 10 17. Okt 16:42 scsi-0QEMU_QEMU_HARDDISK_drive-scsi0-part2 -> ../../sda2
lrwxrwxrwx 1 root root 10 17. Okt 16:42 scsi-0QEMU_QEMU_HARDDISK_drive-scsi0-part5 -> ../../sda5
lrwxrwxrwx 1 root root 9 17. Okt 16:42 scsi-0QEMU_QEMU_HARDDISK_drive-scsi1 -> ../../sdc
lrwxrwxrwx 1 root root 10 17. Okt 16:42 scsi-0QEMU_QEMU_HARDDISK_drive-scsi1-part1 -> ../../sdc1
lrwxrwxrwx 1 root root 10 17. Okt 16:42 scsi-0QEMU_QEMU_HARDDISK_drive-scsi1-part9 -> ../../sdc9
lrwxrwxrwx 1 root root 9 17. Okt 16:42 scsi-0QEMU_QEMU_HARDDISK_drive-scsi2 -> ../../sdb
lrwxrwxrwx 1 root root 10 17. Okt 16:42 scsi-0QEMU_QEMU_HARDDISK_drive-scsi2-part1 -> ../../sdb1
lrwxrwxrwx 1 root root 10 17. Okt 16:42 scsi-0QEMU_QEMU_HARDDISK_drive-scsi2-part9 -> ../../sdb9
scsi0 ist die Systemplatte, scsi1 und scsi2 die Platten, die wir hinzugefügt haben.
Pool anlegen
zpool create ZFS-Pool scsi-0QEMU_QEMU_HARDDISK_drive-scsi1 scsi-0QEMU_QEMU_HARDDISK_drive-scsi2
Status abfragen
root@debian1:~# zpool status NAS
pool: NAS
state: ONLINE
scan: resilvered 232K in 00:00:01 with 0 errors on Sun Oct 17 16:38:46 2021
config:
NAME STATE READ WRITE CKSUM
NAS ONLINE 0 0 0
mirror-0 ONLINE 0 0 0
scsi-0QEMU_QEMU_HARDDISK_drive-scsi1 ONLINE 0 0 0
scsi-0QEMU_QEMU_HARDDISK_drive-scsi2 ONLINE 0 0 0
errors: No known data errors
Das wars Nun kann man mit dem ZFS-Pool arbeiten, z.B. als NAS gebrauchen und dann mittels NFS verteilen. Jetzt denkt der ein oder andere vielleicht, warum nicht direkt auf dem Host!? Das habe ich genauso auch gemacht, aber das Netz ist leider vor meiner pfSense, so mit musste das hinter die pfSense. So mit brauchte ich eine VM, die das verteilt.
Viel Spaß beim Testen....