rdeč klobuk

Kako upravljati večplastno lokalno shrambo s Stratisom na RHEL 8

Kako upravljati večplastno lokalno shrambo s Stratisom na RHEL 8
Stratis Je rešitev za lokalno upravljanje s strani skupine RedHat, predstavljena z RHEL 8, ki sistemskim skrbnikom omogoča konfiguriranje naprednih funkcij shranjevanja, kot so:

  1. Bazno upravljanje
  2. Tanka rezervacija
  3. Posnetki datotečnega sistema
  4. Spremljanje

Stratisd je demon za Stratisom in pomaga pri konfiguriranju komponent pomnilnika v datotečnem sistemu XFS in podsistemu preslikava naprav. Trenutno Stratis podpira Logični zvezki LVM, trdi diski, SSD diski, NVMe, in ISCI naprave za shranjevanje.

Zdaj pa se potopimo in si oglejmo nekaj osnovnih ključnih izrazov

  1. blockdev: To je terminologija, ki se nanaša na blokovne naprave.
  2. Bazen: Bazen je lahko sestavljen iz ene ali več blokovnih naprav. Velikost stratis bazena bo enaka vsoti blokovnih naprav, ki sestavljajo bazen.
  3. Datotečni sistem: Datotečni sistem je tanko pripravljena plast, katere velikost narašča z dodajanjem več informacij ali podatkov. Stratis samodejno poveča velikost datotečnega sistema, saj podatki rastejo skoraj do velikosti navideznega datotečnega sistema.

Stratis je sestavljen iz:

  1. Stratisdov demon: Demon, ki uporabniku omogoča upravljanje blokovnih naprav.
  2. Stratis-cli: Pripomoček ukazne vrstice, ki je priložen Stratisu.

Namestitev Stratisa na RHEL 8

Potem ko smo na kratko predstavili Stratis, kaj počne in njegove komponente, zdaj namestimo Stratis na RHEL 8

Če želite namestiti Stratis na RHEL 8, se prijavite kot korenski uporabnik in zaženite ukaz:

# dnf namestite stratisd stratis-cli

Ob pozivu vnesite y, da nadaljujete z namestitvijo. Če je šlo vse v redu, bi morali spodaj dobiti rezultate, ki potrjujejo, da je šlo vse v redu.

Za potrditev namestitve paketov stratis zaženite ukaz:

# rpm -q stratisd stratis-cli

Zagon storitve Stratis na RHEL 8

Če želite zagnati storitev Stratis, izvedite ukaz:

# systemctl enable --now stratisd

Nato z zagonom ukaza preverite stanje Stratisa:

# systemctl status stratisd

Iz zgornjih rezultatov lahko opazimo, da Stratis deluje.

Ustvarjanje bazena Stratis

Preden začnete z ustvarjanjem bazena Stratis, zagotovite, da imajo blokovne naprave v vašem sistemu najmanj 1 GB. Poleg tega morajo biti te naprave odklopljene in v prostem teku. Poleg tega mora biti zagnan demon stratisd. v naši nastavitvi je poleg primarne particije še 5 blokovskih naprav:

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

Z zagonom ukaza si lahko ogledate obstoječe blokovske naprave:

# lsblk

Prav tako je ključno zagotoviti, da blokovne naprave nimajo obstoječe tabele particij.

To potrdite s sintakso:

# blkid -p /

Na primer

# blkid -p / dev / xvdb

Noben izhod ne pomeni, da na blokovnih napravah ne obstaja nobena particijska tabela. Če pa tabela particij obstaja na eni od naprav, lahko particijo zbrišete z ukazom:

# wipefs -a /

Ustvarjanje bazena Stratis iz ene blokovne naprave

Stratisov bazen lahko ustvarite iz ene blokovne naprave z uporabo sintakse:

# stratis pool ustvari  

Na primer za ustvarjanje bazena pool_1 iz blokovne naprave  / dev / xvdb teči:

# stratis pool ustvari pool_1 / dev / xvdb

Če želite prikazati ustvarjeno področje, zaženite:

# stratis seznam bazenov

Iz zgornjih rezultatov jasno vidimo, da gre za nov bazen, pool_1 je bila ustvarjena.

Ustvarite Stratis Pool iz več blokovnih naprav

Če želite ustvariti področje iz več naprav, uporabite spodnjo sintakso z navedbo vseh naprav v eni vrstici

# stratis pool ustvari

Če želite ustvariti bazen iz / dev / xvdc in  / dev / xvdd zaženite ukaz:

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

Še enkrat s pomočjo ukaza navedite razpona, ki so na voljo:

# stratis seznam bazenov

Na tej točki bi morali imeti 2 bazena:  pool_1 in pool_2

Iz zgornjega izhoda lahko jasno opazimo, da je pool_2 dvakrat večji od pool_1, ker obsega dve blok napravi, od katerih ima vsaka fizično prostornino 10 GB.

Ustvarjanje datotečnega sistema iz bazena

Iz enega od predhodno ustvarjenih bazenov Stratis lahko ustvarite datotečni sistem s spodnjo sintakso:

# stratis fs ustvari  

Na primer, za ustvarjanje datotečnega sistema fs_1 iz pool_1 izvršite ukaz:

# stratis fs ustvari pool_1 fs_1

Iz enega področja lahko ustvarite tudi več kot 1 datotečni sistem. V drugem področju bomo ustvarili 2 datotečna sistema: 

fs_2 
& fs_3
# stratis fs ustvari pool_2 fs_2
# stratis fs ustvari pool_2 fs_3

Zdaj, da prikažete nove datotečne sisteme, izvedite:

# stratis fs seznam

Če želite seznam datotek v določenem področju uporabiti v sintaksi

# stratis fs seznam

Če si želite na primer ogledati datotečne sisteme, ki obstajajo v pool_1, zaženite ukaz:

# stratis fs list pool_1

Za zagon pool_2:

# stratis fs list pool_2

Kot smo pričakovali, imamo v drugem bazenu dva datotečna sistema.

Na tej točki zaženite  lsblk ukaz bo dal izhod, podoben spodnjemu:

Kako namestiti datotečni sistem Stratis

Za dostop do datotečnih sistemov jih moramo najprej namestiti. Prvi korak bo ustvariti točke za pritrditev za vsak datotečni sistem. To je povzeto v spodnji tabeli

Datotečni sistem Mount Point
fs_1 / shranjevanje
fs_2 / baza podatkov
fs_3 /rezerva

Torej, ustvarite prvo točko vpenjanja za datotečni sistem v pool_1

# mkdir / shranjevanje

Nato namestite datotečni sistem

# mount / Stratis / pool_1 / fs_1 / storage

Če želite namestiti drugi datotečni sistem, sledite istemu postopku:

# mkdir / baza podatkov

Namestite datotečni sistem:

# mount / stratis / pool_2 / fs_2 / database

In na koncu še zadnji datotečni sistem:

# mkdir / backup

Namestite datotečni sistem:

# mount / stratis / pool_2 / fs_3 / backup

Obstoj točk za pritrditev lahko potrdite z ukazom:

# df -Th | grep stratis

Stratisovi datotečni sistemi naj bodo trajni

Datotečni sistemi, ki smo jih pravkar ustvarili, ne bodo preživeli ponovnega zagona. Da bi bili vztrajni, jih moramo dodati v / etc / fstab mapa.

Najprej pridobimo UUID datotečnih sistemov, kot je prikazano

# 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 / shranjevanje
xfs privzeto 0 0 "| sudo tee -a / etc / fstab
# echo "UUID = ddfa4252-a9d6-4c10-8981-e7dbd56450ee / baza podatkov
xfs privzeto 0 0 "| sudo tee -a / etc / fstab
# echo "UUID = 512bc0b7-182e-46ed-9fbd-d5be4d055fcf / backup
xfs privzeto 0 0 "| sudo tee -a / etc / fstab

Lahko potrdite dodajanje datotečnih sistemov v / etc / fstab kot je prikazano:

Za začetek sprememb v učinku na sistem zaženite ukaz:

# systemctl daemon-reload

Nato namestite vse datotečne sisteme

# mount -a

Dodajanje blokovne naprave v bazen Stratis

Če želite dodati blokovno napravo v obstoječe področje Stratis, zaženite ukaz:

# stratis pool dodatek

Na primer za dodajanje glasnosti bloka  / dev / xvde do  pool_1 zaženite ukaz:

# stratis pool pool add-data pool_1 / dev / xvde

Zdaj preverite velikost  pool_1

# stratis seznam bazenov

Kot smo opazili, je velikost pool_1 se je zaradi dodane blokovne naprave podvojil.

Ustvarjanje posnetka Stratis

Datotečni sistem stratis je natančna kopija ali replika drugega datotečnega sistema Stratis. Vsebuje enako vsebino kot izvirni datotečni sistem. Vendar pa lahko posnetek kasneje spremenite in od takrat naprej obstajajo razlike med posnetkom in izvirnim datotečnim sistemom.

Tu je nekaj stvari, ki bi jih morali tudi vedeti:

  1. Posnetek datotečnega sistema je preprosto še en replični datotečni sistem.
  2. Če želite ustvariti posnetek iz njega, vam ni treba namestiti datotečnega sistema.
  3. Posnet datotečni sistem lahko preživi izvirni datotečni sistem, iz katerega je bil ustvarjen

Za ustvarjanje posnetka uporabite sintakso:

# stratis fs posnetek

Na primer, da ustvarite posnetek z imenom posnetek_1 v pool_1 zaženite ukaz

# stratis fs snapshot pool_1 fs_1 snapshot_1

To bo trajalo približno 30 sekund.

Če želite potrditi ustvarjanje posnetka, izvedite:

# stratis seznam datotečnega sistema

V tem primeru bo ukaz:

# stratis pool system list pool_1

Poleg tega lahko dodate atribut datuma (-$ (datum +% Y-% m-% d) za enostavno prepoznavanje, kdaj je bil posnetek ustvarjen. Ustvarimo še en posnetek z drugim bazenom.

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

Če želite na novo ustvariti posnetek Stratisa, izdajte ukaz:

# stratis seznam datotečnih sistemov pool_2

Iz zgornjega izhoda lahko vidimo posnetek, ustvarjen v pool_2 z datumsko oznako.

Kako se vrniti na prejšnji posnetek z uporabo datotečnega sistema

Če se želite vrniti na prejšnji posnetek z uporabo datotečnega sistema, morate najprej odstraniti in uničiti prvotni datotečni sistem.

# umount / stratis //datotečni sistem

Na primer, v  pool_2  za vrnitev na posnetek_2 odklopite datotečni sistem fs_2

# umount / stratis / pool_2 / fs_2

Nato ustvarite kopijo posnetka iz prvotnega datotečnega sistema

# stratis posnetek datotečnega sistema
posnetek fs-mountpoint

Ukaz bo:

# baza podatkov posnetka datotečnega sistema pool_2 snapshot_2-2019-11-15

Na koncu namestite še posnetek s točko pritrditve datotečnega sistema

# mount / stratis / pool_2 / fs_2 / database

Odstranjevanje posnetka Stratisa

Če želite odstraniti posnetek Stratis, najprej odstranite posnetek.

# umount / snapshot_mountpoint

Če želite odstraniti posnetek, ustvarjen v pool_2, odklopite točko montaže, kot je prikazano

# umount / baza podatkov

Nato nadaljujte in uničite posnetek:

# stratis datotečni sistem uniči

Ukaz bo:

# stratis datotečni sistem uniči pool_2 snapshot_2-2019-11-15

Zdaj poskusite našteti datotečne sisteme v pool_2. YOu boste opazili, da posnetka ni več.

# stratis seznam datotečnih sistemov pool_2

Odstranjevanje datotečnega sistema Stratis

Če se želite znebiti datotečnega sistema, najprej odklopite datotečni sistem s spodnjo sintakso:

# umount / stratis / pool / datotečni sistem

Na primer za odstranitev datotečnega sistema fs_1 v pool_1, najprej ga odklopite, kot je prikazano:

# umount / stratis / pool_1 / fs_1

Nato uničite datotečni sistem s spodnjo sintakso:

# stratis datotečni sistem uniči pool fs

V našem primeru bo ukaz:

# stratis datotečni sistem uniči pool_1 fs_1

Če želite potrditi, da je bil datotečni sistem uspešno odstranjen, zaženite ukaz:

# stratis pool system list pool_1

Kot lahko opazite, datotečni sistem ne obstaja več.

Odstranjevanje bazena Stratis

Na koncu poglejmo, kako lahko odstranite bazen Stratis.

Če želite odstraniti področje stratis, morate demontirati in uničiti vse datotečne sisteme in posnetek v področju, kot smo videli v prejšnjih podtemah.

Ker je na pool_1 še posnetek, ga bomo najprej odstranili tako, da bomo najprej odstranili točko vpetja, povezano s posnetkom

# število / shramba

Nato uničite datotečni sistem.

# stratis datotečni sistem uniči pool_1 snapshot_1

Ko je posnetek zdaj odstranjen, z ukazom odstranite pool_1

# stratis pool uniči pool_1

Zdaj navedite razpoložljive bazene:

# stratis seznam bazenov

Odstraniti pool_2 , najprej naštejmo datotečne sisteme

# stratis seznam datotečnih sistemov pool_2

Odstranite in uničite datotečne sisteme, kot je prikazano

# umount / stratis / pool_2 / fs_3
# stratis datotečni sistem uniči pool_2 fs_3
# stratis datotečni sistem uniči zbirko podatkov baze_2

Nato uniči bazen in seznam bazenov

# stratis pool uniči pool_2
# stratis seznam bazenov

Odlično ! vsi bazeni so zdaj izginili. Vrnili smo se tja, kjer smo začeli ! Znova lahko potrdite tako, da z ukazom navedete naprave za zaklepanje:

in kako ga lahko uporabljate za upravljanje blokovnih naprav, ustvarjanje posnetkov, datotečnih sistemov in združenj ter njihovo odstranjevanje. Vaše misli in povratne informacije so zelo dobrodošle.

Reference:

  • https: // dostop.rdeč klobuk.com / documentation / en-us / red_hat_enterprise_linux / 8 / html / management_file_systems / management-layered-local-storage-with-stratis_managing-file-systems
  • https: // www.tecmint.com / install-stratis-za-upravljanje-slojevito-lokalno-shranjevanje-na-rhel /
HD Remastered Games za Linux, ki prej še niso izdale Linuxa
Mnogi razvijalci iger in založniki pripravijo HD remaster starih iger, da podaljšajo življenjsko dobo franšize, zato oboževalci zahtevajo združljivost...
Kako uporabljati AutoKey za avtomatizacijo iger Linux
AutoKey je namizni pripomoček za avtomatizacijo za Linux in X11, programiran v Python 3, GTK in Qt. Z njegovo funkcijo skriptiranja in MACRO lahko avt...
Kako prikazati števec FPS v igrah Linux
Linux gaming je dobil velik zagon, ko je Valve leta 2012 napovedal podporo Linuxu za odjemalca Steam in njihove igre. Od takrat se je veliko AAA in in...