Bug 798023 - Can't replace node on failure
Summary: Can't replace node on failure
Keywords:
Status: CLOSED WONTFIX
Alias: None
Product: Fedora
Classification: Fedora
Component: hekafs
Version: 16
Hardware: Unspecified
OS: Unspecified
low
low
Target Milestone: ---
Assignee: Kaleb KEITHLEY
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: 798308
TreeView+ depends on / blocked
 
Reported: 2012-02-27 20:52 UTC by cr
Modified: 2012-07-16 13:38 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
: 798308 (view as bug list)
Environment:
Last Closed: 2012-07-16 13:38:27 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description cr 2012-02-27 20:52:59 UTC
Description of problem:

If on node failed I can't replace it, got key error.

Version-Release number of selected component (if applicable):

0.7-15.fc16

What is the plan to replace an node which failure? 

Can't mount the volume if one node did not come up... Need quick solution.

Comment 1 Kaleb KEITHLEY 2012-02-28 12:51:23 UTC
See 

  http://gluster.org/community/documentation//index.php/Gluster_3.2:_Brick_Restoration_-_Replace_Crashed_Server

for guidance on replacing a failed node.

If this doesn't work you can ask for help on IRC on #gluster @ freenode

Comment 2 Jeff Darcy 2012-02-28 14:28:38 UTC
To elaborate on Kaleb's answer...

In HekaFS, each tenant effectively has their own volume assembled from the per-tenant directories on each brick.  This is what allows different tenants to use different replication levels etc. (even though this feature isn't currently exposed through the management interfaces).  What this means for replacing a failed node is that the GlusterFS instructions will work as far as getting the new node/brick(s) into the system, but each tenant must do their own self-heal.

The GlusterFS instructions also fail to mention that a client will need to re-mount so it will know to connect to the new server instead of the old one.  This is as true in HekaFS as it is in "vanilla" GlusterFS.

Comment 3 cr 2012-02-28 14:38:15 UTC
(In reply to comment #2)
> To elaborate on Kaleb's answer...
> 
> In HekaFS, each tenant effectively has their own volume assembled from the
> per-tenant directories on each brick.  This is what allows different tenants to
> use different replication levels etc. (even though this feature isn't currently
> exposed through the management interfaces).  What this means for replacing a
> failed node is that the GlusterFS instructions will work as far as getting the
> new node/brick(s) into the system, but each tenant must do their own self-heal.
> 
> The GlusterFS instructions also fail to mention that a client will need to
> re-mount so it will know to connect to the new server instead of the old one. 
> This is as true in HekaFS as it is in "vanilla" GlusterFS.

Hi,

first thank you for the informations and support.
Can you explain how I can start the self healing process for the tenants? Is this the same find command like in this how to:

http://gluster.org/community/documentation/index.php/Gluster_3.2:_Triggering_Self-Heal_on_Replicate

And what is more important, I add two more bricks to an volume and after remount we did not found andy folders which was on the first 2 bricks. 
Self healing is not working, I can mkdir the folder and the systems tells me that the folder exists but we have a lot of subfolders and can't mkdir to all this folders.

Comment 4 Jeff Darcy 2012-02-28 14:56:09 UTC
(In reply to comment #3)
> Can you explain how I can start the self healing process for the tenants? Is
> this the same find command like in this how to:
> 
> http://gluster.org/community/documentation/index.php/Gluster_3.2:_Triggering_Self-Heal_on_Replicate

That is correct, with the caveat that it must be done separately through each tenant mountpoint.

> And what is more important, I add two more bricks to an volume and after
> remount we did not found andy folders which was on the first 2 bricks. 
> Self healing is not working, I can mkdir the folder and the systems tells me
> that the folder exists but we have a lot of subfolders and can't mkdir to all
> this folders.

If I recall our conversation on IRC correctly, you said that you had created a new volume with the same name as a previous one, but with more bricks.  This seems a bit problematic with respect to things like brick UUIDs and xattr values.  To diagnose, we'll need some more information, such as:

* client and server logs (especially the embedded volfiles and messages from around each daemon's startup)

* xattr values (anything with "gluster" in the name) from at least the per-tenant directories on each brick

Then again, this seems to be a separate problem so perhaps it should be a separate bug.  Mind if I clone this one?

Comment 5 cr 2012-02-28 15:09:24 UTC
Yes this would be fine, 

I have to recreate an Volume with same name, I did not have an option to expand my Volume,.

client Volfile from hfs_mount:

http://pastie.org/3480507

Volfile Node1:

http://pastie.org/3480544

Volfile Node2:

http://pastie.org/3480550

Volfile Node3:

http://pastie.org/3480558

Volfile Node4:

http://pastie.org/3480563

Comment 6 Kaleb KEITHLEY 2012-07-16 13:38:27 UTC
HekaFS will be merged into core GlusterFS


Note You need to log in before you can comment on or make changes to this bug.