Avamar : Utilisation du script dump_root_hashes.rb pour générer une liste de clients et de sauvegardes
Summary: Utilisation du script Avamar Engineering « dump_root_hashes.rb » pour générer une liste de clients et de sauvegardes. Cela peut être utile pour résoudre les problèmes de capacité, de réplication et d’autres problèmes. Cet article est connu sous le nom KB 502709. ...
Instructions
Cet article traite des fonctionnalités du script Avamar Engineering « dump_root_hashes.rb » et fournit au lecteur des conseils de base sur son utilisation.
Cas d’utilisation types :
- Génération d’une liste des clients et de leurs propriétés (par exemple, ID client, domaine) sur un système.
- Comparaison d’une liste de clients entre deux systèmes.
- Création d’une liste de toutes les sauvegardes sur une grille Avamar et de leurs propriétés. Parmi ceux-ci figurent le hachage racine, la taille, l’identifiant du plug-in, le domaine, le nom du client, durée d’expiration, rétention et taille.
- Comparaison des sauvegardes stockées sur une paire de grilles Avamar de réplication (utile pour identifier les sauvegardes manquantes ou excédentaires par grille Avamar : une paire de réplication présente des niveaux d’utilisation de capacité différents. Procédure de recherche des causes. Vous devrez peut-être vous connecter au support Dell pour accéder à cet article.)
Le script reconnaît les sauvegardes exécutées à partir d’Avamar, mais envoyées à Data Domain.
Téléchargement du script :
Pour plus d’informations sur la localisation et le téléchargement du script, reportez-vous à l’article suivant : Avamar : Recherche et téléchargement des scripts et des outils Avamar à partir de la page Dell Central Avamar.
Exécution du script :
Le script est exécuté en préfixant le nom du script par « ruby » (voir ci-dessous) :
ruby dump_root_hashes.rb --help
Starting up dump_root_hashes.rb version 0.10.2 at 2019-10-21 02:17:21 +0000 (2019-10-21 02:17:21 UTC) Usage: dump_root_hashes.rb [options] Overview of the script's features Running the script with the --help flag shows a list of features. Below is output showing features of the script as of release 0.10.2. Options: -q, --quiet Suppress progress counters --mode=<backuplist|backupcompare|clientlist|clientcompare|genpasswordfile|connchk> Specify the script mode. Supported modes: backuplist (default) - generate a report showing the list of all backups on the system; include the following information: -system name -client name -domain -backup create time -backup expiration time -retention tags -backup size -root hash backupcompare - generate a report showing backup information for both source and target; requires a --dstaddr parameter clientlist - generate a report showing the client information for all client accounts clientcompare - generate a report showing the client information for both source and target; requires a --dstaddr parameter genpasswordfile - generate a file containing obfuscated login credentials connchk - run a GSAN connectivity test -s, --srcaddr=ADDRESS Specify the replication source. Defaults to the local system. --src-password-file=FILENAME Specify a file containing credentials for the source system. Only needed if source and destination passwords differ. -d, --dstaddr=ADDRESS Specify the replication destination for "compare" modes --dst-password-file=FILENAME Specify a file containing credentials for the destination system. Only needed if source and destination passwords differ. Filtering Options: NOTE: Filter flags apply to BOTH source AND destination systems unless otherwise noted! --before=DATE Only report on backups created before DATE. This date can be any string understood by the GNU "date" utility. --after=DATE Only report on backups created after DATE. This date can be any string understood by the GNU "date" utility. --srcpath=PATH Limit reporting on the source system to domains and clients under the specified path. --dstpath=PATH Limit reporting on the destination system to domains and clients under the specified path. --mc-deleted=<include|skip> Skip the MC_DELETED domain by default --mc-retired=<include|skip> Traverse the MC_RETIRED domain by default --partials=<include|skip> Skip partial backups by default --expired=<include|skip> Skip expired backups by default --replicate=<include|skip> Traverse the REPLICATE domain by default --system-accounts=<include|skip> Skip the system accounts MC_BACKUPS, EM_BACKUPS, AVI_BACKUPS, etc. by default --adme=<include|skip> Skip the ADME domain by default Output Options: --outfile=FILENAME The report is written to this file. Defaults to "<mode>.csv", where <mode> is the script mode. The file is overwritten if it exists. --format=<csv> Data format to use for export. Supported formats: csv (default) - comma separated values; suitable for spreadsheet import --[no-]showprectime Include the backup creation precision time in report --[no-]show-ddr-info Include DDR presence information and ddrindex in report --[no-]show-tier-info Include cloud tiering information in report --[no-]showbackuptype Include the backup type (Full, Incremental+Full, etc. in report --[no-]showhybridbackups Detect hybrid backups, where a DD backup has data on GSAN (slow) --hybridsearchtimeout=n How long to wait for hybrid backup search avtar calls to return in seconds. Defaults to 300s. Set to 0 to disable timeout. --[no-]showlabel Include the backup's text label in report --[no-]showpidnum Include the backup's plugin id (pid number / pidnum) in report --[no-]showpiddesc Include a short plugin description for each backup in report --compression=<none|gzip> Use the specified compression for the output file. Defaults to gzip. --presence=src,dst,both Limit output to records only on the src, only on the dst, on both systems, or some combination thereof Shows all records by default (equivalent to --presence=src,dst,both) --[no-]header Include the header line in CSV files Script Options: --debug Enable debug logging. --memory-limit=n How much virtual memory the script can use in bytes. Defaults to 4GB. --avmgrdebug=<none|getl|getb|all> Enable debugging for avmgr queries. Defaults to none. --avmgr-debug-file=FILENAME Write avmgr debug information to the specified file. Defaults to drh_avmgr_debug.log. --getl-timeout=n How long to wait for avmgr getl to return in seconds. Defaults to 60s. Set to 0 to disable timeout. --getl-retries=n How many times to retry an avmgr getl command before giving up. Defaults to 5. --getb-timeout=n How long to wait for avmgr getb to return in seconds. Defaults to 300s (5 minutes). Set to 0 to disable timeout. --getb-retries=n How many times to retry an avmgr getb command before giving up. Defaults to 5. --encrypt=<none|proprietary|ssl|tls|tls-sa> Set encryption mode. Defaults to tls. --src-encrypt=<none|proprietary|ssl|tls|tls-sa> Set source encryption mode. Overrides --encrypt if both are specified. Defaults to tls. --dst-encrypt=<none|proprietary|ssl|tls|tls-sa> Set destination encryption mode. Overrides --encrypt if both are specified. Defaults to tls. -h, --help Display help text -v, --version Display version information
Additional Information
Utilisation du script pour comparer les sauvegardes stockées sur une paire de grilles de réplication Avamar :
Le dump_root_hashes.rb script peut être utile pour identifier les sauvegardes excédentaires ou manquantes quand des clients disposent d’une paire de grilles Avamar de réplication configurées. Généralement, on s’attend à ce que les niveaux de capacité soient similaires et que les sauvegardes des jours précédents, au minimum, aient été répliquées.
Exemple :
Les commandes suivantes doivent être exécutées sur la grille Avamar source. Spécifiez le nom du serveur Avamar cible dans la commande pour appeler le mode backupcompare . (Les dernières versions du script signalent automatiquement la présence de sauvegardes sur Data Domain)
ruby dump_root_hashes.rb --dstaddr=<target-avamar-servername>
Failed to connect to GSAN on avamar2.xxx.com. Check name resolution, network connectivity, and firewall settings.
Pour que le script s’exécute correctement, un fichier de mots de passe brouillé doit être généré en exécutant le script en mode « genpasswordfile ».
Pour des raisons de sécurité, les informations d’identification ne peuvent pas être transmises directement au script à l’aide de la ligne de commande :
admin@avamar1:~/>: ruby dump_root_hashes.rb --mode=genpasswordfile
Starting up dump_root_hashes.rb version 0.8.3 at 2018-02-16 14:14:34 +0000 (2018-02-16 14:14:34 UTC) Running in password file generation mode. Password filename: avamar2.pass Username [root]: Password: Encoding password Writing encoded password to /space/home/admin/avamar2.pass Password information successfully written to /space/home/admin/avamar2.pass Use --src-password-file=/space/home/admin/avamar2.pass or --dst-password-file=/space/home/admin/avamar2.pass to pass these credentials into the script.
Ce fichier de mot de passe peut ensuite être transmis au script à l’aide de l’un des paramètres ci-dessus (selon que vous tentez de vous connecter à distance à la source ou à la destination).
Exemple :
ruby dump_root_hashes.rb --dstaddr=<target-avamar-servername> --dst-password-file=<path-to-password-file> --show-ddr-info
À la fin de l’exécution du script, un fichier .CSV est généré avec un format similaire à celui-ci :backupcompare_<source>_to_<target>.domain.com_YYYY-MM-DD_HHMM
Le fichier peut être ouvert dans Excel et est mis en forme avec les noms de colonne suivants :
- Clé
- Hachage racine
- Sur Data Domain
- Grille source
- Domaine source
- Client source
- src_created (UTC)
- src_expires (UTC)
- src_retention_type
- src_bytes
- src_labelnum
- src_ddrindex
- Grille de destination
- Domaine de destination
- Client de destination
- dst_created (UTC)
- dst_expires (UTC)
- dst_retention_type
- dst_bytes
- dst_labelnum
- dst_ddrindex
Ces colonnes peuvent être utilisées pour trier et filtrer les données.
La première colonne « Key » est particulièrement utile dans cette situation. Les valeurs ici indiquent si la sauvegarde est stockée sur le système source (S), sur la destination (d) ou sur les deux systèmes (B).
Nous nous attendons à ce que le système source puisse avoir des sauvegardes qui ne sont pas (encore) présentes sur la cible. Cela est dû au décalage naturel entre le moment où la sauvegarde est écrite sur la sauvegarde source et celui où elle est répliquée sur la cible (généralement le jour suivant).
Regardez cette vidéo :