gluster-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: [Gluster-devel] Why integrate both client and server into a single e


From: Kirby Zhou
Subject: RE: [Gluster-devel] Why integrate both client and server into a single executable?
Date: Tue, 3 Feb 2009 00:07:41 +0800

I'm sorry, I had taken a mistake here. You are right, we can distinguish 
between client/server by the symbolic linked filename. But the program itself 
do not distinguish its role at least until 1.3.12. It means that somebody 
careless would set up a server daemon by the client process name. It should be 
a problem.
I do not know the actual situation of 2.0rc1, because of the 'NO_CONTENT_TYPE' 
problem I have noticed in some prior mails.
About point 2, I will check my APT system later, why the fuse-lib depends on 
kmod-fuse. 
About point 3, actually the size of stick is just 128M (because it's on board). 
So maybe it is a problem only for me, let's skip it.

-----Original Message-----
From: address@hidden [mailto:address@hidden On Behalf Of Gordan Bobic
Sent: Monday, February 02, 2009 10:53 PM
To: address@hidden
Subject: Re: [Gluster-devel] Why integrate both client and server into a single 
executable?

On Mon, 2 Feb 2009 22:04:15 +0800, Kirby Zhou <address@hidden>
wrote:
> Why integrate both client and server into a single executable?

Presumably because most of the code is shared between the two?
(e.g. socket code, config parsing code, logging, etc.)

> I think it brings a lot of trouble to server operators.
> 
> For example:
> 
> 1.      If client and server runs together on the same node, I don't know
> which process should be kill if some bug occurs.

Since there is only one process, there is only one process to kill/restart.
I'm not sure what you mean by "I don't know which process".

Note that you can still run it as a 2-process sytem, if you really want to.
# killall glusterfs
will kill the client.
# killall glusterfsd
will kill the server.

You could bolt this down more tightly by wrapping them and saving the PID
of the process into a file, traditionally in /var/run/.

> 2.      FUSE is not necessary in the server side, but I can not avoid
> install FUSE on the server side. It increases the security venture of the
> server side.

Hmm, you may have a point there, but you only need the fuse-libs, not the
fuse kernel module. I'm not convinced that the fuse libraries are a
significant security risk.

> 3.      It increase the file size of the final binary. I want to boot up
> the gluster server node from a small USB finger, the size of binary is
> important.

I'm not sure the size of the binary is all that significant when you factor
in the size of the kernel, initrd and a minimal root. Can you provide some
actual sizing figures on this? The smallest/cheapest USB memory stick I can
find right now is 1GB and they sell for about $5 / £3.5. Is an extra few
KB of a binary disk footprint really going to make that much difference? Or
are you thinking about putting this into something _really_ small like an
ARM based appliance?

Gordan


_______________________________________________
Gluster-devel mailing list
address@hidden
http://lists.nongnu.org/mailman/listinfo/gluster-devel






reply via email to

[Prev in Thread] Current Thread [Next in Thread]