Re: Graceful shutdown doesn't stop all Gluster processes

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

 



If I might chip in here, this can cause an issue when rebooting nodes unless you make sure to stop the Gluster processes first. If you don't stop the processes, then the Gluster volumes can pause for the default 42 seconds(?) until the other nodes time out the rebooting node. This is of course long enough to cause any VMs running their volumes on gluster to show I/O errors and re-mount them as read-only potentially causing all sorts of mischief.

I *think* there's a systemd solution to this somewhere, perhaps the RedHat packages?, that does stop the gluster processes prior to a reboot or halt.

Certainly the Debian packages *don't* have this solution in place. I wish they did but I've never mastered enough systemd foo to sort if out myself. :-).

Ronny


Aravinda wrote on 05/02/2024 19:09:
Hi Anant,

It was intentional design decision to not stop any gluster processes if Glusterd need to be upgraded or if Glusterd crashes. Because of this Volume availability will not be affected if any issues with Glusterd or Glusterd is upgraded. All the mounts will reconnect once the Glusterd comes back up. CLI operations from that node may not be available but IO will not be affected if the Glusterd is down (New mounts can't be created, but existing mounts should work without Glusterd).

stop-all-gluster-processes.sh is available as part of installation, it can be used to stop all the processes (Check in /usr/share/glusterfs/scripts)

--
Thanks and Regards
Aravinda
Kadalu Technologies



---- On Mon, 05 Feb 2024 22:40:30 +0530 Anant Saraswat <anant.saraswat@xxxxxxxxxxxxxx> wrote ---

Hello Everyone,


I am using GlusterFS 9.4, and whenever we use the systemctl command to stop the Gluster server, it leaves many Gluster processes running. So, I just want to check how to shut down the Gluster server in a graceful manner.


Is there any specific sequence or trick I need to follow? Currently, I am using the following command:


[root@master2 ~]# systemctl stop glusterd.service

[root@master2 ~]# ps aux | grep gluster
root     2710138 14.1  0.0 2968372 216852 ?      Ssl  Jan27 170:27 /usr/sbin/glusterfsd -s master2 --volfile-id tier1data.master2.opt-tier1data2019-brick -p /var/run/gluster/vols/tier1data/master2-opt-tier1data2019-brick.pid -S /var/run/gluster/97da28e3d5c23317.socket --brick-name /opt/tier1data2019/brick -l /var/log/glusterfs/bricks/opt-tier1data2019-brick.log --xlator-option *-posix.glusterd-uuid=c1591bde-df1c-41b4-8cc3-5eaa02c5b89d --process-name brick --brick-port 49152 --xlator-option tier1data-server.listen-port=49152
root     2710196  0.0  0.0 1298116 11544 ?       Ssl  Jan27   0:01 /usr/sbin/glusterfs -s localhost --volfile-id shd/tier1data -p /var/run/gluster/shd/tier1data/tier1data-shd.pid -l /var/log/glusterfs/glustershd.log -S /var/run/gluster/1ac2284f75671ffa.socket --xlator-option *replicate*.node-uuid=c1591bde-df1c-41b4-8cc3-5eaa02c5b89d --process-name glustershd --client-pid=-6
root     3730742  0.0  0.0 288264 14388 ?        Ssl  18:44   0:00 /usr/bin/python3 /usr/libexec/glusterfs/python/syncdaemon/gsyncd.py --path=/opt/tier1data2019/brick  --monitor -c /var/lib/glusterd/geo-replication/tier1data_drtier1data_drtier1data/gsyncd.conf --iprefix=/var :tier1data --glusterd-uuid=c1591bde-df1c-41b4-8cc3-5eaa02c5b89d drtier1data::drtier1data
root     3730763  2.4  0.0 2097216 35904 ?       Sl   18:44   0:09 python3 /usr/libexec/glusterfs/python/syncdaemon/gsyncd.py worker tier1data drtier1data::drtier1data --feedback-fd 9 --local-path /opt/tier1data2019/brick --local-node master2 --local-node-id c1591bde-df1c-41b4-8cc3-5eaa02c5b89d --slave-id eca32e08-c3f8-4883-bef5-84bfb89f4d56 --subvol-num 1 --resource-remote drtier1data --resource-remote-id 28f3e75b-56aa-43a1-a0ea-a0e5d44d59ea
root     3730768  0.7  0.0  50796  9668 ?        S    18:44   0:02 ssh -oPasswordAuthentication=no -oStrictHostKeyChecking=no -i /var/lib/glusterd/geo-replication/secret.pem -p 22 -oControlMaster=auto -S /tmp/gsyncd-aux-ssh-ep7a14up/75785990b3233f5dbbab9f43cc3ed895.sock drtier1data /nonexistent/gsyncd slave tier1data drtier1data::drtier1data --master-node master2 --master-node-id c1591bde-df1c-41b4-8cc3-5eaa02c5b89d --master-brick /opt/tier1data2019/brick --local-node drtier1data --local-node-id 28f3e75b-56aa-43a1-a0ea-a0e5d44d59ea --slave-timeout 120 --slave-log-level INFO --slave-gluster-log-level INFO --slave-gluster-command-dir /usr/sbin --master-dist-count 1
root     3730795  1.1  0.0 1108268 55596 ?       Ssl  18:44   0:04 /usr/sbin/glusterfs --aux-gfid-mount --acl --log-level=INFO --log-file=/var/log/glusterfs/geo-replication/tier1data_drtier1data_drtier1data/mnt-opt-tier1data2019-brick.log --volfile-server=localhost --volfile-id=tier1data --client-pid=-1 /tmp/gsyncd-aux-mount-9210kh43
root     3772665  0.0  0.0  12208  2400 ?        S    18:51   0:00 rsync -aR0 --inplace --files-from=- --super --stats --numeric-ids --no-implied-dirs --existing --xattrs --acls --ignore-missing-args . -e ssh -oPasswordAuthentication=no -oStrictHostKeyChecking=no -i /var/lib/glusterd/geo-replication/secret.pem -p 22 -oControlMaster=auto -S /tmp/gsyncd-aux-ssh-ep7a14up/75785990b3233f5dbbab9f43cc3ed895.sock drtier1data:/proc/897118/cwd
root     3772667  0.0  0.0  44156  5640 ?        S    18:51   0:00 ssh -oPasswordAuthentication=no -oStrictHostKeyChecking=no -i /var/lib/glusterd/geo-replication/secret.pem -p 22 -oControlMaster=auto -S /tmp/gsyncd-aux-ssh-ep7a14up/75785990b3233f5dbbab9f43cc3ed895.sock drtier1data rsync --server -logDtpAXRe.LsfxC --super --stats --numeric-ids --existing --inplace --no-implied-dirs . /proc/897118/cwd

For now, We are using https://github.com/gluster/glusterfs/blob/master/extras/stop-all-gluster-processes.sh to kill all the remaining processes.

Thanks,
Anant


DISCLAIMER: This email and any files transmitted with it are confidential and intended solely for the use of the individual or entity to whom they are addressed. If you have received this email in error, please notify the sender. This message contains confidential information and is intended only for the individual named. If you are not the named addressee, you should not disseminate, distribute or copy this email. Please notify the sender immediately by email if you have received this email by mistake and delete this email from your system.

If you are not the intended recipient, you are notified that disclosing, copying, distributing or taking any action in reliance on the contents of this information is strictly prohibited. Thanks for your cooperation.

________



Community Meeting Calendar:

Schedule -
Every 2nd and 4th Tuesday at 14:30 IST / 09:00 UTC
Bridge: https://meet.google.com/cpu-eiue-hvk
Gluster-users mailing list
Gluster-users@xxxxxxxxxxx
https://lists.gluster.org/mailman/listinfo/gluster-users


________



Community Meeting Calendar:

Schedule -
Every 2nd and 4th Tuesday at 14:30 IST / 09:00 UTC
Bridge: https://meet.google.com/cpu-eiue-hvk
Gluster-users mailing list
Gluster-users@xxxxxxxxxxx
https://lists.gluster.org/mailman/listinfo/gluster-users
--
Ronny Adsetts
Technical Director
Amazing Internet Ltd, London
t: +44 20 8977 8943
w: www.amazinginternet.com

Registered office: 85 Waldegrave Park, Twickenham, TW1 4TJ
Registered in England. Company No. 4042957
________



Community Meeting Calendar:

Schedule -
Every 2nd and 4th Tuesday at 14:30 IST / 09:00 UTC
Bridge: https://meet.google.com/cpu-eiue-hvk
Gluster-users mailing list
Gluster-users@xxxxxxxxxxx
https://lists.gluster.org/mailman/listinfo/gluster-users

[Index of Archives]     [Gluster Development]     [Linux Filesytems Development]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux