[OpenAFS] OpenAFS with RAID

Paul Robins paul@paulrobins.alldaypa.com
Wed, 28 Dec 2005 13:37:32 +0000

I'll reply in one if that's ok (sorry for the topposting)

I would expect a disk to be the thing to go to be honest but regardless, 
i want some system where there is parity data stored on other nodes in 
this group of machines. Basically RAID5 but networked would be perfect, 
as that would give me ~ 400 gig of space whilst being able to handle a 
machine vanishing from the network (the whole machine dies when the disk 
does, cheap whiteboxes don't you know)

I understand the way AFS works with regards to clients seeing /afs, and 
i did see read only replication, and then running a command to change a 
read only node(?) into a read write node (i'm sorry if i'm talking crap, 
i'd read the wiki if i could). This is why i figured perhaps it could be 
implimented with some sort of networked RAID5, giving me a lot more 
storage than just RO mirroring one server to the other 3, but whilst 
still being redundant.

Thanks for the help,

Horst Birthelmer wrote:
> On Dec 28, 2005, at 1:55 PM, Paul Robins wrote:
>>> I just assume you're planning to do this on Linux.
>> Yes apologies, linux, probably reasonably modern 2.6 kernel
>>> Since there is no other fileserver than a 'namei' on Linux, you  can  
>>> use it on any device (the LVM is usually completely  transparent) 
>>> and  with any filesystem you think it suits best.
>> Excellent, that makes things so much easier
>>> For the rest of the questions, I don't know how you think you can   
>>> 'network' RAIDs.
>> I was referring to using something like ENBD to create a RAID array  
>> across a network
> That's on what I commented further below.
> If you put the network somewhere else than in the file system, it's  
> getting more complicated.
>>> If you want to use available storage from all of your  fileservers,  
>>> that's what AFS will help you do.
>>> You'll have one namespace and from a users perspective you won't  
>>> have  to care about where the storage actually is located.
>>> Actually that's what a distributed and even a network file system  
>>> is  all about.
>> Indeed, what i was referring to is having 4 servers and maintaining  
>> some form of redundancy, so that the AFS volume (namespace?) could  
>> survive a single server failure, whilst having more than the 180  gig 
>> currently free on each machine. I kinda assumed it was impossible
> So, you expect a network interface failure, or machine failure?
> Since you can have a lot of redundancy with your RAID design.
> What I meant by 'namespace', is how afs appears on all of your clients.
> You'll have a (more or less) fix mount point '/afs' for the AFS  space. 
>  From that point on, everything is 'free'.
> You can mount volumes from foreign cells, mount volumes multiple  times, 
> whatever you want to do.
> This tree looks the same on all of your clients.
> The replication of volumes in AFS works only for read-only data.  Maybe 
> you read about that, and that's where most people start getting  'design 
> ideas'... ;-)
> Strictly spoken, you could build that kind of redundancy (something  
> like network based RAID 0) with AFS, but I consider that, abusing the  
> design.
>>> If you think of placing the network some layers lower, like in  the  
>>> block device, etc., AFS can't help.
>> Yeah i figured as much, i was just wondering if AFS contained any  way 
>> of doing the above.
> Yes and no ...
> What you plan is doable with AFS, but I'm not sure you'll get an  
> optimal solution by just using AFS.
> Maybe you have to reconsider, what data should survive a machine  
> failure, etc. and how your disaster recovery would look like.
> Horst