[OpenAFS] Moving volume to server with existing RO replica

Horst Birthelmer horst@riback.net
Mon, 19 Apr 2004 12:07:58 +0200

First, sorry I didn't put the list on cc on my first response...
(it just happens once in a while) :-)

On Monday, April 19, 2004, at 11:24 AM, Lukas Kubin wrote:

> Horst Birthelmer wrote:
>> Hi,
>> On Monday, April 19, 2004, at 10:11 AM, Lukas Kubin wrote:
>>> I'm moving a volume to another server, where a RO replica of that 
>>> volume
>>> is already present. I thought it will just change some information in
>>> headera of that volu. But it moves all the data to the server with RO
>>> replica again.
>> As far as I know the actual volume information is the RW volume.
>> So if you're moving that one you REALLY move THE volume.
>> I don't see any reason why that should act differently.
>>> 1. Why? Is there a way how to do such operation fast?
>> how fast??
>> If you're talking about just transferring the differences, well 
>> that's a quite good idea :-))
>> You still have to copy the RO volume and then somehow do the opposite 
>> of the 'vos release'.
>> That's quite complicated don't you think??
> Let's say I have 50 GB volume. It is RW volume on server A and RO 
> replica on server B. So there are 50 GB of same data on A and 50 GB on 
> server B.
> Now I want the volume to be only stored on server B. So I do a 'vos 
> release' and expect the move operation will find the data in A/RW and 
> B/RO are the same and so it is useless to transfer them again. It 
> didn't happen. Instead, it moved them all through the network again to 
> a new volume on B. Also, during the time of the move proces the space 
> used by the volume on B grows up to 100 GB (50GB of RO replica + up to 
> 50 GB of incoming data for the volume being moved).
> Is there any reason for the system to behave this way?

 From my point of view there is ... why should a volume move operation 
check all replicas by the volume location and it never knows if the 
data is really there and so on and so forth.
You (the administrator) know that. Why and how would the AFS fileserver 
know that??
I hope Derrick or some guy with a deeper knowledge of the AFS design 
could provide some arguments. I just don't see the point in it. You 
(the admin) have some knowledge about your cell. That's fine. Why 
should AFS be intelligent in the moving process??

If you as the administrator told AFS to store two copies of the same 
volume on the same server. Why should AFS stop you from doing so???

>>> 2. The servers are connected with 1Gbps connection. The data are only
>>> transferred at 5Mbps, however. Both servers also have free capacity 
>>> on
>>> CPU, memory, they are quite idle in this time. Is it normal for the 
>>> move
>>> operation to be that slow?
>> 5Mbps is a little slow if your connection is fast.
>> The RX connection isn't famous for being fast as light but 5Mbps is 
>> really slow.
>> You should check your cache and chunksizes.
> I've never configured this parameters. Could you give me any advise 
> what to check. Both the servers are Dell Poweredge running Debian 
> Linux. AFS client's parameteters on the servers are thos set by Debian 
> default, ie: "-stat 2000 -dcache 800 -daemons 3 -volumes 70"
> Now I've found the server processes (volserver, fileserver, etc.) are 
> runned without any parameters. I guess I should use some ;-) Are there 
> any examples listed somewhere?

What I was talking about was the chunksize and the cache of your 
clients but I realized after i sent the mail that you had a fileserver 
to fileserver communication.
Sorry, that was wrong info.

The only things you may want to play around with are the -udpsize 
paramters, -vc (volume cache size) of the fileserver. BUT be cautious!!!