- Poolbaseret ledelse
- Tynd klargøring
- Snapshots af filsystemet
- Overvågning
Stratisd er dæmonen bag Stratis og hjælper med at konfigurere lagringskomponenter under XFS-filsystemet og enhedskortdelsystemet. I øjeblikket støtter Stratis LVM logiske diskenheder, harddiske, SSD'er, NVMe, og ISCI'er lagringsenheder.
Lad os nu tage et dyk og se på nogle grundlæggende nøgleudtryk
- blockdev: Dette er en terminologi, der henviser til blokeringsenheder.
- Pool: En pool kan bestå af enten en enkelt eller flere blokanordninger. En stratis pools størrelse svarer til summen af de blokkenheder, der udgør puljen.
- Filsystem: Et filsystem er et tyndt tilvejebragt lag, hvis størrelse vokser, når flere oplysninger eller data tilføjes. Størrelsen på et filsystem skaleres automatisk op af Stratis, da data vokser næsten til det virtuelle filsystems størrelse.
Stratis består af:
- Stratisd dæmon: En dæmon, der gør det muligt for en bruger at administrere blokkenheder.
- Stratis-cli: Et kommandolinjeværktøj, der følger med Stratis.
Installation af Stratis på RHEL 8
Efter kort introduktion af Stratis, hvad det gør og dets komponenter, lad os nu installere Stratis på RHEL 8
For at installere Stratis på RHEL 8 skal du logge ind som root-bruger og køre kommandoen:
# dnf installer stratisd stratis-cli
Når du bliver bedt om det, skal du skrive y for at fortsætte med installationen. Hvis alt gik godt, skulle du være i stand til at få output nedenfor, der bekræfter, at alt gik godt.
For at bekræfte installationen af stratis-pakkerne skal du køre kommandoen:
# rpm -q stratisd stratis-cli
Starter Stratis-service på RHEL 8
For at starte Stratis-tjenesten skal du udføre kommandoen:
# systemctl aktiver - nu stratisdBekræft derefter status for Stratis ved at køre kommandoen:
# systemctl status stratisd
Fra ovenstående output kan vi se, at Stratis er i gang.
Oprettelse af en Stratis-pool
Inden du begynder med oprettelsen af en Stratis-pool, skal du sikre dig, at blokkenhederne på dit system har mindst 1 GB. Derudover skal disse enheder være afmonteret og inaktiv. Derudover skal stratisd-dæmonen køre. i vores opsætning er der 5 blokkenheder bortset fra den primære partition:
- / dev / xvdb
- / dev / xvdc
- / dev / xvdd
- / dev / xvde
- / dev / xvdf
Du kan få et glimt af de eksisterende blokkenheder ved at køre kommandoen:
# lsblk
Det er også afgørende at sikre, at blokkenhederne ikke har en eksisterende partitionstabel.
Bekræft dette ved hjælp af syntaksen:
# blkid -p /For eksempel
# blkid -p / dev / xvdb
Intet output betyder, at der ikke findes nogen partitionstabel på blokkenhederne. Men hvis der findes en partitionstabel på en af enhederne, kan du udslette partitionen ved hjælp af kommandoen:
# wipefs -a /Oprettelse af en Stratis Pool fra en blokanordning
Du kan oprette en Stratis-pool fra en enkelt blok-enhed ved hjælp af syntaksen:
# stratis pool opretteFor eksempel at oprette en pool pool_1 fra blokken / dev / xvdb løb:
# stratis pool oprette pool_1 / dev / xvdbFor at liste den oprettede pool skal du køre:
# stratis pool liste
Fra ovenstående output kan vi tydeligt se, at en ny pool, pool_1 er oprettet.
Opret en Stratis Pool fra flere blokkenheder
For at oprette en pool fra flere enheder skal du bruge syntaksen nedenfor med en liste over alle enheder på en linje
# stratis pool opretteAt oprette en pool fra / dev / xvdc og / dev / xvdd kør kommandoen:
# stratis pool opret pool_2 / dev / xvdc / dev / xvdd /Angiv endnu en gang de tilgængelige puljer ved hjælp af kommandoen:
# stratis pool listePå dette tidspunkt skal du have to puljer: pool_1 og pool_2
Fra ovenstående output kan vi tydeligt bemærke, at pool_2 er dobbelt så stor som pool_1, fordi den består af to blokkenheder, der hver har et fysisk volumen på 10 GB.
Oprettelse af et filsystem fra en pool
Fra en af de tidligere oprettede Stratis-puljer kan du oprette et filsystem ved hjælp af syntaksen nedenfor:
# stratis fs opretteFor eksempel at oprette et filsystem fs_1 fra pool_1 udfør kommandoen:
# stratis fs oprette pool_1 fs_1Du kan også oprette mere end 1 filsystem fra en pool. I den anden pool opretter vi 2 filsystemer:
fs_2& fs_3
# stratis fs oprette pool_2 fs_2
# stratis fs oprette pool_2 fs_3
For at få vist de nye filsystemer skal du udføre:
# stratis fs liste
Brug syntaksen til at liste filsystemer i en given pool
# stratis fs listeFor eksempel for at se de filsystemer, der findes i pool_1, skal du køre kommandoen:
# stratis fs liste pool_1
Til pool_2-kørsel:
# stratis fs liste pool_2
Som forventet har vi 2 filsystemer i den anden pool.
På dette tidspunkt kører du lsblk kommando giver output svarende til nedenstående:
Sådan monteres et Stratis-filsystem
For at få adgang til filsystemerne skal vi først montere dem. Det første trin vil være at oprette monteringspunkter for hvert af filsystemerne. Dette er opsummeret i nedenstående tabel
Filsystem | Mount Point |
fs_1 | /opbevaring |
fs_2 | / database |
fs_3 | / backup |
Så lav det første monteringspunkt til filsystemet i pool_1
# mkdir / opbevaringMonter derefter filsystemet
# mount / Stratis / pool_1 / fs_1 / storage
Følg den samme procedure for at montere det andet filsystem:
# mkdir / databaseMonter filsystemet:
# mount / stratis / pool_2 / fs_2 / database
Og endelig til det sidste filsystem:
# mkdir / backupMonter filsystemet:
# mount / stratis / pool_2 / fs_3 / backup
Du kan bekræfte eksistensen af monteringspunkter ved hjælp af kommandoen:
# df -Th | grep stratis
Gør stratis filsystemer vedvarende
De filsystemer, vi lige har oprettet, overlever ikke en genstart. For at gøre dem vedholdende skal vi føje dem til / etc / fstab fil.
Lad os først hente UUID for filsystemerne som vist
# 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 / storage
xfs er standard 0 0 "| sudo tee -a / etc / fstab
# echo "UUID = ddfa4252-a9d6-4c10-8981-e7dbd56450ee / database
xfs er standard 0 0 "| sudo tee -a / etc / fstab
# echo "UUID = 512bc0b7-182e-46ed-9fbd-d5be4d055fcf / backup
xfs er standard 0 0 "| sudo tee -a / etc / fstab
Du kan bekræfte tilføjelsen af filsystemerne til / etc / fstab som vist:
For at ændringerne skal træde i kraft på systemet, skal du køre kommandoen:
# systemctl dæmon-genindlæsMonter derefter alle filsystemerne
# mount -a
Tilføjelse af en blokenhed til en Stratis-pool
For at tilføje en blokenhed til en eksisterende Stratis-pool skal du køre kommandoen:
# stratis pool add-dataFor eksempel at tilføje blokvolumen / dev / xvde til pool_1 kør kommandoen:
# stratis pool add-data pool_1 / dev / xvdeTjek nu størrelsen på pool_1
# stratis pool liste
Som observeret er størrelsen på pool_1 er fordoblet som et resultat af den tilføjede blokanordning.
Oprettelse af et Stratis-øjebliksbillede
Et stratis-filsystem er en nøjagtig kopi eller replika af et andet Stratis-filsystem. Den indeholder det samme indhold som det originale filsystem. Et øjebliksbillede kan dog senere ændres, og der vil derefter være forskelle mellem øjebliksbillede og det originale filsystem.
Her er et par ting, du også bør vide:
- Et øjebliksbillede af et filsystem er simpelthen et andet replika-filsystem.
- Du behøver ikke montere et filsystem for at kunne oprette et øjebliksbillede ud fra det.
- Et snapshottet filsystem kan overleve det originale filsystem, det blev oprettet fra
For at oprette et øjebliksbillede skal du bruge syntaksen:
# stratis fs øjebliksbilledeFor eksempel at oprette et snapshot kaldet snapshot_1 i pool_1 kør kommandoen
# stratis fs snapshot pool_1 fs_1 snapshot_1Dette tager cirka 30 sekunder.
For at bekræfte oprettelsen af snapshotet skal du udføre:
# stratis filsystemlisteI dette tilfælde vil kommandoen være:
# stratis filsystemliste pool_1
Derudover kan du tilføje datoattributten (-$ (dato +% Y-% m-% d) for let at identificere, hvornår snapshotet blev oprettet. Lad os oprette et andet øjebliksbillede ved hjælp af den anden pool.
# stratis fs snapshot pool_2 fs_2 snapshot_2 - $ (dato +% Y-% m-% d)For at liste det nyoprettede Stratis-øjebliksbillede udsted kommandoen:
# stratis filsystemliste pool_2
Fra ovenstående output kan vi se et øjebliksbillede oprettet i pool_2 med et datomærke.
Sådan vender du tilbage til et tidligere øjebliksbillede ved hjælp af et filsystem
For at vende tilbage til et tidligere øjebliksbillede ved hjælp af et filsystem, skal du først afmontere og ødelægge det originale filsystem.
# umount / stratis /For eksempel i pool_2 at vende tilbage til snapshot_2 afmonter filsystemet fs_2
# umount / stratis / pool_2 / fs_2Opret derefter en kopi af snapshotet fra det originale filsystem
# stratis filsystem snapshotøjebliksbillede fs-mountpoint
Kommandoen er:
# stratis filsystem snapshot pool_2 snapshot_2-2019-11-15 database
Endelig monteres snapshotet ved hjælp af filsystemets monteringspunkt
# mount / stratis / pool_2 / fs_2 / database
Fjernelse af et Stratis-øjebliksbillede
For at fjerne et Stratis-øjebliksbillede skal du først afmontere snapshotet.
# umount / snapshot_mountpointFor at fjerne det snapshot, der blev oprettet i pool_2, afmonter monteringspunktet som vist
# umount / databaseFortsæt derefter og ødelæg snapshotet:
# stratis filsystem ødelæggerKommandoen er:
# stratis filsystem ødelægger pool_2 snapshot_2-2019-11-15Prøv nu at liste filsystemerne i pool_2. Du bemærker, at øjebliksbilledet nu er væk.
# stratis filsystemliste pool_2
Fjernelse af et Stratis-filsystem
For at slippe af med et filsystem skal du først afmontere filsystemet ved hjælp af syntaksen nedenfor:
# umount / stratis / pool / filesystemFor eksempel at fjerne filsystemet fs_1 i pool_1, afmonter det først som vist:
# umount / stratis / pool_1 / fs_1Dernæst ødelæg filsystemet ved hjælp af syntaksen nedenfor:
# stratis filsystem ødelægger pool fsI vores scenario vil kommandoen være:
# stratis filsystem ødelægger pool_1 fs_1
For at bekræfte, at filsystemet blev fjernet, skal du køre kommandoen:
# stratis filsystemliste pool_1
Som du kan se, eksisterer filsystemet ikke længere.
Fjernelse af en Stratis-pool
Lad os endelig se, hvordan du kan fjerne en Stratis-pool.
For at fjerne en stratis pool skal du afmontere og ødelægge ethvert filsystem og snapshot i puljen, som vi så i de foregående underemner.
Da der er et øjebliksbillede tilbage på pool_1, skal vi først fjerne det ved først at fjerne monteringspunktet, der er knyttet til øjebliksbillede
# umount / storageDernæst ødelægge filsystemet.
# stratis filsystem ødelægger pool_1 snapshot_1Når snapshotet nu er fjernet, skal du fjerne pool_1 ved hjælp af kommandoen
# stratis pool ødelægge pool_1
Liste nu over de tilgængelige puljer:
# stratis pool liste
At fjerne pool_2 , lad os først liste filsystemerne
# stratis filsystemliste pool_2
Afmonter og ødelæg filsystemerne som vist
# umount / stratis / pool_2 / fs_3# stratis filsystem ødelægger pool_2 fs_3
# stratis filsystem ødelægger pool_2-database
Dernæst ødelæg poolen og opreg puljerne
# stratis pool ødelægge pool_2# stratis pool liste
Perfekt ! alle puljer er væk nu. Vi er gået tilbage til hvor vi startede ! Du kan bekræfte igen ved at angive låseanordningerne ved hjælp af kommandoen:
og hvordan du kan bruge det til at administrere blokkenheder, oprette snapshots, filsystemer og puljer og også fjerne dem. Dine tanker og feedback er meget velkomne.
Referencer:
- https: // adgang.rød hat.com / dokumentation / da-os / red_hat_enterprise_linux / 8 / html / manage_file_systems / management-lagdelte-lokal-lager-med-stratis_managing-fil-systemer
- https: // www.tecmint.com / install-stratis-to-manage-layered-local-storage-on-rhel /