snmetadump(1) snmetadump(1)
NAME
snmetadump - Save and process a copy of the Xsan File System metadata
SYNOPSIS
snmetadump -d [-c] [-bF] [-D <n>] [-f dump_file] __FsName__ snmetadump -a [-m [-s [-M]]] [-bF] [-D <n>] [-f dump_file] __FsName__ snmetadump -r [-bF] [-D <n>] [-f dump_file] __FsName__ snmetadump -j journal_file... [-bF] [-D <n>] [-f dump_file] __FsName__ snmetadump -x [-bF] [-D <n>] [-f dump_file] __FsName__ snmetadump -X [-bF] [-D <n>] [-f dump_file] __FsName__
DESCRIPTION
The snmetadump utility provides the ability to create a copy of the volume metadata for use in restoring a volume after a disaster. If some portion of the Xsan volume is lost, the volume metadata can be restored from a copy of the metadata dump file. In a managed Xsan environment the metadata is kept up to date using special restore journal files. These restore journals describe the metadata updates that must be applied to a metadata dump to bring the dump up to date with the current volume metadata. In the case of a dis- aster and metadata recovery all managed files on the volume will be re- stored as long as they had been stored to tape. When the volume is ac- cessed after the metadata has been restored all files are in the "tape- only" state, meaning that the file will contain the data of the last copy stored. On a managed volume the process of keeping a metadata dump up to date by applying restore journal files is performed by the daily backup processing.
NON-MANAGED USAGE
A Xsan metadata dump has limited uses in a non-managed environment. On a non-managed volume the dump only matches the state of the metadata until the volume manager (FSM) process is started. After this point metadata and data will have changed and the dump file is out of date. However, saving a copy of the metadata is valuable during significant volume or hardware configuration changes, and during software upgrades. If accidental misconfiguration or data loss is encountered the metadata dump can be used to restore the state of the metadata. To create an snmetadump manually: 1. Stop the FSM. 2. If feasible, run cvfsck to verify the correctness of the metada- ta. This may take a significant amount of time depending on file system size and speed. 3. Run snmetadump -cd __FsName__ to create a new metadump. This may take a significant amount of time depending on file system size and speed. 4. Restart the FSM. If an issue arises requiring restoration of metadata, the following procedure should be used: 1. Restore the original file system configuration file that was present when the metadump was created. 2. Prepare the metadump for restore: snmetadump -am __FsName__ 3. Restore the metadump: snmetadump -r [-f dump_file] __FsName__ Note that if restore journals are not enabled, restoring a metadump will cause any changes to file system metadata made after the metadump was created to be lost. The metadump is only useful for restoring the state of the metadata given a valid, consistent configuration file. It will not roll back configuration changes or repair broken configurations.
METADATA RESIZING
The preferred way of expanding a volume is by adding stripe groups us- ing the cvupdatefs utility. However, in some scenarios it is necessary to resize existing stripe groups. In particular, this may be necessary when recovering from a disk array failure where the replacement disk array is not the same size as the original. The snmetadump utility provides a limited mechanism to allow this. The replacement stripe groups may have a different number of LUNs in them and those LUNs may be of different sizes than the original LUNs. No other aspect of the stripe group configuration may be changed or da- ta loss may result. In particular, the stripe breadth of the stripe groups cannot be al- tered during restore, so it is important that the original stripe breadth value is still suitable for the altered stripe group or perfor- mance degradation may result. If decreasing the size of stripe groups is required, the __FsName__.us- age report file in the metadump directory should be consulted. This report file is updated every time snmetadump applies restore journals and indicates the minimum size that each stripe group could be de- creased to, based on the existing data in the stripe group. To restore metadata to stripe groups that have been resized by changing the size of the LUNs, the number of LUNs, or both: 1. Create a backup copy of the volume configuration file and the metadump file. Restore these files if the resize operation should fail or need to be aborted for any reason. 2. Run snmetadump -a __FsName__ to optimize the metadump. 3. Alter the volume configuration file to include the desired LUNs in each stripe group. Do not alter the number of stripe groups or any other aspect of the storage layout. 4. Run snmetadump -a -s -m -M __FsName__ to prepare the metadump for metadata restore when the size or number of metadata disks has changed. The -M option disables the truncation of files for file systems where StorageManager or SnPolicy is enabled. File truncation is necessary and would normally occur when preparing the metadump for restore in disaster recovery. So if the resiz- ing of metadata disks is in conjunction with disaster recovery, do not use the -M option. 5. Run snmetadump -r __FsName__ to restore the metadump. 6. Run cvfsck to verify correctness of the restored metadata. (Rec- ommended)
NOTES
When saving a copy of the metadata it is recommended that copies of the volume configuration files are saved too. It is always recommended that cvfsck(1) is run before a metadata dump is saved. This will ensure that there are no metadata inconsistencies copied to the metadata dump. WARNING: Incorrect usage of this utility can result in data loss. Al- ways refer to the Xsan documentation before using this utility.
USAGE
-a Apply Metadata Changes - apply completed restore journals to the metadump and optimize the dump. This option will also close the current restore journal, open a new restore journal, then locate and apply the restore journals that need to be ap- plied to the metadata dump. The backup process will invoke sn- metadump with this option as part of the nightly backup on a managed volume. This operation must be performed in order for storage manager to read the dump file. -b Display the build information for this binary -c This option can only be run with the -d option. Clean up meta- data dump, restore journal and temporary files associated with a volume. When a new metadata dump is generated, previous restore journals are no longer needed or valid. When invoked with this option, snmetadump will check the metadump directory for files to clean up. This option cannot be undone, so it is recommended that all existing dump and restore journal files be backed up prior to execution. -d Dump Metadata - Read in the volume metadata and save a copy to a metadata dump file. This file can later be used to replace lost metadata in the case of system failure. The FSM must be stopped while the metadata dump is performed. It is recommended to use cvfsck to check the consistency of the metadata before creating a new metadump where feasible. -D <n> Turn on debugging flags (useful for support personnel only). -f dump_file Specify the name of the dump file to create or process. If no -f argument is given then the default dump file will be used. The default is /Library/Logs/Xsan/database/metadumps/metadump.Vol- Name. -F Force the operation. Override the state of a meta-dump which is undetermined or potentially incomplete. Only use this flag at the recommendation of StorNext technical support. -j journal_file Apply the specified restore journal to the metadata dump. NOTE: Normally, this option would be used only if there is a journal that needs to be applied manually just prior to volume restora- tion. This option is needed only if a journal needs to be ap- plied outside of normal -a processing. After using -j to apply a journal, snmetadump can no longer track which journals have or need to be applied, so either the metadata dump must be used to restore the volume or a new metadump needs to be created. -m Prepare a metadata dump for restore. The -m flag must be pro- vided with the -a flag. If the file system configuration indi- cates storageManager is enabled, this process will also truncate all files to allow for retrieval from tape after the restoration process. -r Restore Metadata - Read metadata state from the dump file and rebuild the volume metadata. Metadump must be prepared for re- store using the -m flag before restoring. All Xsan binaries and configuration files must be restored before this step can be processed. -s Resize Stripe Groups - Modify the metadump to reflect modified stripe group sizes in the configuration file. Must be used dur- ing restore preparation in conjunction with the -m flag. See above. -x Examine a metadata dump - Verify the format of the metadata dump -X Test the metadump status to verify that the metadump is valid and usable by snmetadump. In addition this check will test the metadump version to ensure that the metadump file is compatible with this version of snmetadump. If the metadump is usable sn- metadump will exit with a status of 0. If the metadump is not usable snmetadump will exit with a status of 1.
MORE NOTES
On a managed volume it is important to note that snmetadump is a single piece of a larger backup and restore procedure. Be sure to refer to the Xsan documentation before attempting to use this utility. Incorrect usage of this utility may result in data loss. The snmetadump utility depends on adequate free metadata space to re- cover file system metadata. It is recommended that managed Xsan file system use exclusive metadata stripe groups to prevent data files from taking up needed metadata space. In the case where the snmetadump util- ity determines that there is not enough metadata space to manage disas- ter recovery snmetadump will fail and recommend that an additional metadata stripe group be added. See the cvupdatefs(1) man page for more details on adding stripe groups.
RETURN VALUES
0 - Success 1 - Failure - There was an error processing the metadata dump 2 - Dump Busy - The dump is being processed by another instance of snmetadump. Try again later. See MORE NOTES section.
FILES
/Library/Logs/Xsan/database/metadumps/ Default location of metadump files for managed file systems /Library/Logs/Xsan/data/VolName/ Default location of metadump files for unmanaged file systems metadump.VolName Metadump file metadump.VolName.lock Temporary file lock for metadump file restore_journal-VolName.seqno.* Restore journal files. VolName.usage Metadump resizing report. See above.
SEE ALSO
snfs_config(5), cvmkfile(1), cvfsck(1), cvupdatefs(1), cvadmin(1) Xsan File System December 2005 snmetadump(1)
Mac OS X 10.9.1 - Generated Sun Jan 5 15:18:24 CST 2014