Avamar – Une commande pour récupérer tous les S/N de votre grid

Bonjour,

Je tiens ici à vous faire part d’une commande qui vous permettra d’obtenir les informations suivantes :

  • IP
  • Hostname
  • Serial du node

Et ce pour tous les nodes de votre grid Avamar.

Ceci est très pratique si vous ne souhaitez pas ou ne pouvez pas descendre en salle machine pour relever le serial du node sur lequel une opération de maintenance va devoir être effectuée (changement d’un disque par exemple) et qui vous sera demandé par le support N3 d’EMC, et si vous n’avez sous la main votre référentiel…

PROCEDURE

Il faudra auparavant changer d’utilisateur :

su - admin
ssh-agent bash
ssh-add ~/.ssh/dpnid

Puis lancer la commande magique :

mapall --noerror --user=root --nodes=all+ --quiet 'echo `hostname -i`'" - "'`hostname `'" - "'`/usr/bin/ipmitool fru print 0 |grep "Product Asset Tag"`'

Ce qui produira le résultat suivant :

admin@avamar:~/>: mapall --noerror --user=root --nodes=all+ --quiet 'echo `hostname -i`'" - "'`hostname `'" - "'`/usr/bin/ipmitool fru print 0 |grep "Product Asset Tag"`'
yyy.yyy.yyy.1 - avamar1 - Product Asset Tag : NNG-votre-serial
yyy.yyy.yyy.2 - avamar2 - Product Asset Tag : NNG-votre-serial
yyy.yyy.yyy.3 - avamar3 - Product Asset Tag : NNG-votre-serial
yyy.yyy.yyy.4 - avamar4 - Product Asset Tag : NNG-votre-serial
yyy.yyy.yyy.5 - avamar5 - Product Asset Tag : NNG-votre-serial
yyy.yyy.yyy.6 - avamar6 - Product Asset Tag : NNG-votre-serial
yyy.yyy.yyy.7 - avamar7 - Product Asset Tag : NNG-votre-serial
yyy.yyy.yyy.8 - avamar8 - Product Asset Tag : NNG-votre-serial

Incoming search terms:

Avamar – Changer le serveur SMTP d’un Single Node Avamar

Bonjour,

Dans le billet de ce jour nous allons voir comment modifier le serveur SMTP d’un Single Node Avamar.

PROCEDURE

Dans un premier temps il faudra ouvrir un shell avec le compte admin puis éditer le fichier de configuration suivant :

/usr/local/avamar/var/mc/server_data/prefs/mcserver.xml

Recherchez la ligne :

<entry key="smtpHost" value="123.123.123.123" />

Et remplacez le motif par la nouvelle adresse IP.

Ensuite, il vous faudra redémarrer la MCS avec les commandes suivantes :

dpnctl stop mcs
dpnctl start

That’s it!

Avamar – Utilitaire proxycp.jar

L’article du jour traite de l’utilitaire proxycp.jar qui permet de faire des actions sur les proxies Avamar (pour le monde de sauvegarde VM Image). Cet outil est généralement téléchargé sur le node (ou via votre poste de travail en WebEx puis déposé sur l’Utility Node avec WinScp) afin de faire du troubleshooting).

Où l’obtenir

Avec cette commande :

curl -O ftp://avamar_ftp:anonymous@ftp.avamar.com/software/scripts/proxycp.jar

Il est recommandé de le déposer dans /usr/local/avamar/bin/

Les commandes

Voici les commandes qui sont utiles :

La commande suivante permet de lister tous les proxies déployés sur votre grid :

java -jar proxycp.jar --listproxy

L’option « –csv » vous permet d’exporter la liste dans un fichier CSV.

La commande suivante permet de lister toutes les VM visibles par votre grid Avamar mais pas nécessairement protégée. Elles sont visibles administrativement mais ne sont pas forcément dans un groupe :

java -jar proxycp.jar --listvm

L’option « –csv » vous permet d’exporter la liste dans un fichier CSV.

La commande suivante permet de savoir si votre utilisateur Avamar sur votre vCenter dispose bien des droits nécessaires :

#: java -jar proxycp.jar --listpermission
======================= Starting ProxyCP ==========================
Proxycp : v0.94
Date    : July 16, 2013 2:20:17 PM CEST
COMMAND : java -jar proxycp.jar --listpermission

VDR Detected : false
---------------------------------------------------------------------------------
====================== votre-vcenter.local ============================

User            : compte-avamar
Role Name       : Admin
Role ID         : -1

Role "Admin" has all the Required permission on "votre-vcenter.local"!

Checking Explicit Permission on Proxies.....
Done.....

========================== Done ==========================

Closing Connection Pool

Cela permet de contrôler en un coup d’œil les permissions en place.

Vous pouvez également contrôler les droits liés à une de vos VM avec l’option « –vm Votre-VM ».

La commande suivante permet de lister tous les datastores couvert par vos proxies, ce qui permet de troublshooter les problèmes de backup en failed pour cause de « no proxy » qui indique simplement qu’aucun de vos proxies ne peut accéder au datastore de la VM cible à sauvegarder :

java -jar proxycp.jar --listdatastoremap

L’option « –proxy VotreProxy » permet de filtrer sur un seul proxy plutôt que tous par défaut.

La commande suivante permet d’exécuter diverses commandes très simplement sur tous vos proxies, à l’image d’un « mapall » pour vos storage nodes :

java -jar proxycp.jar --cmd [commande]

Enfin, une commande très pratique permet de couvrir tous les datastores par tous vos proxies, en une seule fois (plus rapidement que par la GUI) :

java -jar proxycp.jar --selectalldatastore

Stéphane.

Incoming search terms:

Avamar – Déplacement de clients

Bonjour à tous,

Dans ce billet je vais vous donner une ligne de commande qui vous permettra de déplacer en une ligne tout un groupe de clients/VMs.

Dans mon cas, j’avais importé tout un groupe de machines virtuelles (à backuper donc en mode « VM Image ») qui par défaut sont placées dans le sous-domaine racine du vCenter alors que pour pouvoir être prise en compte dans un groupe de sauvegarde elles doivent se trouver dans le sous-domaines « VirtulMachine » du domaine du vCenter.

N’étant pas un grand fan de la GUI, surtout pour faire une série de clics répétitifs, je me suis attelé à la mccli afin de scripter un one-liner pour le faire à ma place :

for n in $(mccli client show --domain=/domaine-ou-se-trouvent-vos-vms \
| awk 'NR > 3 {print $1}'); do mccli client move --domain=/domaine-ou-se-trouvent-vos-vms \
--new-domain=/domaine-de-votre-vcenter/VirtualMachines --name=$n; done

Cette commande devrait vous faire gagner bien du temps…

Avamar – Le FLR dans Avamar

Vous faites des sauvegardes en mode VM Image des VM de votre infrastructure VMware mais vous ne souhaitez pas installer l’agent pour effectuer des sauvegardes en mode Guest ? Alors le mode FLR (pour File Level Restore, mode qui permet une granularité en mode fichier) est fait pour vous …sauf qu’il dispose de nombreuse limitation avec Avamar 6.1. En effet, ce mode ne supporte pas :

• Les disques non-formatés
• Les disques dynamiques
• Le partitionnement GPT
• Ext4
• FAT16
• FAT32
• Les partitions étendues
• Les disques virtuels (VMDK) disposant de plusieurs partitions
• Les agrégations disques virtuels au sein d’une même partition (le fait d’agrandir un VMDK)
• Les partitions chiffrées
• Les partitions comprimées
• LVM : Un seul volume physique (un vmdk) peut être mappé au sein d’un seul volume LVM et uniquement formaté en ext2 ou ext3

Comme vous pouvez le constater les limitations sont grandes, ce qui empêche toute utilisation en production du mode FLR. Il vous faudra attendre Avamar 7.0 dans lequel le mode est censé être plus exploitable. L’alternative est d’utiliser le mode guest (agent), à déployer sur toutes vos VM tout en sachant que les data ne seront pas stockées en double grâce à la déduplication. En effet, j’ai constaté que l’utilisation simultanée des deux modes n’augmentait pas la volumétrie de mes Grids.

Stéphane.

Avamar – Ajout de datastores en masse

Si vous sauvegardez votre infrastructure VMware avec Avamar et que vous devez déployer plusieurs proxies et que vous disposez de nombreux datastore mais que vous ne devez pas tous les couvrir pour diverses problématiques de sécurité, il peut-être pertinent de faire un script bash/mccli afin d’effectuer ces opérations pour vous ou encore quand vous devez ajouter de nouveaux datastores à tous vos proxies déployés.

Dans mon cas, à chaque déploiement de proxies je dois sélectionner plusieurs 10aines de datastores sur une ligne en comportant une 100aine, ce qui est vecteur d’erreurs de sélection.

La méthode est simple, il vous faut dans un premier temps ouvrir un shell sur votre Utility Node et créer deux fichiers contenant :

  • La liste des proxies, un par ligne
  • La liste des datastores à protégéer, un nom par ligne

Ensuite, il ne vous reste plus qu’à adapter et exécuter la ligne suivante, PROXIES.txt contenant la liste de vos proxies Avamar et ADD-DS.txt contenant la liste des datastores :

for proxies in $(cat PROXIES.txt); do for datastore in $(cat ADD-DS.txt); do mccli client \
add-datastore --datacenter=votre-dc-vmware --datastore-name=$datastore \
--name=/clients/sous-domaine-hebergeant-vos-proxies/$proxies; done; done

A savoir que la mccli n’est pas rapide du tout mais c’est normal 🙂

Avamar – Lister les dernières sauvegardes

Bonjour,

Il se peut qu’un jour vous ayez besoin de lister les dernières sauvegardes disponibles pour  une liste de clients donné (mode guest ou VM Image).

Procédure

Une one-liner permet d’établir une telle liste : Dans mon exemple je cherche à obtenir une liste des dernières sauvegardes pour un ensemble de VM dans le cadre d’une migration (en effet Avamar est tout disposé pour la migration d’environnement et la mise en place de PRA, thèmes que j’aborderais dans d’autres billets).

Dans un premier temps, il vous faudra créer un fichier dans lequel vous listerez les noms des clients concernés, un par ligne, de la forme.

Puis vous exécuterez la ligne suivante :

for clients in $(cat CLIENTS.txt); do printf "$clients : "; mccli backup show --name=/VOTRE-DOMAINE/VirtualMachines/$clients | awk 'NR==4 {print $0}'; done

Ce qui produira le résultat suivant :

CLIENT1 : 2013-04-05 20:00:00 CEST 25 21544820736 D
CLIENT2 : 2013-04-05 20:00:00 CEST 25 21535809536 D
CLIENT3 : 2013-04-05 20:00:00 CEST 25 21540403200 D
CLIENT4 : 2013-04-05 20:00:00 CEST 25 21566048256 D
CLIENT5 : 2013-04-05 20:00:00 CEST 25 21546436608 D

Les champs étant : Le nom du client, la date et l’heure du backup, le numéro de label (numéro de sauvegarde), la taille du backup en octets et la rétention (D, DW, DWMY).

Avamar – Restoration planifiée

Dans le billet de ce jour je vais aborder la problématique de la restoration planifiée.

En effet, il se peut qu’un jour vous ayez à planifier une restoration dans le cadre par exemple d’une migration d’environnement : Vous avez votre policy qui dispose d’une schedule pour une sauvegarde un samedi soir et vous souhaitez restorer votre dataset sur un nouveau serveur tôt le lundi matin de la semaine suivante, sans pour autant avoir besoin de la lancer à la main depuis la MCS. Pour ce cas de figure, il faut passer par la ligne de commande (MCCLI) et simplement planifier une cron de restoration de type :

mccli backup restore --name=/clients/ServeurA --plugin=3001 --labelNum=`mccli backup show --name=/clients/ServeurB | awk 'NR==4 {print $4}'` --dest-client-name=/clients/ServeurB

Explications :

  • Commande initiale : mccli backup restore –name/clients/ServeurA
  • Spécification du filesystem source (ici WIndows File System) :  –plugins=3001
  • Astuce pour récupérer le numéro de label de la dernière sauvegarde : –labelNum=`mccli backup show –name=/clients/ServeurB | awk ‘NR==4 {print $4}’`
  • Serveur où restorer les fichiers : –dest-client-name=/clients/ServeurB

Options possibles :

  • –data=D:\\Dossier\\fichier-a-restorer.zzz : Ici vous pouvez spécifier un dossier ou un fichier spécifique à restorer et non pas l’ensemble du dataset (par défaut). Pensez à bien doubler vos anti-slash (\\) pour les échaper et ainsi qu’il soient pris en compte sinon pour aurez une erreur 10007
  • –dest-dir=D:\\Restore : Pour spécifier un dossier spécifique où restorer vos fichiers/dossier si vous ne souhaitez pas utiliser le répertoire par défaut

Le tout est à simplement placer dans un CRON à l’heure qui vous conviendra, avec le user admin en précisant le chemin complet vers la MCCLI dans votre tâche, de la forme :

su - admin
crontab -e
00 12 * * * /usr/local/avamar/bin/mccli backup restore --name=/clients/ServeurA --plugin=3001 --labelNum=`/usr/local/avamar/bin/mccli backup show --name=/clients/ServeurB | awk 'NR==4 {print $4}'` --dest-client-name=/clients/ServeurB

Incoming search terms:

Avamar – VMware : L’intérêt du CBT (Changed Block Tracking)

Le billet de ce jour porte sur l’intérêt de la mise en place du mécanisme CBT pour la sauvegarde Avamar en mode VM Image et montrer en quoi cela peut accélérer d’un facteur 10 les sauvegardes et restorations (ou restauration en bon français).

CBT

Le Changed Block Tracking est un mécanisme crée par VMware ayant pour but d’optimiser les sauvegardes incrémentales.

Avec cette fonctionnalité les machines virtuelles sont capables de tracker les secteurs disques qui ont été modifiés (dans leur VMDK).

Les modifications de secteurs disques virtuels sont trackés en dehors de la VM, par l’hôte. Quand une application exécute un backup, cette dernière peut demander à l’hyperviseur de lui fournir uniquement les blocs modifiés depuis le dernier backup ainsi que les blocs en cours de modification.

La fonctionnalité CBT peut être accédée par les applications tierces via les APIs « vSphere APIs for Data Protection » (VADP). L’application fait des appels VADP pour demander au VMkernel de retourner les blocs de données présent dans les VMDK qui ont été modifié depuis le dernier snapshot de backup.

Mise en place côté VMware ESXi

Pré-requis : Pour activer cette fonctionnalité, il faut absolument être VM Hardware 7, la version 4 ne proposant pas ce mécanisme. Cette upgrade de hardware virtuel nécessite un arrêt de la machine virtuelle et s’effectue via un simple clic droit sur la VM, une fois éteinte. De plus, les disques doivent être de type autre que RDM (Raw Device Mapping) et ne doivent pas être partagés entre VMs.

Activation du mode CBT proprement dit

Clic droit sur la VM éteinte, « Edit Settings », onglet « options », menu « Advanced », sous-menu « General », bouton (à droite) « Configuration Parameters » et ajouter la première ligne et autant de seconde ligne que vous avez de disques virtuels, en fonction du node SCSI du disque :

ctkEnabled    true
scsi0:0.ctkEnabled    true

Une fois modifié, vous pouvez démarrer la VM.

Activation côté EMC Avamar

Côté Avamar, il faut éditer vos clients (VM Image toujours) :

Menu « Policy » :

Onglet « Clients », sélectionnez votre VM et cliquez sur le bouton « Edit » :

Sélectionnez l’onglet « VMware » et cochez la case « Enable changing block tracking » :

Il est possible d’activer le CBT sur l’ensemble des clients via une commande en MCCLI que je vous détaillerais dans un prochain billet.

Avamar – Ré-enregistrement de proxies en mode VM Image

Si vous souhaitez sauvegarder des VMs en mode VM Image (enveloppe complète et non pas granulaire) vous devrez déployer des proxies sur votre infrastructure VMware qui auront par fonction d’agir en tant que proxies entre votre vCenter et l’Utility Node Avamar. Ce sont ces proxies qui auront la charge du backup de vos machines virtuelles, sachant qu’un proxy ne peut sauvegarder qu’une VM à la fois. Si vous désirez paralléliser des sauvegardes en mode VM Image (plutôt qu’en mode guest), vous devrez simplement déployer autant de proxies que de tâches simultanées souhaitées, sachant qu’un Storage Node supporte jusqu’à 23 sessions simultanées.

Parfois, il se peut qu’un proxy ne communique plus avec l’Utiliy Node et doive être réenregistré.

Si vous avez déployé l’OVA en 6.1 (proxy unifié pour les VM Windows et Linux contrairement à la version différenciées en 6.0.1) alors vous devez ouvrir un shell directement sur le proxy concerné et lancer la commande suivante :

/usr/local/avamarclient/etc/initproxyappliance.sh start

Pensez bien à relever au préalable l’IP ou nom DNS de votre management server ainsi que le mot de passe MCUser qui vous sera demandé…