röd hatt

Så här hanterar du lagrad lokal lagring med Stratis på RHEL 8

Så här hanterar du lagrad lokal lagring med Stratis på RHEL 8
Stratis är en lagringslösning för lokal hantering av RedHat-teamet introducerat med RHEL 8 som gör det möjligt för systemadministratörer att konfigurera avancerade lagringsfunktioner som:

  1. Poolbaserad förvaltning
  2. Tunn försörjning
  3. Ögonblicksbilder av filsystem
  4. Övervakning

Stratisd är en demon bakom Stratis och hjälper till att konfigurera lagringskomponenter under XFS-filsystem och delsystem för mappapparater. För närvarande stöder Stratis LVM-logiska volymer, hårddiskar, SSD-enheter, NVMe, och ISCI lagringsenheter.

Låt oss ta ett dyk och titta på några grundläggande nyckeltermer

  1. blockdev: Detta är en terminologi som hänvisar till blockeringsenheter.
  2. Slå samman: En pool kan bestå av antingen en eller flera blockenheter. En stratis pools storlek motsvarar summan av blockenheterna som utgör poolen.
  3. Filsystem: Ett filsystem är ett tunt anordnat lager vars storlek växer när mer information eller data läggs till. Storleken på ett filsystem skalas upp automatiskt av Stratis eftersom data växer nästan till det virtuella filsystemets storlek.

Stratis består av:

  1. Stratisd daemon: En demon som gör det möjligt för en användare att hantera blockeringsenheter.
  2. Stratis-cli: Ett kommandoradsverktyg som kommer med Stratis.

Installera Stratis på RHEL 8

Efter att ha introducerat Stratis kort, vad den gör och dess komponenter, låt oss nu installera Stratis på RHEL 8

För att installera Stratis på RHEL 8, logga in som root-användare och kör kommandot:

# dnf installera stratisd stratis-cli

När du blir ombedd skriver du y för att fortsätta med installationen. Om allt gick bra borde du kunna få utdata nedan som bekräftar att allt gick bra.

För att bekräfta installationen av stratis-paketen kör du kommandot:

# rpm -q stratisd stratis-cli

Startar Stratis-tjänsten på RHEL 8

För att starta Stratis-tjänsten, kör kommandot:

# systemctl aktivera - nu stratisd

Kontrollera sedan statusen för Stratis genom att köra kommandot:

# systemctl status stratisd

Från produktionen ovan kan vi konstatera att Stratis är igång.

Skapa en Stratis-pool

Innan du börjar med att skapa en Stratis-pool, se till att blockeringsenheterna på ditt system har minst 1 GB. Dessutom måste dessa enheter vara avmonterade och inaktiva. Dessutom måste stratisd daemon köras. i vår installation finns det fem blockenheter bortsett från den primära partitionen:

  1. / dev / xvdb
  2. / dev / xvdc
  3. / dev / xvdd
  4. / dev / xvde
  5. / dev / xvdf

Du kan skymta de befintliga blockeringsenheterna genom att köra kommandot:

# lsblk

Det är också viktigt att säkerställa att blockeringsenheterna inte har en befintlig partitionstabell.

Bekräfta detta med syntaxen:

# blkid -p /

Till exempel

# blkid -p / dev / xvdb

Ingen utgång innebär att det inte finns någon partitionstabell på blockenheterna. Men om det finns en partitionstabell på en av enheterna kan du rensa bort partitionen med kommandot:

# wipefs -a /

Skapa en Stratis Pool från en blockenhet

Du kan skapa en Stratis-pool från en enda blockenhet med syntaxen:

# stratis pool skapa  

Till exempel för att skapa en pool pool_1 från blockeringsenheten  / dev / xvdb springa:

# stratis pool skapa pool_1 / dev / xvdb

För att lista den skapade poolen, kör:

# stratis poollista

Från produktionen ovan kan vi tydligt se att en ny pool, pool_1 Har skapats.

Skapa en Stratis Pool från flera blockenheter

För att skapa en pool från flera enheter använder du syntaksen nedan och visar alla enheter på en rad

# stratis pool skapa

Att skapa en pool från / dev / xvdc och  / dev / xvdd kör kommandot:

# stratis pool skapa pool_2 / dev / xvdc / dev / xvdd /

Återigen listar de tillgängliga poolerna med kommandot:

# stratis poollista

Vid denna tidpunkt bör du ha två pooler:  pool_1 och pool_2

Från utdata ovan kan vi tydligt notera att pool_2 är dubbelt så stor som pool_1 eftersom den består av två blockenheter, som alla har en fysisk volym på 10 GB.

Skapa ett filsystem från en pool

Från en av de tidigare skapade Stratis-poolerna kan du skapa ett filsystem med syntaxen nedan:

# stratis fs skapa  

Till exempel för att skapa ett filsystem fs_1 från pool_1 kör kommandot:

# stratis fs skapa pool_1 fs_1

Du kan också skapa mer än 1 filsystem från en pool. I den andra poolen skapar vi två filsystem: 

fs_2 
& fs_3
# stratis fs skapa pool_2 fs_2
# stratis fs skapa pool_2 fs_3

Nu, för att visa de nya filsystemen, kör:

# stratis fs lista

För att lista filsystem i en viss pool, använd syntaxen

# stratis fs lista

Om du till exempel vill se de filsystem som finns i pool_1 kör du kommandot:

# stratis fs lista pool_1

För pool_2-körning:

# stratis fs list pool_2

Som förväntat har vi två filsystem i den andra poolen.

Vid den här tiden kör du  lsblk kommandot ger utdata som liknar den nedan:

Hur man monterar ett Stratis-filsystem

För att komma åt filsystemen måste vi först och främst montera dem. Det första steget blir att skapa monteringspunkter för vart och ett av filsystemen. Detta sammanfattas i tabellen nedan

Filsystem Monteringspunkt
fs_1 /lagring
fs_2 /databas
fs_3 /säkerhetskopiering

Så skapa den första monteringspunkten för filsystemet i pool_1

# mkdir / lagring

Montera sedan filsystemet

# mount / Stratis / pool_1 / fs_1 / storage

Följ samma procedur för att montera det andra filsystemet:

# mkdir / databas

Montera filsystemet:

# mount / stratis / pool_2 / fs_2 / database

Och slutligen för det sista filsystemet:

# mkdir / backup

Montera filsystemet:

# mount / stratis / pool_2 / fs_3 / backup

Du kan bekräfta förekomsten av monteringspunkter med kommandot:

# df -Th | grep stratis

Gör stratis-filsystem beständiga

De filsystem som vi just har skapat kommer inte att överleva en omstart. För att göra dem bestående måste vi lägga till dem i / etc / fstab fil.

Låt oss först hämta UUID för filsystemen som visas

# blkid -p / stratis / pool_1 / fs_1
# blkid -p / stratis / pool_2 / fs_2
# blkid -p / stratis / pool_2 / fs_3

# echo "UUID = 9161da55-6c4b-4761-9da9-1b3999945964 / lagring
xfs är 0 0 "| sudo tee -a / etc / fstab
# echo "UUID = ddfa4252-a9d6-4c10-8981-e7dbd56450ee / databas
xfs är 0 0 "| sudo tee -a / etc / fstab
# echo "UUID = 512bc0b7-182e-46ed-9fbd-d5be4d055fcf / backup
xfs är 0 0 "| sudo tee -a / etc / fstab

Du kan bekräfta tillägget av filsystemen till / etc / fstab som visat:

För att ändringarna ska träda i kraft på systemet, kör kommandot:

# systemctl daemon-reload

Montera sedan alla filsystem

# montera -a

Lägga till en blockenhet i en Stratis-pool

För att lägga till en blockeringsenhet i en befintlig Stratis-pool, kör kommandot:

# stratis pool-tilläggsdata

Till exempel för att lägga till blockvolymen  / dev / xvde till  pool_1 kör kommandot:

# stratis pool add-data pool_1 / dev / xvde

Kontrollera nu storleken på  pool_1

# stratis poollista

Som observerats är storleken på pool_1 har fördubblats till följd av den tillagda blockenheten.

Skapa en Stratis-ögonblicksbild

Ett stratis-filsystem är en exakt kopia eller replik av ett annat Stratis-filsystem. Den innehåller samma innehåll som det ursprungliga filsystemet. En ögonblicksbild kan dock senare ändras och skillnader kommer därefter att finnas mellan ögonblicksbilden och det ursprungliga filsystemet.

Här är några saker du också borde veta:

  1. En ögonblicksbild av ett filsystem är helt enkelt ett annat replikfilsystem.
  2. Du behöver inte montera ett filsystem för att kunna skapa en ögonblicksbild av det.
  3. Ett ögonblicksbilds filsystem kan överleva det ursprungliga filsystemet det skapades från

Använd syntaxen för att skapa en ögonblicksbild:

# stratis fs ögonblicksbild

Till exempel för att skapa en ögonblicksbild som heter snapshot_1 i pool_1 kör kommandot

# stratis fs snapshot pool_1 fs_1 snapshot_1

Det tar cirka 30 sekunder.

För att bekräfta skapandet av ögonblicksbilden, kör:

# stratis filsystemlista

I det här fallet kommer kommandot att vara:

# stratis filsystemlista pool_1

Dessutom kan du lägga till datumattributet (-$ (datum +% Y-% m-% d) för att enkelt identifiera när ögonblicksbilden skapades. Låt oss skapa en annan ögonblicksbild med den andra poolen.

# stratis fs snapshot pool_2 fs_2 snapshot_2 - $ (datum +% Y-% m-% d)

För att lista den nyligen skapade Stratis-ögonblicksbilden, kommandot:

# stratis filsystemlista pool_2

Från utdata ovan kan vi se en ögonblicksbild skapad i pool_2 med en datumetikett.

Hur man återgår till en tidigare ögonblicksbild med ett filsystem

För att återgå till en tidigare ögonblicksbild med ett filsystem måste du först avmontera och förstöra det ursprungliga filsystemet.

# umount / stratis //filsystem

Till exempel i  pool_2  att återgå till snapshot_2 avmontera filsystemet fs_2

# umount / stratis / pool_2 / fs_2

Skapa sedan en kopia av ögonblicksbilden från det ursprungliga filsystemet

# stratis filsystem ögonblicksbild
ögonblicksbild fs-mountpoint

Kommandot kommer att vara:

# stratis filsystem snapshot pool_2 snapshot_2-2019-11-15 databas

Slutligen montera ögonblicksbilden med hjälp av filsystemets monteringspunkt

# mount / stratis / pool_2 / fs_2 / database

Ta bort en Stratis-ögonblicksbild

För att ta bort en Stratis-ögonblicksbild, först och främst, avmontera stillbilden.

# umount / snapshot_mountpoint

Ta bort ögonblicksbilden som skapats i pool_2, demontera monteringspunkten som visas

# umount / database

Fortsätt sedan och förstör ögonblicksbilden:

# stratis filsystem förstör

Kommandot kommer att vara:

# stratis filsystem förstör pool_2 snapshot_2-2019-11-15

Försök nu att lista filsystemen i pool_2. Du kommer att märka att ögonblicksbilden nu är borta.

# stratis filsystemlista pool_2

Ta bort ett Stratis-filsystem

För att bli av med ett filsystem, demontera först filsystemet med syntaxen nedan:

# umount / stratis / pool / filesystem

Till exempel för att ta bort filsystemet fs_1 i pool_1, demontera först den som visas:

# umount / stratis / pool_1 / fs_1

Därefter förstör filsystemet med syntaxen nedan:

# stratis filsystem förstör pool fs

I vårt scenario kommer kommandot att vara:

# stratis filsystem förstör pool_1 fs_1

För att bekräfta att filsystemet har tagits bort, kör du kommandot:

# stratis filsystemlista pool_1

Som du kan se finns inte filsystemet längre.

Ta bort en Stratis-pool

Slutligen, låt oss se hur du kan ta bort en Stratis-pool.

För att ta bort en stratis pool måste du avmontera och förstöra alla filsystem och ögonblicksbilder i poolen som vi såg i föregående underämnen.

Eftersom det finns en ögonblicksbild kvar på pool_1 ska vi först ta bort den genom att först ta bort monteringspunkten som är kopplad till ögonblicksbilden

# umount / storage

Därefter förstör filsystemet.

# stratis filsystem förstör pool_1 snapshot_1

Med ögonblicksbilden borttagen tar du bort pool_1 med kommandot

# stratis pool förstöra pool_1

Lista nu tillgängliga pooler:

# stratis poollista

Att ta bort pool_2 , låt oss först lista filsystemen

# stratis filsystemlista pool_2

Demontera och förstör filsystemen som visas

# umount / stratis / pool_2 / fs_3
# stratis filsystem förstör pool_2 fs_3
# stratis filsystem förstör pool_2-databasen

Därefter förstör poolen och lista poolerna

# stratis pool förstöra pool_2
# stratis poollista

Perfekt ! alla pooler är borta nu. Vi har gått tillbaka till där vi började ! Du kan bekräfta igen genom att lista låsanordningarna med kommandot:

och hur du kan använda den för att hantera blockeringsenheter, skapa ögonblicksbilder, filsystem och pooler och ta bort dem också. Dina tankar och feedback är mycket välkomna.

Referenser:

  • https: // åtkomst.röd hatt.com / dokumentation / en-us / red_hat_enterprise_linux / 8 / html / manage_file_systems / hantering-lager-lokal-lagring-med-stratis_managing-fil-system
  • https: // www.tecmint.com / install-stratis-to-manage-layered-local-storage-on-rhel /
OpenTTD vs Simutrans
Att skapa din egen transportsimulering kan vara rolig, avkopplande och extremt lockande. Det är därför du måste se till att du testar så många spel so...
OpenTTD-handledning
OpenTTD är ett av de mest populära affärssimuleringsspelen där ute. I det här spelet måste du skapa en underbar transportaffär. Du kommer dock att bör...
SuperTuxKart för Linux
SuperTuxKart är en fantastisk titel som är utformad för att ge dig Mario Kart-upplevelsen gratis på ditt Linux-system. Det är ganska utmanande och rol...