nigelbabu/arequal

Project ID: 11272

Description

Tool to test data integrity of GlusterFS

Installation Instructions

1. Generate data set

Create a data set to be used for the test. This data set should have file sizes and file count similar to the data set to be used in production. You could also use existing data (like /usr) as your dataset as it will not be modified. This document will use /usr as the example source directory.

2. Mount GlusterFS

Install, configure and start glusterfs servers and client. If the Replicate module is loaded, this tool can be used to perform data consistency check among the replicas. This document will use /mnt/glusterfs as the example mount point.

3. Start the test

sh# arequal-run.sh /usr/ /mnt/gluster/usr

4. Verify the output

The tool outputs two sets of checksums one after another on the standard output. Verify that all the values match against each other. This ensures that the data has been copied over properly into the GlusterFS mountpoint.

5. Extensive Replicate testing

The rest of the document is for testing the high availability and healing features of Replicate.

6. High availability testing

Restart step 3. While the script is in progress, kill one of the servers. Let the script continue to completion. The script should not fail because of one of the server getting killed. The checksums should still match.

7. Consistency testing

After step 3, run the following command on both the servers sh# arequal-checksum /export/directory The output values should match

8. Recovery testing

If step 7 is performed after step 6, the output values will not match since changes performed when one of the servers was down has not propagated to the backend.

Bring back the server up again. On the same mountpoint, run an ls -lR to force an access to all the files on the files involved.

Now calculate the checksums on both the backends as described in step 7. The output values should match.

Active Releases

The following unofficial repositories are provided as-is by owner of this project. Contact the owner directly for bugs or issues (IE: not bugzilla).

Release Architectures Repo Download
Epel for CentOS 6 i386 (0)*, x86_64 (0)* Epel for CentOS 6 (33 downloads)
Epel for CentOS 7 x86_64 (0)* Epel for CentOS 7 (1858 downloads)

* Total number of packages downloaded in the last seven days.