BigAdmin System Administration Portal
Article de fond
Print-friendly VersionPrint-friendly Version

Comment scinder une racine mise en miroir avec Solaris Volume Manager avant d'effectuer la mise à jour du logiciel

Enda O'Connor, avril 2009

Cet article décrit la meilleure manière de diviser un miroir de Solaris Volume Manager avant la mise à jour du logiciel via, par exemple, la mise à niveau ou les mises à jour logicielles (patchs). Les procédures suivantes peuvent fonctionner avec toutes les versions de Solaris, sauf Comment monter un miroir de Solaris Volume Manager lors de sa réinitialisation à partir d'un média, qui s'applique uniquement au SE Solaris 10. Les exemples ci-dessous ont été conduits sur un serveur Sun Fire x4200.

Cet article aborde les thèmes suivants :

Comment scinder le miroir avant la mise à jour du logiciel

1. Déterminer tout d'abord la disposition du système de fichiers racine :

root@patchtest-x4200-2 # df -k /
Filesystem         kbytes    used   avail capacity  Mounted on
/dev/md/dsk/d10   10085921 1041301 8943761    11%    /
root@patchtest-x4200-2 # metastat -p d10
d10 -m d11 d12 1
d11 1 1 c0t2d0s0
d12 1 1 c0t3d0s0

2. Supprimer le miroir qui n'est pas mis à niveau (par exemple, dans cet exemple à l'étape 1, d12:c0t3d0s0 ne sera pas mis à niveau).

root@patchtest-x4200-2 # metadetach d10 d12
d10: submirror d12 is detached

3. Revenir pour initialiser depuis un autre périphérique physique que celui que vous mettez à niveau (d11 disk c0t2d0s0 dans cet exemple) :

root@patchtest-x4200-2 # metaroot c0t2d0s0

4. Vérifier que vfstab est maintenant correct :

root@patchtest-x4200-2 # grep c0t2d0s0 /etc/vfstab
/dev/dsk/c0t2d0s0     /dev/rdsk/     /     ufs    1 no     -
root@patchtest-x4200-2 # grep d10 /etc/vfstab
root@patchtest-x4200-2 #

5. Réinitialiser le système (qui s'initialisera désormais depuis c0t2d0s0) et effectuer toute tâche de maintenance logicielle nécessaire.

Comment reconstruire le miroir après la mise à jour du logiciel

1. Rédéfinir le périphérique d'initialisation pour d10.

#metaroot d10

2. Réinitialiser le système.

3. Rajouter le nouveau miroir :

#metaattach d10 d12

4. La synchronisation doit être achevée avant la réinitialisation ; examiner metastat d10 pour observer les opérations de synchronisation en cours.

Comment monter un miroir de Solaris Volume Manager lors de sa réinitialisation à partir d'un média

Si, pour une raison quelconque, il devient nécessaire de monter un métapériphérique mis en miroir de Solaris Volume Manager lors de la réinitialisation depuis un média, par exemple, en utilisant boot net -s ou boot cdrom -s, utiliser les étapes suivantes pour vous guider.

Remarque : Cela s'applique uniquement au système d'exploitation Solaris 10.

Dans ce scénario, nous devons initialiser à partir d'un autre média et monter les métapériphériques de Solaris Volume Manager, car le miroir n'a pas été scindé avant qu'il devienne nécessaire de démarrer à partir d'un autre média. Dans ce cas, nous devons effectuer quelques actions manuellement pour pouvoir monter les métapériphériques /dev/md/dsk/* en /a.

Considérer que le disque root est établi comme suit :

  • / sur d10
  • /var sur d20

Voici l'état dans lequel étaient les métapériphériques avant d'initialiser en dehors du média :

root@oyster # metastat -p d10
d10 -m d11 d12 1
d11 1 1 c0t2d0s0
d12 1 1 c0t3d0s0
root@oyster #  metastat -p d20
d20 -m d21 d22 1
d21 1 1 c0t2d0s1
d22 1 1 c0t3d0s1

1. Premièrement, initialiser à partir d'un média, par exemple :

#boot net -s

2. Maintenant, monter l'un des sous-disques en lecture seule, de façon à ne pas accidentellement l'endommager.

Dans cet exemple, on suppose que le disque sous-jacent est toujours accessible et que les données n'ont pas été endommagées.

# mount -o ro /dev/dsk/c0t0d0s0 /a

3. Configurer l'environnement initialisé actuel afin qu'il puisse utiliser Solaris Volume Manager :

# cp /a/kernel/drv/md.conf /kernel/drv/md.conf
# umount /a

4. Mettre à jour le pilote Solaris Volume Manager pour charger la configuration :

# update_drv -f md

Remarque : Ignorer les messages d'erreur envoyés par update_drv.

5. Maintenant, exécuter metainit pour initialiser tous les métapériphériques.

# metainit -r

6. Si vous avez des miroirs, vous devez exécuter metasync pour qu'ils soient synchronisés à ce stade. Utiliser metastat pour voir si une synchronisation est nécessaire ou terminée.

7. Une fois la synchronisation terminée, vous pouvez monter les métapériphériques :

# mount /dev/md/dsk/d10 /a
# mount /dev/md/dsk/d20 /a/var

Maintenant, le miroir de Solaris Volume Manager est monté sous le point de montage /a.

Pour en savoir plus

Voici quelques ressources supplémentaires :

BigAdmin