Marco Marino
2015-Jan-19 08:34 UTC
[Gluster-users] Glusterfs upgrade to 3.5 without downtime
Hi. I'm using glusterfs (replica 2) as a storage backend for openstack vm instances (ephemeral disks). Each compute node mounts glusterfs in /mnt/instances but i need to upgrade glusterfs from 3.4 to 3.5 ( http://www.gluster.org/community/documentation/index.php/Upgrade_to_3.5 ). This guide tells me that a downtime is required, but in my case downtime means: 1) shutoff all vm instances 2) umount glusterfs from all compute nodes 3) upgrade glusterfs 4) mount glusterfs from all compute nodes 5) restart all vm instances Is there a solution without downtime (also using replication 2 factor)? I do not want to shut off all instances.... Thanks. MM -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://www.gluster.org/pipermail/gluster-users/attachments/20150119/f1952f9a/attachment.html>
Sachidananda URS
2015-Jan-19 13:50 UTC
[Gluster-users] Glusterfs upgrade to 3.5 without downtime
Hi, ----- Original Message -----> From: "Marco Marino" <marino.mrc at gmail.com> > To: gluster-users at gluster.org > Sent: Monday, January 19, 2015 2:04:53 PM > Subject: [Gluster-users] Glusterfs upgrade to 3.5 without downtime > > Hi. I'm using glusterfs (replica 2) as a storage backend for openstack vm > instances (ephemeral disks). Each compute node mounts glusterfs in > /mnt/instances but i need to upgrade glusterfs from 3.4 to 3.5 ( > http://www.gluster.org/community/documentation/index.php/Upgrade_to_3.5 ). > This guide tells me that a downtime is required, but in my case downtime > means: > 1) shutoff all vm instances > 2) umount glusterfs from all compute nodes > 3) upgrade glusterfs > 4) mount glusterfs from all compute nodes > 5) restart all vm instances > > > Is there a solution without downtime (also using replication 2 factor)? I do > not want to shut off all instances....It is possible to do without downtime (Since you are upgrading from 3.4 to 3.5 it should not be very difficult.) but, you have to be extremely careful. Downtime is suggested because it is very easy to get into an unusable state, unless you are very careful. Here is how you can do the upgrades: On one of the nodes in the replica pair `pkill gluster' ... ensure none of the gluster* processes are running. Upgrade that node to 3.5 and `service glusterd start', ensure that all the processes are up. Then heal the volume: `gluster volume heal <volname> full' ... and keep checking the heal info to ensure that the data is fully healed. Once data is fully healed... repeat the above process on another node. Later you can upgrade your clients at your convenience. Hope it helps. -sac