Un métapériphérique Solstice DiskSuite ou un volume Solaris Volume Manager peut être sauvegardé sans nécessiter son démontage ni la mise hors ligne de la totalité de la copie miroir. L'un des sous-miroirs doit être temporairement mis hors ligne, ce qui entraîne la perte du miroir, mais il peut être remis en ligne et resynchronisé dès la fin de la sauvegarde, sans que le système soit interrompu ou que l'utilisateur perde la possibilité d'accéder aux données. L'utilisation des miroirs pour effectuer des sauvegardes en ligne entraîne la création d'un “instantané“ d'un système de fichiers actif.
Il se peut qu'un problème survienne si un programme envoie des données au volume juste avant l'exécution de la commande lockfs. Pour éviter cela, arrêtez temporairement tous les services qui s'exécutent sur le nœud concerné. Assurez-vous également que le cluster fonctionne sans problème avant de lancer la sauvegarde.
Devenez superutilisateur sur le nœud du cluster que vous souhaitez sauvegarder.
Utilisez la commande metaset(1M) pour définir le nœud propriétaire du volume sauvegardé.
# metaset -s nom_jeu |
Spécifie le nom du jeu de disques.
Utilisez la commande lockfs(1M) associée à l'option -w pour protéger le système de fichiers en écriture.
# lockfs -w point_montage |
vous devez verrouiller le système de fichiers uniquement si le miroir comporte un système de fichiers UFS. Par exemple, si le métapériphérique Solstice DiskSuite ou le volume Solaris Volume Manager est configuré comme périphérique brut pour le logiciel de gestion de base de données ou pour une autre application spécifique, il n'est pas nécessaire d'utiliser la commande lockfs. Vous pouvez toutefois exécuter l'utilitaire fournisseur approprié pour vider les mémoires tampon et verrouiller l'accès.
Utilisez la commande metastat(1M) pour déterminer le nom des sous-miroirs.
# metastat -s nom_jeu -p |
Affiche le statut dans un format similaire à celui du fichier md.tab.
Utilisez la commande metadetach(1M) pour mettre l'un des sous-miroirs hors ligne.
# metadetach -s nom_jeu miroir sous-miroir |
les lectures se poursuivront à partir des autres sous-miroirs. Toutefois, le sous-miroir hors ligne est désynchronisé dès qu'une écriture est effectuée dans le miroir. La synchronisation est rétablie dès que le sous-miroir hors ligne est remis en ligne. Vous n'êtes pas tenu d'exécuter fsck.
Déverrouillez les systèmes de fichiers et permettez aux écritures de se poursuivre en utilisant la commande lockfs suivie de l'option -u.
# lockfs -u point_montage |
Vérifiez le système de fichiers.
# fsck /dev/md/diskset/rdsk/sous_miroir |
Sauvegardez le sous-miroir hors ligne sur une bande ou sur un autre support.
Utilisez la commande ufsdump(1M) ou n'importe quel autre utilitaire de sauvegarde courant.
# ufsdump 0ucf périphérique-dump sous-miroir |
utilisez le nom de périphérique brut (/rdsk) pour le sous-miroir, plutôt que le nom du périphérique en mode bloc (/dsk).
Utilisez la commande metattach(1M) pour remettre le métapériphérique ou le volume en ligne.
# metattach -s nom_jeu miroir sous-miroir |
Lorsque le métapériphérique ou le volume est remis en ligne, il est automatiquement resynchronisé avec le miroir.
Utilisez la commande metastat pour vérifier la resynchronisation effective du sous-miroir.
# metastat -s nom_jeu miroir |
Dans l'exemple suivant, le nœud du cluster phys-schost-1 est propriétaire du méta-ensemble schost-1, la procédure de sauvegarde est donc initialisée depuis phys-schost-1. Le miroir /dev/md/schost-1/dsk/d0 se compose des sous-miroirs d10, d20 et d30.
[Déterminez le propriétaire du méta-ensemble :] # metaset -s schost-1 Set name = schost-1, Set number = 1 Host Owner phys-schost-1 Yes ... [Protégez le système de fichiers en écriture :] # lockfs -w /global/schost-1 [Répertoriez les sous-miroirs :] # metastat -s schost-1 -p schost-1/d0 -m schost-1/d10 schost-1/d20 schost-1/d30 1 schost-1/d10 1 1 d4s0 schost-1/d20 1 1 d6s0 schost-1/d30 1 1 d8s0 [Mettez un sous-miroir hors ligne :] # metadetach -s schost-1 d0 d30 [Déverrouillez le système de fichiers :] # lockfs -u / [Contrôlez le système de fichiers :] # fsck /dev/md/schost-1/rdsk/d30 [Copiez le sous-miroir sur l'unité de sauvegarde :] # ufsdump 0ucf /dev/rmt/0 /dev/md/schost-1/rdsk/d30 DUMP: Writing 63 Kilobyte records DUMP: Date of this level 0 dump: Tue Apr 25 16:15:51 2000 DUMP: Date of last level 0 dump: the epoch DUMP: Dumping /dev/md/schost-1/rdsk/d30 to /dev/rdsk/c1t9d0s0. ... DUMP: DUMP IS DONE [Remettez le sous-miroir en ligne :] # metattach -s schost-1 d0 d30 schost-1/d0: submirror schost-1/d30 is attached [Resynchronisez le sous-miroir :] # metastat -s schost-1 d0 schost-1/d0: Mirror Submirror 0: schost-0/d10 State: Okay Submirror 1: schost-0/d20 State: Okay Submirror 2: schost-0/d30 State: Resyncing Resync in progress: 42% done Pass: 1 Read option: roundrobin (default) ... |