Knowledge base

Een extra NVMe-volume toevoegen en mounten

Het nieuwe blokapparaat vinden, een bestandssysteem kiezen, het zo mounten dat een ontbrekende schijf de boot niet kan stoppen, en het later zonder downtime uitbreiden.

Het apparaat verschijnt zonder herstart

Extra NVMe is een add-on die per vijfhonderd gigabyte wordt verkocht en wordt hot-attached. De volume verschijnt binnen enkele seconden na het afronden van de bestelling als een nieuw block device. Er wordt niets herstart.

lsblk -o NAME,SIZE,TYPE,FSTYPE,MOUNTPOINT

De rootdisk is vda; de nieuwe neemt de volgende letter. Als het niet is verschenen, geef udev een moment en kijk opnieuw:

udevadm settle
ls /sys/class/block

Sla de partitietabel over

Een partitie op een virtuele schijf levert je niets op en voegt een stap toe bij elke groei van de volume. Zet het bestandssysteem direct op het apparaat:

mkfs.ext4 -L data /dev/vdb

Of, voor grote bestanden die door veel threads tegelijk worden geschreven:

mkfs.xfs -L data /dev/vdb

ext4 krimpt offline, XFS kan nooit krimpen. XFS is sneller bij parallelle metadata, ext4 is vergevingsgezinder voor al het andere. Voor de meeste mensen is dat de hele beslissing.

Monteer het zo dat een ontbrekende volume de boot niet kan stoppen

Gebruik het label. Apparaatvolgorde is niet gegarandeerd na een rebuild, en vdb kan morgen vdc zijn.

mkdir -p /srv/data
echo "LABEL=data /srv/data ext4 defaults,noatime,nofail,x-systemd.device-timeout=10s 0 2" >> /etc/fstab
systemctl daemon-reload
mount -a
findmnt /srv/data

nofail en de device timeout zijn het belangrijke deel van die regel. Zonder die kunnen een instance die opstart voordat de volume is attached, in de emergency shell wachten op een schijf, en krijg je het console-artikel eerder te lezen dan gepland.

Trim op een timer, niet bij elke verwijdering

Voeg de mountoptie discard niet toe. Continuous discard voert een trim uit bij elke unlink, en op een druk bestandssysteem kost het meer dan het oplevert. Voer het periodiek uit in plaats daarvan:

systemctl enable --now fstrim.timer
fstrim -v /srv/data

Volume laten groeien

Bestel meer capaciteit en breid daarna het bestandssysteem ter plekke uit. Geen unmount, geen herstart.

lsblk -o NAME,SIZE
resize2fs /dev/vdb          # ext4, by device
xfs_growfs /srv/data        # XFS, by mount point

Als je die twee in de verkeerde volgorde doet, krijg je een verwarrende foutmelding en geen schade, wat de juiste manier is voor een tool om zich te gedragen.

Als je het wilt versleutelen

cryptsetup luksFormat --type luks2 /dev/vdb
cryptsetup open /dev/vdb data
mkfs.ext4 -L data /dev/mapper/data

Begrijp eerst de consequentie. Een volume dat wordt beschermd met een wachtwoordzin kan niet unattended worden gemount, dus elke herstart vereist een persoon op de console die het typt. Het sleutelbestand op de rootdisk leggen lost dat probleem op en haalt tegelijkertijd het meeste voordeel weg. Kies bewust in plaats van bij verstek.

Hardware sanity-check

fio --name=rw --rw=randwrite --bs=4k --size=2G --numjobs=4 --iodepth=32 --direct=1 --runtime=60 --time_based --group_reporting

Voer dat uit op de nieuwe volume, nooit op /, en nooit op een bestandssysteem waarop iets staat dat je wilt bewaren. Als het resultaat een orde van grootte lager is dan wat de hardwarepagina beschrijft, open dan een ticket met de uitvoer en wij kijken naar de host in plaats van naar jou.

Klaar wanneer jij dat bent

Kies een stad. Kies een formaat. Betaal in munt.

Geen formulieren over wie je bent, geen wachten op een mens die je goedkeurt, geen telefoontje om iets te verifiëren. De factuur wordt betaald en de inloggegevens belanden in je inbox.