Reconciling files between IBM Storage Scale file system and cloud storage tier

This topic describes how to reconcile files that are migrated between IBM Storage Scale file systems and the cloud tier. The reconcile function runs automatically as part of maintenance activities. While it is possible to run reconcile from the CLI, it is generally not necessary to do so.

Note: To run reconcile on a given transparent cloud tiering managed file system, ensure that enough storage capacity is available temporarily under the root file system, to allow policy scan of a file system. Rough space requirements are (300 x NF), where NF is the number of files. For example, if a transparent cloud tiering managed file system has 1 billion inodes, then temporary space requirement for reconcile would be 300 GB (300 x 1 B). For more information, see the -s LocalWorkDirectory option in the mmapplypolicy command.

The purpose of reconcile to is ensure that the cloud database is aligned properly with the IBM Storage Scale file system on state of files that have been tiered to the cloud. Such discrepancies can take place due to power outages and other such failures. It is recommended that this command be run every couple of months. This command needs to be run on every container pair. It should not be run in parallel with other maintenance commands like full cloud database backup but should be run in parallel with other maintenance commands (or migration policies) that affect that particular container. Also, this command should not be run while a policy migrate is being run.

There is another reason that you may want to run reconcile. Although there is a policy currently in place to automatically delete files in the cloud that have been deleted in the file system and similar support for older versions of files, that support is not fully guaranteed to remove a file. When for legal reasons or when there is a critical need to know for sure that a file has been deleted from the cloud, it is recommended that you run the reconcile command as shown below.

For example:
mmcloudgateway files reconcile --container-pair-set-name MyContainer gpfs_Container

Wed Nov 15 11:29:35 EST 2017
processing /ibm/gpfs_Container
Wed Nov 15 11:29:38 EST 2017  Reconcile started.
Wed Nov 15 11:29:38 EST 2017  Creating snapshot of the File System...
Wed Nov 15 11:29:39 EST 2017  Running policy on Snapshot to generate list of files to process.
Wed Nov 15 12:52:50 EST 2017  Removing snapshot.
Wed Nov 15 12:52:52 EST 2017  Reconcile is using a deletion retention period of 30 days.
Wed Nov 15 12:54:03 EST 2017  Reconcile will be processing 92617766 inode entries.
Wed Nov 15 12:54:03 EST 2017  Adding missing migrated files to the database...
Wed Nov 15 12:55:21 EST 2017  Processed 926178 entries out of 92617766.
Wed Nov 15 12:56:12 EST 2017  Processed 1852356 entries out of 92617766.
Wed Nov 15 12:56:59 EST 2017  Processed 2778533 entries out of 92617766.
Wed Nov 15 12:57:46 EST 2017  Processed 3704711 entries out of 92617766.
Wed Nov 15 12:58:34 EST 2017  Processed 4630889 entries out of 92617766.
Wed Nov 15 12:59:20 EST 2017  Processed 5557066 entries out of 92617766.

...
Wed Nov 15 14:13:15 EST 2017  Processed 92617766 entries out of 92617766.
Wed Nov 15 14:13:19 EST 2017  Reconcile found 228866 files that had been 
migrated and were not in the directory.
Wed Nov 15 14:13:19 EST 2017  Reconcile detected 0 deleted files that were
deleted more than 30 days ago.
Wed Nov 15 14:13:19 EST 2017  Reconcile detected 12 migrated files that have
been deleted from the local file system, but have not been deleted from object
storage because they are waiting for their retention policy time to expire.
Wed Nov 15 14:13:19 EST 2017  Please use the 'mmcloudgateway files cloudList'
command to view the progress of the deletion of the cloud objects.
Wed Nov 15 14:13:21 EST 2017  Reconcile successfully finished.
mmcloudgateway: Command completed.

gpfs_Container is the device name of the file system that is associated with the node class, and MyContainer is the container where the cloud objects are stored.

You can delete files from cloud storage by using the deletion policy manager. However, you can also guarantee deletion by using a reconcile to manage the mandatory deletions. For example, if a migrated file is removed from the file system, a reconcile guarantees removal of the corresponding cloud objects and references that are contained in the cloud directory. Additionally, if multiple versions of a file are stored on the cloud, reconcile removes all older cloud versions (keeping the most recent). For example, if a file is migrated, then updated, and migrated again. In this case, two versions of the file are stored on the cloud. Reconcile removes the older version from the cloud. Reconcile also deletes cloud objects that are no longer referenced.
Note: Reconcile removes entries from the cloud directory that references deleted file system objects. Therefore, it is recommended that you restore any files that must be restored before you run a reconcile. It is also recommended to run the reconciliation operation as a background activity during low load on the transparent cloud tiering service nodes.