Kako stvoriti VDO volumen na uređaju za pohranu na RHEL 8


Predstavljen od strane RedHat u RHEL 7.5 i novijim verzijama, VDO skraćenica za Virtual Date Optimizer tehnologija je blok virtualizacije koja pruža inline deduplikacija i kompresija podataka na razini blok uređaja.

Ideja deduplikacije je vrlo jednostavna: ukloniti kopije dupliciranih podataka i ostati samo s jednom kopijom. Kada se identična datoteka doda na blok uređaj, ona se označava kao duplikat i umjesto nje se navodi izvorna datoteka. Pri tome VDO pomaže uštedjeti prostor blok volumena.

U ovom ćete vodiču naučiti kako stvoriti VDO volumen na uređaju za pohranu na sustavu RHEL 8.

Korak 1: Instalirajte VDO u RHEL 8

Za početak, prijavite se na svoj poslužitelj i ažurirajte svoj RHEL pomoću naredbe dnf.

sudo dnf update -y

Nakon dovršetka ažuriranja paketa i kernela, nastavite i instalirajte VDO module kernela i ovisnosti pomoću naredbe.

sudo dnf install kmod-kvdo vdo
  • vdo – Ovo je skup alata za upravljanje za Virtual Data Optimizer.
  • kmod-kvdo – Ovo je grupa kernel modula za Virtual Data Optimizer.

Nakon uspješne instalacije, pokrenite, omogućite i provjerite demon vdo.

sudo systemctl start vdo
sudo systemctl enable vdo
sudo systemctl status vdo

Korak 2: Stvorite VDO volumen u RHEL 8

Prije stvaranja vdo volumena, provjerite imate li dodatni tvrdi disk na vašem sustavu. U ovom vodiču priložili smo dodatni volumen xvdb. To se može pokazati pokretanjem naredbe lsblk ispod.

lsblk

Iz izlaza možete jasno vidjeti da drugi disk ima kapacitet 100 GB.

Sada ćemo stvoriti prazan VDO volumen na /dev/xvdb disku.

sudo vdo create --name=vdo1 --device=/dev/xvdb --vdoLogicalSize=300G

Naići ćete na prikazanu pogrešku.

Ovo je uobičajena pogreška, a rješenje je da jednostavno ponovno pokrenete poslužitelj.

sudo reboot

U drugom pokušaju, naredba će se izvršiti, stvarajući prazan VDO volumen na uređaju /dev/xvdb.

sudo vdo create --name=vdo1 --device=/dev/xvdb --vdoLogicalSize=300G

Razdvojimo naredbu i pogledajmo korištenu opciju:

  • kreiraj – Ovo pokreće stvaranje VDO volumena.
  • –name=vdo1 – Ovo volumenu daje oznaku poznatu kao vdo1. Slobodno dodijelite bilo koje ime po svom izboru.
  • –device=/dev/xvdb – Opcija uređaja određuje disk na kojem će se volumen stvoriti.
  • –vdoLogicalSize=300G – Ovo označava efektivni kapacitet volumena koji će koristiti operativni sustav, u ovom slučaju, 300G.

Korak 3: Ispitivanje novog VDO volumena

Novi VDO volumen kreiran je na /dev/mapper/vdo1 prema izlazu koji smo vidjeli u prethodnom koraku. Možemo upotrijebiti naredbu ls kao što je prikazano da istražimo dopuštenja i vlasništvo datoteke.

ls -l /dev/mapper/vdo1

Za dobivanje detaljnijih informacija upotrijebite naredbu vdostats za dohvaćanje statistike o veličini i korištenju volumena.

vdostats --hu

Oznaka --hu prikazuje informacije u formatu čitljivom za čovjeka, tj. formatu koji je puno lakši za čitanje i dešifriranje s lakoćom. Možemo vidjeti atribute poput naziva uređaja, veličine na dodatnom disku, iskorištenog i dostupnog prostora kao % upotrebe.

Pažljivo promatrajte da je ušteda % označena kao Nije primjenjivo (N/A).

Također imajte na umu da već imamo određenu količinu upotrebe 4.1G što znači 4% ali nismo ništa napisali o količini. Zašto je to? To je zato što je univerzalna deduplikacija već zapisana na disk i to je ono što deduplikaciju čini mogućom.

Naredba vdostats može se koristiti s oznakom --verbose za dohvaćanje detaljnijih informacija kao što je prikazano:

sudo vdostats --verbose /dev/mapper/vdo1 | grep -B6 ‘saving percent’

Ono što možete vidjeti u osnovi su isti podaci kao u prethodnom primjeru, ali u drugom formatu.

Korak 4: Particioniranje VDO sveska

Nakon što dobijemo dovoljno uvida u volumen, moramo ga particionirati i kasnije stvoriti datotečni sustav tako da se može koristiti kao normalan disk.

Kreirajmo fizički volumen i grupu volumena kao što je prikazano, pokrenite sljedeće naredbe.

sudo pvcreate /dev/mapper/vdo1
sudo vgcreate vdo1vg /dev/mapper/vdo1

Za prikaz statistike pokretanja grupe volumena:

sudo vgdisplay vdo1vg

Sada ćemo stvoriti 2 logička volumena jednake veličine, svaki s kapacitetom od 50G.

sudo lvcreate -n vdo1v01 -L 50G vdo1vg
sudo lvcreate -n vdo1v02 -L 50G vdo1vg

Kasnije možete vidjeti statistiku novostvorenih volumena pokretanjem naredbe.

sudo lvs

Korak 4: Formatiranje i montiranje datotečnih sustava

Obično, kada se kreira datotečni sustav, na uređaju se provodi operacija skraćivanja. Ovo je nepoželjno u slučaju VDO. Kada formatirate pomoću naredbe mkfs, upotrijebite opciju -K kako biste uputili naredbu da ne odbacuje blokove tijekom stvaranja datotečnog sustava.

sudo mkfs.xfs  -K /dev/vdo1vg/vdo1v01
sudo mkfs.xfs  -K /dev/vdo1vg/vdo1v02

Ako koristite datotečni sustav EXT$, koristite opciju “-E nodiscard”.

Stvorite točke montiranja za montiranje volumena:

sudo mkdir /data/v01
sudo mkdir /data/v02

Sada montirajte datotečne sustave na njihove točke montiranja kao što je prikazano.

sudo mount -o discard /dev/vdo1vg/vdo1v01  /data/v01
sudo mount -o discard /dev/vdo1vg/vdo1v02  /data/v02

Sada kada pregledate VDO volumen, primijetit ćete da se ušteda % promijenila na 99% što je prilično impresivno. To znači da deduplikacija radi prema očekivanjima.

sudo vdostats --hu

Možete dodatno istražiti pomoću naredbe df -Th. U donjem odjeljku vidjet ćete datotečne sustave montirane na /data/v01 odnosno /data/v02.

df -hT

U ovom smo vodiču pokazali kako možete stvoriti VDO volumen s dodatnog uređaja za pohranu na RHEL 8. Kasnije smo nastavili i demonstrirali kako možete stvoriti više volumena i stvoriti datotečne sustave iz tih volumena.