6 mins read

Sun Solaris SVM-SDS

Petit tutorial sur Sun Solaris Volume Manager, gestion RAID de Sun.

En cas de 2 disques : rajouter : set md:mirrored_root_flag=1 dans /etc/system , à partir de 3 non( corum )

 

Raid 0 : concatenation : on rempli A puis B

Stripping : on partage data sur A et B

 

Raid 1:mirroring, plexing

Raid 0+1 : bof :a_b_c+a_b_cstripping + mirroring

00

1

 

Raid 1+0 : bon : a_ab_bc_c

111

0

Raid 2 :a + b + c = p_abc

Raid 3 :a_d + b_e + c_f = p_abc + p_def

Raid 4 : pareil que raid 3 : asynchrome

Raid 5 :pareil que raid 3_4 : gestion des priorités : partage

Raid 6 : Double parité

 

Raid soft :solaris + svm + VM

V

Bus scsi

V

( Disks ) ou ( disks + cache)

 

Raid Hard : solaris ( c1t3… )

V

Bus scsi 1 ( ou plusieurs Bus scsi en miroir )

VV

Controleur raid > avec disks ( appelés LUN ou DEVICE )

 

Raid Soft + Hard : plaiding ( miroir ) entre 2 controleur raid.

SVM:

– 3 databases minimum.

– Nécessaire pour booter au minimum : la moitié + 1 db ( notre paramétrable ds /etc/system )

– Si la moitié tombe : c’est ok … Si < à la moitié : PROBLEME

– Jusqu'à Sol8 inclus : infos des metadbs ds /etc/system

– Les devices sont créés ds md.cf /dev/md/rdsk* et /dev/md/dsk*

– BACKUP a faire avant crash : /etc/vfstab, /etc/system, backup des prtvtoc, backup de la conf SVM

– NE PAS TOUCHER AUX FICHIERS : /etc/lvm/mddb.cf, /etc/lvm/md.cf, /kernel/drv/md.conf ( config de SUN ).

– ON PEUT TOUCHER : /etc/lvm/md.tab.

metaparam : paramétrer : l’ordre de synchro des disques, méthode d’écriture/lecture sur les disques : metapram -5 d20 : synchro en 5° place … etc.

 

Concat , Stripping :

Metainit d11 1 3 c3t1d0s5 c3t2d0s5 c3t3d0s5 –i 256k

>1 : 1 pour stripe, 2ou + : concat

>3 : partition du concat ou stripe

>-i : taille des blocs écris

 

Concat + stripping :

P1 P2 P3

P3 P4 P5

Metainit d132 2 3 p1 p2 p3 i 256k p4 p5 p6 i 256k

Mirroring :

Crée chq volume :

Metainit d11 1 1 c3t1d0s0

Metainit d12 1 1 c3t2d0s0

Créer master volume :

Metainit d10 md d11

Metattach d10 12

Metastat

DISK EN PANNE :

Metadb –i : si majuscules : problème dans la base de données.

>> Jusqu’à sol8 :

-détache le disque

-change le disque

-format puis création des partitions ( fmthard )

metareplace –e d10 p1

metareplace –e d20 p2

metareplace pour chq partition incluse.

metadb –d oldpartdbs7

metadb –ac 2 newpartdbs7

>>Sol10 :

-détache le disque

-change le disque

-format puis création des partitions ( fmthard )

metadevadm –u NEWDISK

metareplace –e d10 p1

metareplace –e d20 p2

metareplace pour chq partition incluse.

metadb –d oldpartdbs7

metadb –ac 2 newpartdbs7

OFFLINE et ONLINE : activer ou désactiver des devices

Metaoffline d10 d12

Metaonline d10 12

Metastat

Utilisation : faire un backup par exemple, snapshot

 

HOT SPARE POOL : disque de recharge en cas de panne.

Exemple :

1)

d50 avec d51 et d52 : 2 x 1Go

metainit d51 1 1 c3t1d0s0

metainit d52 1 1 c3t1d0s0

metainit d50 –m d51

metattach d50 d52

newfs /dev/md/rdsk/d50

mount /dev/md/dsk/d50 /miroir

2)

hsp000 : 2 x 1Go : c3t3d0s6 // c3t4d0s6

metainit hsp000 c3t3d0s6

metahs –a hsp000 c3t4d0s6 ( ajout d’un hot spare )

metahsi : info globale

metaparam –h hsp000 d51 <<< lier hsp aux devices

metaparam –h hsp000 d52 <<< lier hsp aux devices

3)

le disque casse

4)

Changement disque, format, fmthard , partition …

Metadevadm –u c3t1d0s0 < old disk

Metareplace –e d50 c3t1d0s0 < nvl partition

Resync et puis c’est OK.

5)

Enable nvl partitions :

Metahs –e c3t3d0s0

Metahs –e chq partion

6)

Metadb –d c3t1d0s7 < ancienne partition de db

Metadbac 2 c3t1d0s7 < nvl partition de db

 

RAID 5 :

Metainit d30 –r c3t1d0s0 c3t2d0s0 c3t3d0s0

SOFT PARTITIONS:

http://sysunconfig.net/unixtips/soft-partitions.html

créer des partitions virtuelles ( plus que 7 partitions )

 

REPARER DB SVM :

Si on a 3 partitions s7 dont 2 HS : crash du serveur

>> reboot « boot –r »

>> metadb –d part_hs1

>> metadb –d part_hs2

Voir ds /etc/vfstab pour enlever le dXX

>>Sol10 : svcs –x : service qui plante après lecture du /etc/vfstab

 

MIRRORER DISQUE SYSTEME :

Metainit –f d1 1 1 c0t0d0s0

Metainit –f d11 1 1 c0t0d0s1

Metainit –f d61 1 1 c0t0d0s6

Metainit –f d0 –m d1

Metainit –f d10 –m d11

Metainit –f d60 –m d61

 

Cp /etc/vfstab /etc/vfstab.ori

Cp /etc/system /etc/system.ori

Editer /etc/vfstab

Metaroot d0 puis reboot

 

DISK SET : pour clusters

 

S1S2

C1 C2C1 C2

 

C1 = o et x

C2 = o o et x x

>>> 2 groupes de disks : A et B appelés : « diskset »

A : o o o o ( 4 disques )

B : x x x x( 4 disques )

Chaques disques : avec svm doit avoir une 1° partition N°7 sur le 1° cylindre et rien sur le reste du disque ( pas de partition 2 ).

 

C1 et C2 : il faut que ce soit les mêmes noms de liens ( c0t0… ) sur les 2 serveurs

EN cluster SUN : il n’y a plus d’obligation de mêmes noms : il y a les disques virtuels : « did » : device id.

 

>>> Metaset –s A

>>> Metaset –s B

TOUJOURS metre “-s” pour gérer les disksets : /dev/md/A/rdsk/d0

 

Pour ajouter des diskset sur la 2° machine : il faut que le service en sol10 : « metainit » soit chargé. En solaris 8 : rien à faire.

 

Exemple :

SUR S1 :

#Metaset : info sur les disksets.

#metaset –s A –a –h s1 ( s1 étant le 1° serveur où l’on déclare le diskset )

#metaset –s A –a –h s2 :serveur

#metaset –s A –a c3t1d0

#metaset –s A –a c3t2d0

#metaset –s A : on voit le résultat

#metaset –s A –r ( “-r” : release du diskset A pour le 2° serveur )

SUR S2 :

#metaset –s A -t

ANNOTATION :

comment

faire du sds sur 2 disques et garantir le boot en cas de panne d'un des disques,

voici une option a placer dans le /etc/system pour contourner l'algorithme de

consensus de majorité des metadb :

set md:mirrored_root_flag=1

Avec ça le systeme boot normalement, meme avec un seul disque systeme sous sds.

Laisser un commentaire