[Gluster-users] Best practice to stop the Gluster CLIENT process?
Robert Klemme
shortcutter at googlemail.com
Tue May 10 12:02:14 UTC 2011
On Fri, May 6, 2011 at 9:14 PM, Martin Schenker
<martin.schenker at profitbricks.com> wrote:
> So if I get this right, you'll have to rip the heart out (kill all gluster
> processes; server AND client) in order to get to the local server
> filesystem.
>
> I had hoped that the client part could be left running (to the second mirror
> brick) when doing repairs etc. Looks like a wrong assumption, I guess...
You can do that. I just did it with 3.0.2 on my test [cg]luster. Two
nodes, one volume mirrored, both acting as server and client with a
local mount. I killed glusterfs (the server demon) on one machine,
then checked with "find /mount_point | xargs lsof': no open files.
Then unmounted successfully and checked the file system with fsck -f.
In the meantime I could create and edit files on the mirrored volume
without issues. After I brought up the node's server again files were
updated properly and both servers were back in sync.
> Are client/server hybrids ONLY connected to the LOCAL server?
>From what I understand in 3.0.2 there is just one demon implementation
but several instances:
rklemme at gl01:~$ pstree -A
init-+-atd
|-cron
|-dhclient3
|-5*[getty]
|-glusterfs---2*[{glusterfs}]
|-glusterfs---10*[{glusterfs}]
|-login---bash
|-portmap
|-rpc.statd
|-rsyslogd---3*[{rsyslogd}]
|-sshd---sshd---sshd---bash---pstree
|-udevd---2*[udevd]
`-upstart-udev-br
rklemme at gl01:~$
The first subtree are the server instances, the second subtree are the
client instances it seems. Clients connect to both instances.
rklemme at gl01:~$ netstat -n -a | sed -n -e '1,2 p;/6996/ p'
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:6996 0.0.0.0:* LISTEN
tcp 0 0 192.168.57.1:1022 192.168.57.1:6996 ESTABLISHED
tcp 0 0 192.168.57.1:1020 192.168.57.2:6996 ESTABLISHED
tcp 0 0 192.168.57.1:6996 192.168.57.1:1023 ESTABLISHED
tcp 0 0 192.168.57.1:6996 192.168.57.2:1022 ESTABLISHED
tcp 0 0 192.168.57.1:6996 192.168.57.2:1023 ESTABLISHED
tcp 0 0 192.168.57.1:6996 192.168.57.1:1022 ESTABLISHED
tcp 0 0 192.168.57.1:1023 192.168.57.1:6996 ESTABLISHED
tcp 0 0 192.168.57.1:1021 192.168.57.2:6996 ESTABLISHED
.1 is the local node, .2 is the other one.
Story seems to be slightly different with 3.2 in so far as there seem
to be different executables for server and client.
Kind regards
robert
--
remember.guy do |as, often| as.you_can - without end
http://blog.rubybestpractices.com/
More information about the Gluster-users
mailing list