Hvordan administrere lagvis lokal lagring med stratis på RHEL 8

Hvordan administrere lagvis lokal lagring med stratis på RHEL 8
Stratis er en lagringsløsning for lokal styring av Redhat-teamet introdusert med RHEL 8 som gjør det mulig for systemadministratorer å konfigurere avanserte lagringsfunksjoner som:
  1. Bassengbasert ledelse
  2. Tynn levering
  3. SNAPSHOTTER
  4. Overvåkning

Stratisd er demonen bak Stratis og hjelper til med å konfigurere lagringskomponenter under XFS-filsystemet og enhetsmapperundersystemet. For øyeblikket støtter Stratis LVM logiske volumer, harddisk, SSD -er, Nvme, og ISCIS lagringsenheter.

La oss nå ta et dykk og se på noen grunnleggende nøkkelbegrep

  1. Blockdev: Dette er en terminologi som refererer til å blokkere enheter.
  2. Basseng: Et basseng kan bestå av enten en enkelt eller flere blokkenheter. Et Stratis Pools størrelse vil være ekvivalent med summen av blokkenhetene som utgjør bassenget.
  3. Filsystem: Et filsystem er et tynt utstyrt lag hvis størrelse vokser etter hvert som mer informasjon eller data legges til. Størrelsen på et filsystem skaleres automatisk opp av Stratis når data vokser nesten til størrelsen på det virtuelle filsystemet.

Stratis Består av:

  1. Stratisd Daemon: En demon som gjør det mulig for en bruker å administrere blokkenheter.
  2. Stratis-Cli: Et kommandolinjeverktøy som følger med Stratis.

Installere stratis på RHEL 8

Etter å ha introdusert stratis, hva den gjør og dets komponenter, la oss nå installere lag på RHEL 8

For å installere Stratis på RHEL 8, logger du på som rotbruker og kjører kommandoen:

# DNF installer Stratisd Stratis-CLI

Når du blir bedt om det, skriv Y for å fortsette med installasjonen. Hvis alt gikk bra, bør du kunne få utdataene nedenfor som bekrefter at alt gikk bra.

For å bekrefte installasjonen av Stratis -pakkene, kjør kommandoen:

# Rpm -Q Stratisd Stratis -CLI

Starter Stratis Service på RHEL 8

For å starte Stratis -tjenesten, utfør kommandoen:

# SystemCTL Enable -Now Stratisd

Deretter må du bekrefte statusen til Stratis, ved å kjøre kommandoen:

# SystemCTL Status Stratisd

Fra utgangen over kan vi observere at Stratis er i gang.

Opprette et Stratis Pool

Før du begynner med å lage et Stratis -basseng, må du forsikre deg om at blokkeringsenhetene på systemet ditt har minimum 1 GB. I tillegg må disse enhetene bli demontert og ledig. I tillegg må Stratisd Daemon løpe. I vårt oppsett er det 5 blokkenheter bortsett fra den primære partisjonen:

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

Du kan ha et glimt av de eksisterende blokkenhetene ved å kjøre kommandoen:

# LSBLK

Det er også avgjørende å sikre at blokkeringsenhetene ikke har en eksisterende partisjonstabell.

Bekreft dette ved hjelp av syntaks:

# blkid -p /

For eksempel

# blkid -p /dev /xvdb

Ingen utgang innebærer at det ikke eksisterer noen partisjonstabell på blokkenhetene. I tilfelle en partisjonstabell eksisterer på en av enhetene, kan du imidlertid utslette partisjonen ved å bruke kommandoen:

# wipefs -a /

Opprette et Stratis Pool fra en blokkenhet

Du kan opprette et Stratis Pool fra en enkelt blokkenhet ved hjelp av syntaks:

# Stratis Pool Create

For eksempel for å lage et basseng basseng_1 Fra blokkeringsenheten /dev/xvdb løpe:

# Stratis Pool Create Pool_1 /Dev /XVDB

For å liste opp bassenget som er opprettet, løp:

# Stratis bassengliste

Fra utgangen over kan vi tydelig se at et nytt basseng, basseng_1 har blitt skapt.

Lag et Stratis Pool fra flere blokkenheter

For å opprette et basseng fra flere enheter, bruk syntaksen nedenfor som viser alle enhetene på en linje

# Stratis Pool Create

Å lage et basseng fra /dev/xvdc og /dev/xvdd Kjør kommandoen:

# Stratis Pool Create Pool_2/dev/xvdc/dev/xvdd/

Nok en gang, liste opp bassengene som er tilgjengelige ved hjelp av kommandoen:

# Stratis bassengliste

På dette tidspunktet bør du ha 2 bassenger: basseng_1 og basseng_2

Fra utgangen over kan vi tydelig merke at POOL_2 er dobbelt så stor som basseng_1 fordi den består av to blokkenheter, som hver har et fysisk volum på 10 GB.

Opprette et filsystem fra et basseng

Fra et av de tidligere opprettede Stratis -bassengene, kan du opprette et filsystem ved hjelp av syntaksen nedenfor:

# Stratis FS Create

For eksempel å lage et filsystem FS_1 fra basseng_1 Utfør kommandoen:

# Stratis FS Create Pool_1 FS_1

Du kan også opprette mer enn 1 filsystem fra ett basseng. I det andre bassenget lager vi 2 filsystemer:

FS_2
& fs_3
# Stratis FS Create Pool_2 FS_2
# Stratis FS Create Pool_2 FS_3

Nå, for å vise de nye filsystemene, utfør:

# Stratis FS -liste

For å liste opp filsystemer i et gitt basseng, bruk syntaks

# Stratis FS -liste

For eksempel, for å se filsystemene som eksisterer i basseng_1, kjør kommandoen: for eksempel:

# Stratis FS List Pool_1

For POOL_2 Kjør:

# Stratis FS List Pool_2

Som forventet har vi 2 filsystemer i det andre bassenget.

På dette tidspunktet å kjøre LSBLK Kommandoen vil gi utgang som ligner på den nedenfor:

Hvordan montere et Stratis -filsystem

For å få tilgang til filsystemene, må vi først og fremst montere dem. Det første trinnet vil være å lage monteringspunkter for hvert av filsystemene. Dette er oppsummert i tabellen nedenfor

Filsystem Mount Point
FS_1 /Oppbevaring
FS_2 /database
FS_3 /sikkerhetskopi

Så opprett det første monteringspunktet for filsystemet i basseng_1

# mkdir /lagring

Neste, monter filsystemet

# Mount /Stratis /Pool_1 /FS_1 /lagring

For å montere det andre filsystemet, følg den samme prosedyren:

# mkdir /database

Monter filsystemet:

# Mount /Stratis /Pool_2 /FS_2 /Database

Og til slutt for det siste filsystemet:

# mkdir /backup

Monter filsystemet:

# Mount /Stratis /Pool_2 /FS_3 /Backup

Du kan bekrefte eksistensen av monteringspunktene ved å bruke kommandoen:

# df -th | grep stratis

Lag Stratis Filsystems vedvarende

Filsystemene som vi nettopp har opprettet, vil ikke overleve en omstart. For å gjøre dem vedvarende, må vi legge dem til i /etc/fstab fil.

La oss først hente UUID av filsystemene 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 /lagring
XFS Standards 0 0 "| sudo tee -a /etc /fstab
# Echo "UUID = DDFA4252-A9D6-4C10-8981-E7DBD56450EE /Database
XFS Standards 0 0 "| sudo tee -a /etc /fstab
# ekko "uuid = 512bc0b7-182e-46ed-9fbd-d5be4d055fcf /backup
XFS Standards 0 0 "| sudo tee -a /etc /fstab

Du kan bekrefte tillegg av filsystemene til /etc/fstab som vist:

For at endringene skal tre i kraft i effekten på systemet, kjør kommandoen:

# SystemCTL Daemon-Reload

Monter deretter alle filsystemene

# Mount -A

Legge til en blokkenhet til et Stratis -basseng

For å legge til en blokkenhet til et eksisterende Stratis -basseng, kjør kommandoen:

# Stratis Pool Add-Data

For eksempel for å legge til blokkvolumet /dev/xvde til basseng_1 Kjør kommandoen:

# Stratis Pool add-data pool_1 /dev /xvde

Sjekk nå størrelsen på basseng_1

# Stratis bassengliste

Som observert, størrelsen på basseng_1 har doblet seg som et resultat av den ekstra blokkeringsenheten.

Opprette et stratis øyeblikksbilde

Et Stratis -filsystem er en eksakt kopi eller kopi av et annet Stratis -filsystem. Det inneholder samme innhold som det originale filsystemet. Imidlertid kan et øyeblikksbilde senere endres, og det vil deretter eksistere forskjeller mellom øyeblikksbildet og det originale filsystemet.

Her er noen få ting du også bør vite:

  1. Et øyeblikksbilde av et filsystem er ganske enkelt et annet replika -filsystem.
  2. Du trenger ikke å montere et filsystem for å kunne lage et øyeblikksbilde fra det.
  3. Et snapshotted filsystem kan overleve det originale filsystemet det ble opprettet fra

For å lage et øyeblikksbilde, bruk syntaks:

# Stratis FS Snapshot

For eksempel å lage et øyeblikksbilde som heter Snapshot_1 i basseng_1 Kjør kommandoen

# Stratis FS Snapshot Pool_1 FS_1 Snapshot_1

Dette vil ta omtrent 30 sekunder.

For å bekrefte opprettelsen av øyeblikksbildet, utfør:

# Stratis Filsystem List

I dette tilfellet vil kommandoen være:

# Stratis Filesystem List Pool_1

I tillegg kan du legge til datoattributtet (-$ (dato +%y-%m-%d) å enkelt identifisere når øyeblikksbildet ble opprettet. La oss lage et nytt øyeblikksbilde ved hjelp av det andre bassenget.

# Stratis FS Snapshot Pool_2 FS_2 Snapshot_2-$ (Dato +%Y-%M-%D)

For å liste opp det nyopprettede Stratis Snapshot -problemet kommandoen:

# Stratis Filesystem List Pool_2

Fra utgangen over kan vi se et øyeblikksbilde opprettet i basseng_2 med en datakode.

Hvordan gå tilbake til et tidligere øyeblikksbilde ved hjelp av et filsystem

For å gå tilbake til et tidligere øyeblikksbilde ved hjelp av et filsystem, må du først demontere og ødelegge det originale filsystemet.

# Umount /Stratis //filsystem

For eksempel i basseng_2 å gå tilbake til Snapshot_2 Monter filsystemet FS_2

# Umount/Stratis/Pool_2/FS_2

Neste, lag en kopi av øyeblikksbildet fra det originale filsystemet

# Stratis Filesystem Snapshot
Snapshot FS-Mountpoint

Kommandoen vil være:

# Stratis Filesystem Snapshot Pool_2 Snapshot_2-2019-11-15 Database

Til slutt, monter øyeblikksbildet ved å bruke filsystemets monteringspunkt

# Mount /Stratis /Pool_2 /FS_2 /Database

Fjerne et stratis øyeblikksbilde

For å fjerne et stratis øyeblikksbilde, må du først mount øyeblikksbildet.

# umount /snapshot_mountpoint

For å fjerne øyeblikksbildet som er opprettet i basseng_2, Felt mountpoint som vist

# umount /database

Neste, fortsett og ødelegge øyeblikksbildet:

# Stratis filsystem ødelegger

Kommandoen vil være:

# Stratis Filesystem Destroy Pool_2 Snapshot_2-2019-11-15

Prøv nå å liste opp filsystemene i basseng_2. Du vil merke at øyeblikksbildet nå er borte.

# Stratis Filesystem List Pool_2

Fjerne et Stratis -filsystem

For å bli kvitt et filsystem, må du først demontere filsystemet ved å bruke syntaks nedenfor:

# Umount/Stratis/Pool/Filsystem

For eksempel for å fjerne filsystemet FS_1 i basseng_1, Først den først som vist:

# Umount/Stratis/Pool_1/FS_1

Deretter ødelegger du filsystemet ved å bruke syntaksen nedenfor:

# Stratis Filesystem Destroy Pool FS

I vårt scenario vil kommandoen være:

# Stratis Filesystem Destroy Pool_1 FS_1

For å bekrefte at filsystemet ble fjernet med hell, kjør kommandoen:

# Stratis Filesystem List Pool_1

Som du kan observere, eksisterer ikke filsystemet lenger.

Fjerne et stratisbasseng

Til slutt, la oss se hvordan du kan fjerne et Stratis -basseng.

For å fjerne et Stratis -basseng, må du demontere og ødelegge alle filsystemer og øyeblikksbilde i bassenget som vi så i de forrige subtemaene.

Siden det er et øyeblikksbilde som er igjen på basseng_1, kommer vi først til å fjerne det ved først å fjerne monteringspunktet tilknyttet øyeblikksbildet

# Umount /lagring

Neste, ødelegge filsystemet.

# Stratis Filesystem Destroy Pool_1 Snapshot_1

Med øyeblikksbildet som nå er fjernet, fjern Pool_1 ved å bruke kommandoen

# Stratis Pool Destroy Pool_1

Liste nå bassengene som er tilgjengelige:

# Stratis bassengliste

Å fjerne basseng_2 , La oss først liste opp filsystemene

# Stratis Filesystem List Pool_2

Monter og ødelegger filsystemene som vist

# Umount/Stratis/Pool_2/FS_3
# Stratis Filesystem Destroy Pool_2 FS_3
# Stratis Filesystem Destroy Pool_2 -databasen

Deretter ødelegger bassenget og lister bassengene

# Stratis Pool Destroy Pool_2
# Stratis bassengliste

Perfekt ! Alle bassenger er borte nå. Vi har gått tilbake dit vi startet ! Du kan bekrefte igjen ved å liste opp låsenhetene ved å bruke kommandoen:

Og hvordan du kan bruke den til å administrere blokkeringsenheter, lage øyeblikksbilder, filsystemer og bassenger og fjerne dem også. Dine tanker og tilbakemeldinger er hjertelig velkomne.