Opsætning af tynde volumener til logisk lydstyrke (LVM) - del IV


Logisk lydstyringsstyring har fantastiske funktioner såsom snapshots og tynd levering. Tidligere i (del - III) har vi set, hvordan man tager et logisk volumen. Her i denne artikel vil vi se, hvordan du opsætter tynde provisioneringsvolumener i LVM.

Thin Provisioning bruges i lvm til oprettelse af virtuelle diske inde i en tynd pool. Lad os antage, at jeg har en 15 GB lagerkapacitet på min server. Jeg har allerede 2 klienter, der hver har 5 GB lagerplads. Du er den tredje klient, du bad om 5 GB lagerplads. Dengang bruger vi til at levere hele 5 GB (tykt volumen), men du kan bruge 2 GB fra det 5 GB lager og 3 GB vil være gratis, som du kan udfylde det senere.

Men hvad vi gør i tynd tilvejebringelse er, vi bruger til at definere en tynd pool inde i en af de store volumengrupper og definere de tynde volumener inde i den tynde pool. Så uanset hvilke filer du skriver vil blive gemt, og din opbevaring vil blive vist som 5 GB. Men den fulde 5 GB tildeler ikke hele disken. Den samme proces udføres også for andre klienter. Som jeg sagde er der 2 klienter, og du er min 3. klient.

Så lad os antage, hvor meget samlet GB jeg har tildelt til klienter? I alt 15 GB var allerede afsluttet. Hvis nogen kommer til mig og beder om 5 GB, kan jeg give det? Svaret er " Ja ", her i tynd levering kan jeg give 5 GB til 4. klient, selvom jeg har tildelt 15 GB.

Advarsel: Fra 15 GB kaldes det Over Provisioning, hvis vi forsyner mere end 15 GB.

Jeg har givet dig 5GB, men du har kun brugt 2GB, og andre 3GB vil være gratis. I Thick Provisioning kan vi ikke gøre dette, fordi det tildeler hele rummet først selv.

I tynd Provisioning, hvis jeg definerer 5 GB for dig, tildeler den ikke hele diskpladsen, mens der defineres en lydstyrke, den vokser til 5 GB i henhold til din dataskrivning, håber du har det! samme som dig, vil andre klienter heller ikke bruge de fulde diskenheder, så der vil være en chance for at tilføje 5 GB til en ny klient. Dette kaldes over Provisioning.

Men det er obligatorisk at overvåge hver eneste volumenvækst, hvis ikke ender det i en katastrofe. Mens overprovisionering er udført, hvis alle de 4 klienter skriver dataene dårligt til disken, kan du blive udsat for et problem, fordi det vil fylde din 15 GB og løbe over for at få slip på diskenhederne.

  1. Opret disklagring med LVM i Linux - DEL 1
  2. Sådan udvides/reduceres LVM'er i Linux - del II
  3. Sådan oprettes/gendannes øjebliksbillede af logisk volumen i LVM - del III

  1. Operativsystem - CentOS 6.5 med LVM-installation
  2. Server IP - 192.168.0.200

Trin 1: Opsætning af tynd pool og volumener

Lad os gøre det praktisk, hvordan du opsætter den tynde pool og tynde volumener. Først har vi brug for en stor størrelse af Volume-gruppen. Her opretter jeg Volume-gruppe med 15 GB til demonstrationsformål. Liste nu over lydstyrkegruppen ved hjælp af kommandoen nedenfor.

# vgcreate -s 32M vg_thin /dev/sdb1

Dernæst skal du kontrollere størrelsen på tilgængelighed af logisk volumen, inden du opretter den tynde pool og diskenheder.

# vgs
# lvs

Vi kan se, at der kun er standardlogiske volumener til filsystem, og swap er til stede i ovenstående lvs-output.

For at oprette en tynd pool til 15 GB i volumengruppe (vg_thin) skal du bruge følgende kommando.

# lvcreate -L 15G --thinpool tp_tecmint_pool vg_thin

  1. -L - Volumengruppens størrelse
  2. –thinpool - At o oprette en thinpool
  3. tp_tecmint_pool - Tyndt poolnavn
  4. vg_thin - Volumengruppenavn, hvis vi havde brug for at oprette puljen

For at få flere detaljer kan vi bruge kommandoen 'lvdisplay'.

# lvdisplay vg_thin/tp_tecmint_pool

Her har vi ikke oprettet virtuelle tynde volumener i denne tynde pool. På billedet kan vi se tildelte pooldata, der viser 0.00% .

Nu kan vi definere tynde volumener inde i den tynde pool ved hjælp af 'lvcreate' kommando med option -V (Virtual).

# lvcreate -V 5G --thin -n thin_vol_client1 vg_thin/tp_tecmint_pool

Jeg har oprettet en tynd virtuel diskenhed med navnet thin_vol_client1 inde i tp_tecmint_pool i min vg_thin volumengruppe. Liste nu over de logiske diskenheder ved hjælp af kommandoen nedenfor.

# lvs 

Netop nu har vi oprettet det tynde volumen ovenfor, derfor er der ingen data, der viser 0,00% M .

Fint, lad mig oprette 2 flere tynde bind for andre 2 klienter. Her kan du se nu er der 3 tynde diskenheder oprettet under puljen ( tp_tecmint_pool ). Så fra dette tidspunkt blev vi klar over, at jeg har brugt hele poolen på 15 GB.

Opret nu monteringspunkter og monter disse tre tynde bind og kopier nogle filer i det ved hjælp af nedenstående kommandoer.

# mkdir -p /mnt/client1 /mnt/client2 /mnt/client3

Liste over de oprettede mapper.

# ls -l /mnt/

Opret filsystemet til disse oprettede tynde diskenheder ved hjælp af kommandoen 'mkfs'.

# mkfs.ext4 /dev/vg_thin/thin_vol_client1 && mkfs.ext4 /dev/vg_thin/thin_vol_client2 && mkfs.ext4 /dev/vg_thin/thin_vol_client3

Monter alle tre klientvolumener til det oprettede monteringspunkt ved hjælp af 'mount' -kommandoen.

# mount /dev/vg_thin/thin_vol_client1 /mnt/client1/ && mount /dev/vg_thin/thin_vol_client2 /mnt/client2/ && mount /dev/vg_thin/thin_vol_client3 /mnt/client3/

Angiv monteringspunkterne ved hjælp af kommandoen 'df'.

# df -h

Her kan vi se alle de 3 klientvolumener er monteret, og derfor bruges kun 3% af data i alle klientvolumener. Så lad os tilføje nogle flere filer til alle 3 monteringspunkter fra mit skrivebord for at fylde lidt plads.

Angiv nu monteringspunktet, og se den plads, der er brugt i hvert tyndt volumen, og anfør den tynde pool for at se størrelsen, der bruges i poolen.

# df -h
# lvdisplay vg_thin/tp_tecmint_pool

Ovenstående kommando viser, de tre monteringspints sammen med deres størrelser i procent.

13% of datas used out of 5GB for client1
29% of datas used out of 5GB for client2
49% of datas used out of 5GB for client3

Mens vi kigger ind i den tynde pool, kan vi kun se 30% af data er skrevet totalt. Dette er det samlede antal over tre klienters virtuelle diskenheder.

Nu kom 4. klienten til mig og bad om 5 GB lagerplads. Kan jeg give? Fordi jeg allerede havde givet 15 GB pool til 3 klienter. Er det muligt at give 5 GB mere til en anden klient? Ja det er muligt at give. Dette er når vi bruger Overprovisioning , hvilket betyder at give pladsen mere end hvad jeg har.

Lad mig oprette 5 GB til 4. klient og kontrollere størrelsen.

# lvcreate -V 5G --thin -n thin_vol_client4 vg_thin/tp_tecmint_pool
# lvs

Jeg har kun 15 GB størrelse i poolen, men jeg har oprettet 4 diskenheder i tynd-pool op til 20 GB. Hvis alle fire klienter begynder at skrive data til deres diskenheder for at udfylde tempoet, vil vi på det tidspunkt stå over for en kritisk situation, hvis ikke, vil der ikke være noget problem.

Nu har jeg oprettet filsystem i thin_vol_client4 , derefter monteret under /mnt/client4 og kopieret nogle filer i det.

# lvs

Vi kan se på ovenstående billede, at den samlede anvendte størrelse i den nyoprettede klient 4 op til 89,34% og størrelsen af den tynde pool som 59,19% brugt. Hvis alle disse brugere ikke skriver dårligt til volumen, er det fri for overløb, slip. For at undgå overløb er vi nødt til at udvide den tynde poolstørrelse.

Vigtigt: Tynde puljer er bare en logisk lydstyrke, så hvis vi har brug for at udvide størrelsen af tynde puljer, kan vi bruge den samme kommando som vi har brugt til at udvide de logiske mængder, men vi kan ikke reducere størrelsen af tynde -pool.

# lvextend

Her kan vi se, hvordan man udvider den logiske tynde pool ( tp_tecmint_pool ).

# lvextend -L +15G /dev/vg_thin/tp_tecmint_pool

Skriv derefter den tynde poolstørrelse op.

# lvs

Tidligere var vores tp_tecmint_pool størrelse 15 GB og 4 tynde diskenheder, hvilket var mere end 20 GB. Nu er den udvidet til 30 GB, så vores over-provisionering er blevet normaliseret, og tynde mængder er fri for overløb, slip. På denne måde kan du tilføje stadig flere tynde volumener til puljen.

Her har vi set, hvordan man opretter en tynd-pool ved hjælp af en stor størrelse af volumengruppe og opretter tynde volumener inde i en tynd-pool ved hjælp af Over-Provisioning og udvidelse af poolen. I den næste artikel vil vi se, hvordan du opsætter en lvm Striping.