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 )
metahs –i : 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
Metadb –ac 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 : d° 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.