Storage
6/7 Opslag onder Linux 6/7.1
Werken met logische volumes
Als u SuSE Linux installeert, worden er partities aangemaakt. Bij een SLES-installatie, is dat standaard een swappartitie en een root-partitie. Hierbij krijgen partities een vaste hoeveelheid schijfruimte toegewezen en ligt ook de relatie tussen een partitie en een vaste schijf bij voorbaat vast. In moderne serveromgevingen is vaak behoefte aan meer flexibiliteit. Het werken met logische volumes biedt hiervoor een oplossing. Er zijn twee systemen die op Linux kunnen worden gebruikt om te werken met logische volumes. Om te beginnen is er de Logical Volume Manager (LVM). Dit systeem wordt op de meeste Linux-distributies als standaard gebruikt en heeft zichzelf inmiddels al aardig bewezen wat betreft stabiliteit en andere mogelijkheden. Daarnaast is er het Enterprise Volume Management System (EVMS). Dit systeem is door IBM ontwikkeld en wordt momenteel op minder brede schaal ingezet. Voor beheerders in een Novell-omgeving is er echter een reden kennis op te doen van EVMS: op OES – Linux hebt u dit volume management system namelijk nodig om te kunnen werken met NSSvolumes. Omdat beide systemen op dit moment even belangrijk zijn, besteden we in dit artikel aandacht aan beide oplossingen. 6/7.1.1 Logical Volume Manager Het doel van de logical volume-manager is om de volumes die worden gebruikt om bestanden op te slaan, van daad-
Novell Netwerkoplossingen, aanvulling 17
6/7.1-1
Opslag onder Linux
werkelijke opslagruimte te abstraheren. Voor dit doel wordt gewerkt met een aantal extra lagen voor de opslag van gegevens.
Volume group
Ook in een LVM-omgeving blijft de partitie het uitgangspunt. U moet schijfruimte toewijzen die beschikbaar is voor de volume-manager, en dat kan alleen door eerst die schijfruimte toe te kennen aan een of meer partities. Vrije ruimte uit partities wordt vervolgens verzameld in een virtuele verzameling van alle vrije schijfruimte: de volume group. In deze volume group is niet langer zichtbaar van welk device vrije schijfruimte in een bepaalde partitie beschikbaar is. Het besturingssysteem werkt met de volume groups, en niet langer direct met de partities. Het toevoegen of verwijderen van devices – of dit nu harde schijven zijn of partities maakt niet uit – gebeurt op dynamische wijze: hiervoor is het niet nodig eerst devices te mounten of unmounten. Ook het omgekeerde is mogelijk: devices kunnen zonder probleem uit de Logical Volume Group worden verwijderd. Vanuit de Logical Volume Group worden vervolgens logische volumes aangemaakt. Omdat het medium waarvan de vrije ruimte beschikbaar wordt gesteld op dit niveau door de Logical Volume Group is geabstraheerd, is er op volumeniveau geen kennis meer van het device dat daadwerkelijk op de achtergrond wordt gebruikt. Hierdoor is het mogelijk om het volume dynamisch te vergroten of te verkleinen of om het volume op voorhand niet eens een begrenzing mee te geven in beschikbare schijfruimte: door middel van een quotum hoeft dan alleen maar te worden aangegeven wat de schijfruimte is die maximaal beschikbaar wordt gesteld. Om het beheer van logische volumes wat te vereenvoudigen, kunnen bovendien namen aan de volumes worden toegekend in plaats van device-namen. Hierdoor wordt het
6/7.1-2
Novell Netwerkoplossingen, aanvulling 17
Storage
voor de beheerder eenvoudiger te herkennen met welke gegevens hij precies aan het werk is. De meest voor de hand liggende wijze om logische volumes aan te maken, is gebruik te maken van het partitioneringsprogramma van uw distributie. Alleen fdisk is niet voldoende omdat fdisk immers geen kennis heeft van de Logical Volume Group en Logical Volumes. Om een of meer logische volumes te definiëren, moet achtereenvolgens een aantal stappen worden uitgevoerd: • Er moet een partitie worden aangemaakt die wordt toegewezen aan LVM. Deze taak zou ook met fdisk kunnen worden uitgevoerd; het enige wat hoeft te gebeuren, is dat het juiste partitie-ID aan de betreffende partitie wordt verbonden. • De Logical Volume Group moet worden aangemaakt. • De Logical Volumes zelf moeten worden aangemaakt. In de volgende procedure leest u in detail hoe logische volumes worden gecreëerd. We gaan hierbij uit van een bestaand systeem waarop een lege vaste schijf beschikbaar is. Als alternatief is het ook mogelijk deze procedure uit te voeren tijdens de installatie van uw server. 1. Start YaST, geef het wachtwoord van de gebruiker root en kies vervolgens System > Partitioner. Negeer de waarschuwing en klik Yes om verder te gaan. 2. Klik op Create om een nieuwe partitie aan te maken. Selecteer een schijf waarop nog ruimte beschikbaar is die niet aan partities is toegekend en klik vervolgens op OK. Geef nu aan welk type partitie u wilt aanmaken. Het maakt voor LVM niet uit of dit een primaire partitie is of een logische partitie binnen een extended partitie.
Novell Netwerkoplossingen, aanvulling 17
6/7.1-3
Opslag onder Linux
Om LVM-volumes te maken, creëert u eerst in de YaST Expert partitioner een of meer LVMpartities.
3.
6/7.1-4
Vul nu de eigenschappen in van de partitie die u wilt aanmaken. Om te beginnen kiest u de optie Do not format. Selecteer dan uit de uitschuiflijst onder File system ID de optie 0x8E Linux LVM. Specificeer vervolgens de grootte die u aan de partitie wilt toekennen en klik dan op OK om hem aan te maken.
Novell Netwerkoplossingen, aanvulling 17
Storage
Om met LVM te werken, maakt u eerst een partitie aan met het juiste partitie-ID.
4.
Klik nu vanuit de expert partitioner in YaST op LVM. U ziet nu het venster waarin u de volume group kunt definiëren. In dit venster geeft u om te beginnen een naam aan de volume group. Standaard is deze naam system, maak daar iets anders van als u een betere suggestie hebt voor uw omgeving. Vervolgens moet u de physical extend size opgeven. U kunt dit het best vergelijken met een blokgrootte die wordt gebruikt bij het aanmaken van logische volumes. Standaard is de physical extend size ingesteld op 4 MB. Dit betekent dat het vergroten of verkleinen van een logisch volume altijd moet plaatsvinden in stappen van 4 MB. Met een physical extend size van 4 MB kunt u logische volumes aanmaken van maximaal 256 GB. Is dat niet genoeg voor u? Dan kunt u de physical
Novell Netwerkoplossingen, aanvulling 17
6/7.1-5
Opslag onder Linux
extend size groter instellen. Gebruik bijvoorbeeld 16 MB om logische volumes aan te maken van een terabyte.
Bij het aanmaken van een volume group is de physical extend size een belangrijke parameter.
Tot slot is er de optie Use Old LVM1 Compatible Metadata Format. Deze optie zorgt ervoor dat uw logische volumes ook in LVM-1-stijl toegankelijk zijn. Dit is belangrijk als u bijvoorbeeld back-up-software hebt die nog niet met LVM2-volumes overweg kan. Is dit in uw situatie niet van toepassing? Selecteer deze optie dan niet en klik op OK om verder te gaan. U komt nu in het Physical Volume Setupscherm van de Logical Volume Manager.
6/7.1-6
Novell Netwerkoplossingen, aanvulling 17
Storage
Vanuit het Physical Volume Setup-scherm kunt u meerdere partities toewijzen aan een Logical Volume Group.
5.
Vanuit het Physical Volume Setup-scherm kunt u meerdere Logical Volume Groups aanmaken en beheren. Standaard zult u hier precies één volume group zien staan en dat is ook voldoende voor een normale Linux-installatie. Als u deze volume group hebt geselecteerd, ziet u onder in het scherm welke partities er op dat moment allemaal aan de volume group zijn toegekend. Als er partities zijn die met het type 0x8E zijn aangemaakt en nog niet aan de volume group zijn toegekend, kunt u dit vanuit dit scherm doen: selecteer de partitie en klik vervolgens op Add Volume om hem aan de volume group toe te voegen. Tevreden met de logical volume groups die op dit moment zijn aangemaakt? Klik dan op Next om ver-
Novell Netwerkoplossingen, aanvulling 17
6/7.1-7
Opslag onder Linux
der te gaan. U komt nu in het Logical Volumesscherm van waaruit de logische volumes kunnen worden beheerd en aangemaakt.
Vanuit dit scherm kunt u logische volumes aanmaken.
6.
6/7.1-8
In het Logical Volumes-scherm kunt u een volume group selecteren. U ziet vervolgens voor die volume group welke volumes er op dat moment allemaal bestaan. Als dit de eerste keer is dat u dit scherm ziet, zal de volledige ruimte die aan de volume group is toegekend als vrij zijn gemarkeerd. Ook ziet u een lijst met alle mount points die op dit moment al op uw server bestaan. Dit kan verwarrend werken: om alleen de inhoud van de huidige volume group te selecteren, is het handig de optie View all mount points, not just the current volume group te deselec-
Novell Netwerkoplossingen, aanvulling 17
Storage
teren. U kunt nu een logisch volume aanmaken door op Add te klikken.
Bij het aanmaken van een logisch volume maakt u gebruik van een aantal bijzondere opties.
7.
Nu mag u opgeven hoe het logische volume moet worden aangemaakt. Om te beginnen geeft u een naam aan het volume. Noem het bijvoorbeeld data als dit het volume wordt waarop u gegevens van gebruikers gaat opslaan. Specificeer dan hoe groot het volume moet worden. Wilt u op een volume van 400 GB twee volumes aanmaken maar weet u nog niet precies hoe groot ze moeten worden? Geef ze dan beide een eerder beperkte ruimte, het is namelijk heel eenvoudig om later alsnog een volume te vergroten maar niet mogelijk om het in een later stadium kleiner te maken. Dan geeft u aan hoeveel stri-
Novell Netwerkoplossingen, aanvulling 17
6/7.1-9
Opslag onder Linux
pes er moeten worden aangemaakt. Als u 1 stripe selecteert, worden bestanden altijd weggeschreven op hetzelfde fysieke device. Bestaat uw volume uit opslagruimte die op vier devices voorkomt? Dan kunt u een betere performance bereiken door voor vier stripes te kiezen. Let wel op dat u nooit meer stripes kunt kiezen dan dat er devices zijn waaruit het volume is aangemaakt. Tot slot zijn er de normale opties die u ook bij het aanmaken van een normale partitie moet opgeven. Hier geeft u aan wat het mount-punt is en welk bestandssysteem op het volume moet worden aangemaakt. Klaar met invoeren van alle opties? Klik dan op OK om het volume aan te maken. U ziet dat het nieuwe volume in het Logical Volumes-scherm automatisch wordt toegevoegd aan de lijst van beschikbare devices. Let ook even op de naam van het device: als u eenmaal doorhebt met welke naam dit device wordt aangemaakt, is het echt eenvoudig. Onder de directory /dev wordt een device aangemaakt voor de Logical Volume Group. In dit device wordt vervolgens voor elk logisch volume een apart device gemaakt. Het volume data in het device system wordt dus bekend onder de device-naam /dev/system/data.
6/7.1-10
Novell Netwerkoplossingen, aanvulling 17
Storage
Na aanmaken van een logisch volume wordt het automatisch aan de lijst van devices op uw systeem toegevoegd.
8.
Klik nu op Next om verder te gaan. U komt nu terug in het hoofdscherm van de partitionerings-utility. Hier ziet u dat er op uw vaste schijf een aantal devices is bijgemaakt. Deze devices zorgen ervoor dat het logische volume op de juiste wijze kan worden opgeslagen. Klik nu op Apply om uw wijzigingen op te slaan. Klik nogmaals op Apply om aan te geven dat u de wijzigingen werkelijk naar de vaste schijf van uw systeem wilt wegschrijven en selecteer dan de optie Quit om het partitioneringsprogramma af te sluiten.
6/7.1.2 LVM configureren zonder YaST In het voorgaande hebt u gelezen hoe u LVM kunt configureren met behulp van YaST. Leuk, maar misschien hebt u
Novell Netwerkoplossingen, aanvulling 17
6/7.1-11
Opslag onder Linux
wel een andere distributie dan SuSE Linux en dan hebt u niet veel aan deze informatie. Gelukkig zijn er de nodige opdrachten die u kunt uitvoeren om logische volumes aan te maken. Hierna wordt uiteengezet hoe u eerst een schijf of partitie kunt initialiseren voor gebruik van LVM, vervolgens een volume group aanmaakt en activeert en dan van daaruit volumes toevoegt aan de Logical Volume Group. Ook leert u hoe u een bestaand volume weer kleiner kunt maken: een taak die met YaST niet kan worden uitgevoerd. Initialiseren van een schijf voor gebruik van LVM Voordat u logische volumes kunt aanmaken, moet u eerst het device waarop u aan het werk wilt, hiervoor geschikt maken. Dit betekent dat u een zogenaamde volume group descriptor aanmaakt aan het begin van het device. Dit is een beschrijving waardoor het besturingssysteem kan zien dat er LVM-volumes op het device kunnen worden aangemaakt. Als u een partitie wilt gebruiken met LVM, moet u er tevens voor zorgen dat de partitie is aangemaakt met het type 0x8E. Om de volume group descriptor aan te maken, gebruikt u de opdracht pvcreate; met het volgende commando markeert u /dev/sdb1 als LVM-partitie: # pvcreate /dev/sdb1
Beheer van Logical Volume Groups Nadat u een partitie voor gebruik door de logische volumemanager hebt gemarkeerd, moet u een volume group aanmaken. Hiervoor maakt u gebruik van het commando vgcreate. Als u geen speciale opties nodig hebt om bijvoorbeeld te werken met een andere grootte dan de standaard grootte van 32 MB voor de extend size, is het aanmaken van een volume group niet moeilijk. De volgende opdracht maakt bijvoorbeeld een volume group aan waarin zowel /dev/sdb1 als /dev/sdc1 zijn toegevoegd:
6/7.1-12
Novell Netwerkoplossingen, aanvulling 17
Storage
# vgcreate system /dev/sdb1 /dev/sdc1
Deze opdracht zorgt ervoor dat de volume group automatisch beschikbaar wordt gemaakt. Dit is echter een eenmalige actie. Dit betekent dat de volgende keer dat u uw systeem opstart, de volume group niet automatisch wordt geactiveerd. Dit doet u door het volgende commando uit te voeren: # vgchange -a y system
In dit commando is system de naam van de volume group, houd in de gaten dat er geen enkele eis is om de volume group inderdaad system te noemen; u zou hem net zo goed sinterklaas kunnen noemen. De optie -a geeft aan dat de activeringsstatus van de volume group moet worden aangepast en met de y bepaalt u dat deze status moet worden ingesteld op yes. U kunt natuurlijk elke keer dat uw systeem opnieuw wordt gestart deze opdracht handmatig uitvoeren, wij raden u echter aan uw bootprocedure zo aan te passen dat het activeren van de volume group automatisch gebeurt. Een laatste taak die nuttig is bij het werken met LVM, is het toevoegen van devices aan een volume group. Dit is bijvoorbeeld relevant wanneer de vrije ruimte in uw volume group bijna op is en u dus een nieuwe harddisk wilt toevoegen. Als de schijf in kwestie is geïnitialiseerd voor gebruik met lvm, is dit vrij eenvoudig: u doet dit door het volgende commando te gebruiken: # vgextend system /dev/sdd1
Eveneens kunt u deze media vervolgens weer uit de volume group verwijderen. Hiervoor maakt u gebruik van de
Novell Netwerkoplossingen, aanvulling 17
6/7.1-13
Opslag onder Linux
opdracht vgreduce. Dit zal echter een opdracht zijn die u niet vaak uitvoert: u kunt een device namelijk alleen verwijderen wanneer er geen logische volumes zijn die ruimte op het device in gebruik hebben. Als dat inderdaad het geval is, gebruikt u de volgende opdracht om een device uit de volume group te verwijderen: # vgreduce system /dev/sdd1
Als dan de volume group helemaal naar wens is aangemaakt, kunt u nu bekijken hoe het zit met de status ervan. Hiervoor is er de opdracht vgdisplay; geef deze opdracht gevolgd door de naam van het volume waarvan u de status wilt bekijken en alle eigenschappen van het volume worden getoond.
Gebruik de opdracht vgdisplay om de eigenschappen van een volume group te bekijken.
6/7.1-14
Novell Netwerkoplossingen, aanvulling 17
Storage
Beheer van logische volumes Nu de volume group naar wens is aangemaakt, kunt u er logische volumes in aanmaken. Hiervoor gebruikt u de opdracht lvcreate. Als u geen verdere wensen hebt, is het aanmaken van een volume niet moeilijk. Om bijvoorbeeld in het volume group system een volume aan te maken met de naam apps en een grootte van 1000 MB, gebruikt u de volgende opdracht: # lvcreate -L1000 -napps system
Bij het aanmaken van een volume kunt u echter ook de nodige opties meegeven. U kunt bijvoorbeeld specificeren dat het volume moet worden aangemaakt met drie stripes en een stripe-grootte van 8 KB: # lvcreate -i3 -I8 -l1000 -napps system
Ook kan het handig zijn een volume toe te wijzen aan een specifiek device. Hiervoor moet het betreffende device natuurlijk wel deel uitmaken van de volume group: # lvcreate -L1000 -napps system /dev/sdd
Naast het aanmaken is het ook mogelijk logische volumes weer te verwijderen uit een volume group. Ook dit is niet echt moeilijk, als u er maar eerst voor zorgt dat het volume op dat moment niet actief is: # umount /dev/system/apps # lvremove /dev/system/apps
Verkleinen en vergroten van een logisch volume Het verkleinen van een logisch volume is één ding, daarmee bent u er echter nog niet. Naast het volume zelf
Novell Netwerkoplossingen, aanvulling 17
6/7.1-15
Opslag onder Linux
Reiserfs
bestaat er op het volume namelijk ook een bestandssysteem en ook dit bestandssysteem moet in grootte worden aangepast. Als u het volume wel en het bestandssysteem niet zou verkleinen, dan zou u daarna een groot probleem hebben. Om deze taak met succes te kunnen uitvoeren, is het van belang welk bestandssysteem u op de betreffende partitie gebruikt. Bij het werken met ext2/ext3 zijn er op het moment dat dit werd geschreven nog wat problemen; om te voorkomen dat u op onze aanwijzingen de totale inhoud van een volume verwijdert, behandelen we deze bestandssystemen hier dus niet. Als u daarentegen gebruikmaakt van reiserfs, is het verkleinen van een bestaand volume geen probleem. In de volgende opdrachten ziet u hoe u eerst het volume in kwestie offline brengt, vervolgens eerst het bestandssysteem verkleint en daarna het volume zelf: # umount /data # resize_reiserfs -s-1G /dev/system/data # lvreduce -L-1G /dev/system/data # mount -t reiserfs /dev/system/data /data
Naast het verkleinen van een volume is het ook goed mogelijk een volume weer te vergroten. Hiervoor wordt de omgekeerde volgorde gevolgd als bij het verkleinen van een volume. Als eerste wordt de grootte van het volume zelf aangepast met de opdracht lvextend, dan moet het bestandssysteem in grootte worden aangepast. Op een reiserfs-bestandssysteem doet u dit met de volgende twee opdrachten: # lvextend -L+10G /dev/system/data # resize_reiserfs -f /dev/system/data
6/7.1-16
Novell Netwerkoplossingen, aanvulling 17
Storage
Het vergroten van ext3-volumes is ook mogelijk. Dit doet u met behulp van de opdracht e2fsadm. Het lijkt wellicht merkwaardig dat voor dit doel gebruik wordt gemaakt van een opdracht die is geschreven voor ext2, maar dit komt omdat ext3 feitelijk equivalent is aan ext2 met als enige verschil dat er een journal aan het volume is toegevoegd. Om een ext3-volume te vergroten, hebt u aan één opdracht voldoende: # e2fsadm -L+10G /dev/system/data
Snapshots maken van een LVM-volume Een van de aardige opties van het gebruik van LVM is dat er een mogelijkheid is snapshots te maken. Een snapshot is een nieuw block-device waarin u een volledige kopie maakt van een logisch volume. Dit feature is in het bijzonder handig om ervoor te zorgen dat een back-up kan worden gemaakt van een volume waarop bestanden openstaan. Maak in dat geval eerst de snapshot en vervolgens kunt u het snapshot-device meenemen in uw back-up. Het grote voordeel is dat snapshot een ander device gebruikt dan uw originele device: u hebt dus niets meer te maken met openstaande bestanden. Een ander voordeel van het werken met snapshots is dat u er in de laatste versie van LVM (versie 2) ook gegevens naartoe kunt schrijven. Dit kan handig zijn voor testdoeleinden; bijvoorbeeld om een nieuwe toepassing uit te proberen. Installeer de toepassing, laat de toepassing alle wijzigingen wegschrijven naar het snapshot-device in plaats van het originele device, kijk of u blij bent met wat de toepassing gedaan heeft. Is dat niet het geval? Dan kunt u het snapshot-device gewoon weer weggooien terwijl er niets aan uw originele device is veranderd.
Novell Netwerkoplossingen, aanvulling 17
6/7.1-17
Opslag onder Linux
In de volgende procedure leest u hoe u vanaf de commandoregel een snapshot volume kunt aanmaken: 1. We maken hiervoor gebruik van de opdracht lvcreate om een snapshot aan te maken met de veelzeggende naam ‘databackup’. Het snapshot wordt aangemaakt in de system-pool om de eenvoudige reden dat zich hier ook het volume bevindt waarvan u de snapshot wilt aanmaken. Let even op de grootte die u gebruikt voor het snapshot-device: het is niet nodig dit even groot te maken als het originele volume. Er worden namelijk alleen wijzigingen naar het snapshot-device weggeschreven. Om de bovengenoemde procedure uit te voeren, gebruikt u het volgende commando: # lvcreate -L500M -s -n databackup /dev/system/data
2.
Uw server antwoordt vervolgens met de eenvoudige mededeling: “Logical volume “databackup” created”. Om een back-up te maken van het snapshot-volume, is het handig het volume eerst te mounten. Dit gebeurt niet anders dan het mounten van willekeurig welk ander volume. Gebruik bijvoorbeeld de twee volgende opdrachten: # mkdir /media/system/databackup # mount /dev/system/databackup /media/ system/databackup
3.
4.
6/7.1-18
Wanneer u het snapshot-volume hebt gemount, kunt u er een back-up van maken. Maak daarvoor gebruik van uw reguliere back-upprogramma, of doe gewoon tar -cvf /dev/rmt0 /media/system/databackup. Als dan de back-up met succes is aangemaakt, kan de snapshot worden verwijderd. Dit doet u door eerst de
Novell Netwerkoplossingen, aanvulling 17
Storage
mount te deactiveren en vervolgens de snapshot te verwijderen. Waarschuwing
Verwijder altijd een snapshot-volume als u het niet langer nodig hebt. Zolang het snapshot-volume namelijk bestaat, wordt een kopie weggeschreven van alle gegevens die naar het volume worden weggeschreven. Dit kan een forse aanslag betekenen op de prestaties van uw server. Om het snapshot-volume weer buiten gebruik te stellen, voert u de volgende twee opdrachten uit: # umount /media/system/databackup # lvremove /dev/system/databackup.
6/7.1.3 Enterprise Volume Management System Logical Volume Manager is een manier om te werken met logische volumes onder Linux. Een aantal features is echter onder LVM niet beschikbaar. Denk bijvoorbeeld aan de mogelijkheid te werken met softwarematige RAID-devices. Ook is EVMS speciaal ontworpen voor gebruik in een cluster: met EVMS kan opslagruimte eenvoudig worden gedeeld tussen verschillende nodes die met elkaar samenwerken in een cluster. LVM is een goede keuze als u puur behoefte hebt aan het werken met logische volumes. Als uw behoeften echter verder gaan, is EVMS vanwege de meer uitgebreide mogelijkheden de betere keuze. Installatie van EVMS is echter lastig. Tip
Zeker in een testomgeving zou u in de verleiding kunnen komen om op dezelfde schijf LVM- en EVMS-volumes aan te maken. Dit is echter niet mogelijk. Beide systemen maken gebruik van de device mapper in de 2.6-kernels en deze device mapper kan per schijf maar één type volume-manager aan. Als u toch met EVMS aan het werk wilt, hebt u een
Novell Netwerkoplossingen, aanvulling 17
6/7.1-19
Opslag onder Linux
systeem nodig met een tweede vaste schijf gemonteerd: standaard maakt SuSE namelijk gebruik van LVM. Het is technisch mogelijk om op één vaste schijf zowel LVM als EVMS te installeren, om stabiliteitsredenen wordt dit echter afgeraden. Als u Linux installeert, wordt de schijf waarop u Linux installeert geschikt gemaakt voor gebruik door een volume-manager. Standaard is dat voor gebruik van de LVM volume-manager. Als u echter gebruik wilt maken van EVMS, is het nodig om van tevoren te besluiten op welke wijze u dat wilt doen. Er bestaan twee mogelijkheden: • Tijdens de installatie aangeven dat u EVMS wilt gebruiken als volume-manager. • Een tweede vaste schijf in uw computer installeren voor gebruik van EVMS. Beide manieren worden hierna besproken. EVMS aanzetten tijdens de installatie van SLES 9 Als u maar één vaste schijf in uw server hebt en u wilt op deze schijf gebruikmaken van EVMS, moet u tijdens de installatie van uw server aangeven dat dit het geval is. Vervolgens moet u de bestaande bootcode op uw vaste schijf verwijderen en handmatig nieuwe bootcode wegschrijven. In de volgende procedure leest u hoe u dit doet. 1. Start de installatie van SLES totdat u in het scherm Installation Settings komt. 2. Selecteer nu de optie Partitioning en kies Create custom partition setup. Kies vervolgens Custom partitioning – for experts en druk nogmaals op Next. U komt nu in de expert partitioner. 3. Activeer de optie Expert en kies dan Delete partition table and disk label om alle partities die op dat moment op uw schijf bestaan te verwijderen. Geef
6/7.1-20
Novell Netwerkoplossingen, aanvulling 17
Storage
4.
5.
6.
dan tweemaal achter elkaar aan dat dit werkelijk is wat u wilt doen door op Yes te klikken. U hebt nu de partitietabel verwijderd. Om uw schijf in te richten met EVMS als volume-manager, moet u nu tweemaal achter elkaar een partitie aanmaken. Als eerste is dat een normale partitie die wordt gebruikt om vanaf te booten: dat kan namelijk niet vanaf een EVMS-partitie. Vervolgens kunt u de rest van de schijfruimte toewijzen voor gebruik door EVMS. Om te beginnen gaat u de normale boot-partitie aanmaken. Kies hiervoor nog steeds vanuit de Expert Partitioner de optie Create en geef dan aan dat u een Primary partition wilt maken. Klik dan op OK. Voer nu in het kader Size achter de optie End in dat u een partitie van 250 MB wilt maken door de aanduiding +250M in te voeren. Onder Mount Point, selecteert u de optie /boot. Klik dan op OK om verder te gaan en de partitie aan te maken. Nu u de boot-partitie hebt aangemaakt, kunt u een EVMS-partitie aanmaken. Klik, nog steeds vanuit het hoofdvenster van de Expert Partitioner, op Create. Geef wederom aan dat u een primaire partitie wilt maken. Selecteer dan in het volgende venster de optie Do not format en kies voor de nieuwe partitie het partitietype 0x8E. Accepteer de standaardinstellingen voor de grootte van de partitie om alle beschikbare schijfruimte aan de nieuwe partitie toe te wijzen. Let er in het bijzonder op dat er geen mount point aan deze partitie wordt toegekend. U hebt nu aangegeven een partitie te willen aanmaken voor gebruik door LVM. Dit moet u nu wijzigen: u gaat immers gebruikmaken van EVMS. Kies hiervoor de optie EVMS die u in de Expert Partitioner ziet. U ziet nu een overzicht van alle devices die beschikbaar zijn voor EVMS. Uw primaire harddisk moet hier-
Novell Netwerkoplossingen, aanvulling 17
6/7.1-21
Opslag onder Linux
tussen vermeld staan met een naam als /dev/evms/sda en ook de partitie die beschikbaar is voor EVMS moet hier worden getoond. Selecteer de partitie en activeer dan de optie Create Container. Hiermee maakt u een EVMS-container aan. Zoals u waarschijnlijk al vermoedde: deze heeft exact dezelfde functie als de LVM volume group. Voordat u de container kunt aanmaken, zorgt u er in de lijst met devices voor dat de partitie die u voor gebruik van EVMS had aangemaakt, is geselecteerd. Druk dan op Enter. Er wordt nu een standaardcontainer aangemaakt met de volgende instellingen: • Container Type: Linux LVM • Container Name: System • Physical Extent Size: 4.0 MB Meer informatie over deze instellingen vindt u in het begin van dit hoofdstuk: het zijn namelijk dezelfde instellingen als die worden gebruikt voor het aanmaken van een LVM Volume Group. Klik nu op OK om de instellingen voor de EVMS-container te accepteren en de container aan te maken.
Om een EVMS-container te kunnen aanmaken, moet u er in het scherm waarin u de container aanmaakt voor zorgen dat de partitie die u met type 0x8E had aangemaakt, is geselecteerd.
6/7.1-22
Novell Netwerkoplossingen, aanvulling 17
Storage
Noot: In deze procedure wordt gebruikgemaakt van de niet-grafische variant van het installatieprogramma. Hier ligt een technische reden aan ten grondslag: de grafische variant van YaST kan tijdens de installatie niet vanuit VMware worden gebruikt. Voor de procedure zelf maakt dat niets uit: in het grafische installatieprogramma moeten precies dezelfde stappen worden doorlopen. 7.
Nu is de EVMS Configurator geactiveerd. Hierin kunt u EVMS-volumes aanmaken. U moet minimaal twee van deze volumes aanmaken: een die voor swapping gebruikt gaat worden en een die u als rootbestandssysteem gebruikt. Doe dit door als eerste in het EVMS Configurator-scherm u ervan te verzekeren dat de optie EVMS Container is geactiveerd en vervolgens op Add te klikken.
Om EVMS-volumes aan te maken, moet u in het EVMS-configuratorscherm de container selecteren en dan de optie Add kiezen.
Geef nu de eigenschappen in van het volume dat u wilt aanmaken. Ook hier zijn de details waarvan u
Novell Netwerkoplossingen, aanvulling 17
6/7.1-23
Opslag onder Linux
gebruikmaakt exact gelijk aan de details die worden gebruikt bij het aanmaken van een LVM-volume. Maak op zijn minst een swap-volume en een rootvolume aan en klik dan op Next om verder te gaan. De volumes worden nu toegevoegd aan de lijst partities die in de Expert Partitioner worden getoond.
De EVMS-volumes worden in de expert partitioner tussen de normale partities getoond.
8.
6/7.1-24
De device-namen van deze volumes zien eruit als /dev/evms/naam_van_de_container/naam_van_het _volume. Klik nu op Next om verder te gaan. Er wordt nu een waarschuwing gegeven dat het niet verstandig is EVMS- en niet-EVMS-devices aan te maken op dezelfde harddisk. Geef aan dat u dit toch wilt doen door de optie Yes te selecteren. U keer nu terug in het hoofdvenster met installatie-instellingen. Maak hier alle andere gewenste wijzigingen en selecteer dan Accept om verder te gaan met installeren. Nadat de installatie is afgerond, moet u nog de nodige werkzaamheden uitvoeren. Een standaardinstallatie gaat er namelijk van uit dat LVM wordt
Novell Netwerkoplossingen, aanvulling 17
Storage
gebruikt als volume-manager. Om te beginnen moet u er in /etc/fstab voor zorgen dat de locatie van de bootpartitie wordt veranderd. Nu staat er verwezen naar het normale boot-device; bijvoorbeeld /dev/sda1, wijzig dit in /dev/evms/sda1: u wilt namelijk dat de boot-partitie ook kan worden beheerd door EVMS. Hiermee zorgt u ervoor dat EVMS de gehele vaste schijf beheert en dat is gunstig voor de stabiliteit van uw server. Let op
U loopt niet echt de kans om deze additionele werkzaamheden over het hoofd te zien. Uw computer zal namelijk niet normaal starten voordat u dit hebt gedaan, maar zal u, na de eerste poging om op te starten, begroeten met een foutmelding en de melding “Press Enter to login”. Geef nu eerst de opdracht mount -n -o remount,rw / om het root-bestandssysteem read-write te mounten en voer dan de stappen uit die beschreven zijn vanaf stap 8 van deze procedure. 9.
Ook moet u zorgen dat boot.lvm en boot.md uit de opstartprocedure worden verwijderd. Dit zijn namelijk bestanden die worden gebruikt door LVM en in plaats van LVM gebruikt u nu EVMS. Om dit te doen, kiest u in YaST System > Runlevel Editor > Expert Mode. Zet nu zowel boot.lvm als boot.md uit. Dit doet u door ervoor te zorgen dat ze niet meer automatisch tijdens het booten worden geactiveerd. (Haal het kruisje bij de optie B weg.) 10. Pas nu het script /etc/init.d/boot.evms aan door de volgende regels aan de stop-sectie toe te voegen: mount -n -o remount,rw / echo -en”\Deleting device nodes”
Novell Netwerkoplossingen, aanvulling 17
6/7.1-25
Opslag onder Linux
rm -rf /dev/evms mount -n -o remount,ro /
U kunt deze regels toevoegen direct na de regel “echo -n “Stopping EVMS” 11. Als u gebruikmaakt van SCSI-devices, moet u er tot slot voor zorgen dat de controller van het device gebruikmaakt van write-through en niet van writeback. Als uw SCSI-schijven worden aangestuurd door een RAID-device, regelt u dit in de BIOS van het RAID-device. Als daarentegen gebruik wordt gemaakt van SCSI-schijven die geen deel uitmaken van een RAID-device, moet u het handmatig regelen. Doe dit door eerst het xcscsi-software package te installeren vanuit YaST en vervolgens met de opdracht scsi-config Write-Back uit te zetten voor alle SCSI-devices. Een tweede harddisk gebruiken voor EVMS Als u de zaken liever gescheiden houdt, is het ook mogelijk een extra vaste schijf in uw computer te installeren en alle EVMS-volumes op deze schijf aan te maken. Voordat u dit kunt doen, moet u echter aan uw systeem duidelijk maken welke schijven wel en welke schijven niet in aanmerking komen om door EVMS te worden beheerd. Dit doet u door het configuratiebestand /etc/evms.conf aan te passen. In dit configuratiebestand vindt u naast een hoop commentaar een sectie met de naam sysfs_devices. Hier geeft u aan welke schijven door EVMS mogen worden beheerd. Zorg ervoor dat deze sectie er als volgt uit komt te zien (we hebben voor het gemak de commentaarregels weggelaten): sysfs_devices { include = [ * ] exclude = [ sda ] }
6/7.1-26
Novell Netwerkoplossingen, aanvulling 17
Storage
Uiteraard zorgt u er hier voor dat de juiste device-naam wordt opgenomen. Als u gebruikmaakt van IDE als bootdevice, gebruikt u de aanduiding exclude = [ hda ] in plaats van [ sda ]. U kunt nu EVMS-volumes aanmaken op de tweede schijf. Als alternatieve werkwijze, kunt u hier de uitgebreide EVMS Administration Utility gebruiken. Vanuit een grafische interface activeert u deze met de opdracht evmsgui, in een niet-grafische interface maakt u gebruik van de opdracht evmsn. U ziet nu een overzicht van alle devices waar EVMS gebruik van mag maken. Selecteer een device en kies vervolgens uit het Actions-menu wat u wilt doen. Vanuit dit menu kunt u EVMS-containers maken, EVMS-volumes en ook tal van andere zaken kunnen worden uitgevoerd.
De EVMS Administration Utility biedt een duidelijke grafische interface om EVMS-instellingen te beheren.
Novell Netwerkoplossingen, aanvulling 17
6/7.1-27
Opslag onder Linux
Zoals in de introductie reeds is gezegd, EVMS biedt veel opties; veel meer dan het geval is voor LVM. Het gaat hier te ver om alle opties van deze volume-manager te bespreken: wij verwijzen daarvoor naar de documentatiepagina op http://evms.sourceforge.net/user_guide. In deze uitvoerige gids vindt u een overzicht van alle mogelijkheden die EVMS u te bieden heeft. 6/7.1.4 Tot slot Met de gang naar Linux is de wereld er voor de Novellbeheerder niet eenvoudiger op geworden. Uiteindelijk zult u op uw servers een keuze moeten maken wat u precies wilt. Wilt u NSS-volumes maken? Dan moet de EVMSvolume-manager worden geïnstalleerd. Hebt u geen NSS nodig? Dan is voorlopig nog LVM de betere keuze. Deze volume-manager is namelijk goed uitgekristalliseerd en op uitstekende wijze in de verschillende Linux-distributies geïntegreerd, iets wat voor EVMS momenteel nog niet het geval is.
6/7.1-28
Novell Netwerkoplossingen, aanvulling 17