From abaebaef5ab7e3bef254ded2ef9bb93aaa6c39dc Mon Sep 17 00:00:00 2001 From: Venkatesh Somyajulu Date: Tue, 20 May 2014 19:50:10 +0530 Subject: doc: afr-statistics command documentation Change-Id: I44ae593c319a3ad2f724e1d8e9557d94c4200765 BUG: 1086748 Signed-off-by: Venkatesh Somyajulu Reviewed-on: http://review.gluster.org/7791 Reviewed-by: Humble Devassy Chirammal Reviewed-by: Pranith Kumar Karampuri Tested-by: Pranith Kumar Karampuri --- doc/features/afr-statistics.md | 142 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 142 insertions(+) create mode 100644 doc/features/afr-statistics.md (limited to 'doc/features') diff --git a/doc/features/afr-statistics.md b/doc/features/afr-statistics.md new file mode 100644 index 00000000000..d0705845aa4 --- /dev/null +++ b/doc/features/afr-statistics.md @@ -0,0 +1,142 @@ +##gluster volume heal statistics + +##Description +In case of index self-heal, self-heal daemon reads the entries from the +local bricks, from /brick-path/.glusterfs/indices/xattrop/ directory. +So based on the entries read by self heal daemon, it will attempt self-heal. +Executing this command will list the crawl statistics of self heal done for +each brick. + +For each brick, it will list: +1. Starting time of crawl done for that brick. +2. Ending time of crawl done for that brick. +3. No of entries for which self-heal is successfully attempted. +4. No of split-brain entries found while self-healing. +5. No of entries for which heal failed. + + + +Example: +a) Create a gluster volume with replica count 2. +b) Create 10 files. +c) kill brick_1 of this replica. +d) Overwrite all 10 files. +e) Kill the other brick (brick_2), and bring back (brick_1) up. +f) Overwrite all 10 files. + +Now we have 10 files, which are in split brain. Self heal daemon will crawl for +both the bricks, and will count 10 files from each brick. +It will report 10 files under split-brain with respect to given brick. + +Gathering crawl statistics on volume volume1 has been successful +------------------------------------------------ + +Crawl statistics for brick no 0 +Hostname of brick 192.168.122.1 + +Starting time of crawl: Tue May 20 19:13:11 2014 + +Ending time of crawl: Tue May 20 19:13:12 2014 + +Type of crawl: INDEX +No. of entries healed: 0 +No. of entries in split-brain: 10 +No. of heal failed entries: 0 +------------------------------------------------ + +Crawl statistics for brick no 1 +Hostname of brick 192.168.122.1 + +Starting time of crawl: Tue May 20 19:13:12 2014 + +Ending time of crawl: Tue May 20 19:13:12 2014 + +Type of crawl: INDEX +No. of entries healed: 0 +No. of entries in split-brain: 10 +No. of heal failed entries: 0 + +------------------------------------------------ + + +As the output shows, self-heal daemon detects 10 files in split-brain with +resept to given brick. + + + + +##gluster volume heal statistics heal-count +It lists the number of entries present in +//.glusterfs/indices/xattrop from each-brick. + + +1. Create a replicate volume. +2. Kill one brick of a replicate volume1. +3. Create 10 files. +4. Execute above command. + +-------------------------------------------------------------------------------- +Gathering count of entries to be healed on volume volume1 has been successful + +Brick 192.168.122.1:/brick_1 +Number of entries: 10 + +Brick 192.168.122.1:/brick_2 +No gathered input for this brick +------------------------------------------------------------------------------- + + + + + + +##gluster volume heal statistics heal-count replica \ + ip_addr:/brick_location + +To list the number of entries to be healed from a particular replicate +subvolume, listing any one child of that replicate subvolume in the command, +will list the entries for all the childrens of that replicate subvolume. + +Example: dht + / \ + / \ + replica-1 replica-2 + / \ / \ + child-1 child-2 child-3 child-4 + /brick1 /brick2 /brick3 /brick4 + +gluster volume heal statistics heal-count ip:/brick1 +will list count only for child-1 and child-2. + +gluster volume heal statistics heal-count ip:/brick3 +will list count only for child-3 and child-4. + + + +1. Create a volume same as mentioned in the above graph. +2. Kill Brick-2. +3. Create some files. +4. If we are interested in knowing the number of files to be healed from each + brick of replica-1 only, mention any one child of that replica. + +gluster volume heal volume1 statistics heal-count replica 192.168.122.1:/brick2 + +output: +------- +Gathering count of entries to be healed per replica on volume volume1 has \ +been successful + +Brick 192.168.122.1:/brick_1 +Number of entries: 10 <--10 files + +Brick 192.168.122.1:/brick_2 +No gathered input for this brick <-Brick is down + +Brick 192.168.122.1:/brick_3 +No gathered input for this brick <--No result, as we are not + interested. + +Brick 192.168.122.1:/brick_4 <--No result, as we are not +No gathered input for this brick interested. + + -- cgit