FreeBSD handboek
Terug | Hoofdstuk 21. De VINUM volumebeheerder | Volgende

# 21.6. Voorbeelden

Vinum houdt een instellingendatabase bij waarin beschreven staat welke objecten bekend zijn in het systeem. Bij het instellen vult de gebruiker deze database uit één of meer instellingenbestanden met behulp van het hulpprogramma gvinum(8). Vinum bewaart een kopie van de database op iedere slice (die Vinum apparaat noemt) die door Vinum wordt beheerd. Deze database wordt na iedere statuswijziging bijgewerkt, zodat een na een herstart accuraat de toestand van ieder Vinum object wordt weergegeven.

## 21.6.1. Het instellingenbestand

Het instellingenbestand beschrijft de individuele vinum objecten. De definitie van een eenvoudig volume kan er zo uitzien:

        drive a device /dev/da3h
        volume myvol
          plex org concat
            sd length 512m drive a

Dit bestand beschrijft vier Vinum objecten:

- De drive regel beschrijft een partitie (drive) en de relatieve positie ten opzichte van de onderliggende hardware. Het heeft de symbolische naam a. Deze scheiding van de symbolische naam van de schijf maakt het mogelijk om schijven te verplaatsen van de ene locatie naar de andere, zonder verwarring te veroorzaken.

- De volume regel beschrijft een volume. Het enige benodigde attribuut is de naam: myvol.

- De plex regel beschrijft een samenstelling. Het enige benodigde attribuut is de organisatie, in dit geval concat. Er is geen naam nodig: het systeem genereert automatisch een naam door .px aan de volumenaam toe te voegen, waarbij x het nummer van de samenstelling in het volume is. De naam van deze samenstelling wordt dus myvol.p0.

- De sd regel beschrijft een subschijf. De minimale specificaties zijn de naam van een schijf waar de subschijf kan worden opgeslagen en de lengte van de subschijf. Net als bij een samenstelling is er geen naam nodig: het systeem genereert automatisch een naam door .sx aan de samenstellingnaam toe te voegen, waarbij x het nummer van de subschijf is. De naam van deze subschijf is dus myvol.p0.s0.

Na het verwerken van dit bestand ziet de uitvoer van gvinum(8) er als volgt uit:

          # gvinum -> create config1
          Configuration summary
          Drives:       1 (4 configured)
          Volumes:       1 (4 configured)
          Plexes:       1 (8 configured)
          Subdisks:      1 (16 configured)

           D a                  State: up       Device /dev/da3h       Avail: 2061/2573 MB (80%)

           V myvol              State: up       Plexes:      1  Size:       512 MB

           P myvol.p0          C State: up       Subdisks:    1  Size:       512 MB

           S myvol.p0.s0         State: up       PO:        0 B Size:       512 MB

Deze uitvoer geeft de korte uitvoer van gvinum(8) weer. Het is grafisch weergegeven in Figuur 21-4.

Figuur 21-4. Een eenvoudig Vinum volume

Deze en de volgende figuren stellen een volume voor dat samenstellingen bevat die weer de subschijven bevatten. In dit triviale voorbeeld bevat het volume een samenstelling en deze samenstelling bevat een subschijf.

Dit speciale volume heeft geen voordeel boven een gewone schijf partitie. Het bevat één samenstelling, dus het is niet redundant. De samenstelling bevat één subschijf, dus er is geen verschil in de plaats van de gegevens met een conventionele schijfpartitie. In de volgende paragrafen worden meer interessante instellingen getoond.

## 21.6.2. Verbeterde betrouwbaarheid: spiegelen

De betrouwbaarheid van een volume wordt vergroot door spiegelen. Bij het opzetten van een gespiegeld volume is het van belang dat subschijven van iedere samenstelling op een andere schijf staan, zodat een defecte schijf niet beide samenstellingen beïnvloedt. De volgende instelling maakt een gespiegeld volume:

           drive b device /dev/da4h
           volume mirror
          plex org concat
           sd length 512m drive a
             plex org concat
               sd length 512m drive b

In dit voorbeeld was het niet nodig om schijf a opnieuw te definiëren, omdat Vinum alle objecten bijhoudt in de instellingendatabase. Na het verwerken van deze definitie, ziet de instelling er als volgt uit:

            Drives:        2 (4 configured)
            Volumes:        2 (4 configured)
            Plexes:        3 (8 configured)
            Subdisks:      3 (16 configured)

            D a                    State: up        Device /dev/da3h        Avail: 1549/2573 MB (60%)
            D b                    State: up        Device /dev/da4h        Avail: 2061/2573 MB (80%)

        V myvol              State: up        Plexes:      1  Size:        512 MB
        V mirror             State: up        Plexes:      2  Size:        512 MB

        P myvol.p0         C State: up        Subdisks:    1  Size:        512 MB
        P mirror.p0        C State: up        Subdisks:    1  Size:        512 MB
        P mirror.p1        C State: initializing     Subdisks:     1 Size:        512 MB

        S myvol.p0.s0        State: up        PO:        0 B  Size:        512 MB
        S mirror.p0.s0        State: up        PO:        0 B  Size:        512 MB
        S mirror.p1.s0        State: empty    PO:        0 B  Size:        512 MB

Het is grafisch weergegeven in Figuur 21-5.

Figuur 21-5. Een gespiegeld Vinum volume

In dit voorbeeld bevat iedere samenstelling de volledige 512 MB van de opslagcapaciteit. Net als in het vorige voorbeeld bevat iedere samenstelling slechts één subschijf.

## 21.6.3. Verbeterde prestatie

Het gespiegelde volume in het vorige voorbeeld is beter bestand tegen hardware fouten dan een niet-gespiegeld volume, maar de prestaties zijn lager: iedere schrijfactie naar het volume moet op beide schijven worden uitgevoerd, waardoor een groter deel van de bandbreedte van de schijf nodig is. Als prestaties een belangrijke rol spelen, moet er een andere benadering gekozen worden: in plaats van spiegelen worden de gegevens verdeeld over zoveel mogelijk schijven. De volgende instelling laat een volume zien waarbij een samenstelling over vier schijven verdeeld is:

          drive c device /dev/da5h
          drive d device /dev/da6h
          volume stripe
          plex org striped 512k
            sd length 128m drive a
            sd length 128m drive b
            sd length 128m drive c
            sd length 128m drive d

Zoals eerder al te zien was, is het niet nodig om schijven die al bekend zijn bij Vinum opnieuw te definiëren. Na het verwerken van deze definitie, ziet de instelling er zo uit:

          Drives:             4 (4 configured)
          Volumes:        3 (4 configured)
          Plexes:             4 (8 configured)
          Subdisks:      7 (16 configured)

       D a                    State: up        Device /dev/da3h        Avail: 1421/2573 MB (55%)
       D b                    State: up        Device /dev/da4h        Avail: 1933/2573 MB (75%)
       D c                    State: up        Device /dev/da5h        Avail: 2445/2573 MB (95%)
       D d                    State: up        Device /dev/da6h        Avail: 2445/2573 MB (95%)

       V myvol                State: up        Plexes:      1  Size:        512 MB
       V mirror               State: up        Plexes:      2  Size:        512 MB
       V striped              State: up        Plexes:      1  Size:        512 MB

       P myvol.p0           C State: up        Subdisks:    1  Size:        512 MB
       P mirror.p0          C State: up        Subdisks:    1  Size:        512 MB
       P mirror.p1          C State: initializing     Subdisks:     1 Size:        512 MB
       P striped.p1           State: up        Subdisks:    1  Size:        512 MB

       S myvol.p0.s0          State: up        PO:        0 B  Size:        512 MB
       S mirror.p0.s0         State: up        PO:        0 B  Size:        512 MB
       S mirror.p1.s0         State: empty     PO:        0 B  Size:        512 MB
       S striped.p0.s0        State: up        PO:        0 B  Size:        128 MB
       S striped.p0.s1        State: up        PO:      512 kB Size:        128 MB
       S striped.p0.s2        State: up        PO:     1024 kB Size:        128 MB
       S striped.p0.s3        State: up        PO:     1536 kB Size:        128 MB

Figuur 21-6. Een verdeeld Vinum volume

Dit volume wordt weergegeven in Figuur 21-6. De grijstinten geven de positie binnen de samenstelling aan: de lichtste strepen komen het eerst, de donkerste het laatst.

## 21.6.4. Betrouwbaarheid en prestaties

Met voldoende hardware is het mogelijk om een volume te bouwen met zowel verbeterde betrouwbaarheid als verbeterde prestaties ten opzichte van een standaard UNIX® partitie. De volgende instelling is een voorbeeld van zo'n volume:

            volume raid10
          plex org striped 512k
            sd length 102480k drive a
            sd length 102480k drive b
            sd length 102480k drive c
            sd length 102480k drive d
            sd length 102480k drive e
          plex org striped 512k
            sd length 102480k drive c
            sd length 102480k drive d
            sd length 102480k drive e
            sd length 102480k drive a
            sd length 102480k drive b

De subschijven van de tweede samenstelling zijn twee schijven verschoven ten opzichte van die van de eerste samenstelling. Dit zorgt ervoor dat een schrijfactie niet naar dezelfde schijven gaat, zelfs niet als die schrijfactie over twee schijven plaatsvindt.

Figuur 21-5 laat deze instelling zien in grafische vorm.

Figuur 21-7. Een gespiegeld en verdeeld Vinum volume

Terug | Begin | Volgende
Vinum objecten | Omhoog | Objectnamen

Deze en andere documenten kunnen worden gedownload van ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.

Lees voor vragen over FreeBSD de documentatie alvorens contact te zoeken <questions@FreeBSD.org>.
Vragen over deze documentatie kunnen per e-mail naar <doc@FreeBSD.org>.