<div dir="auto"><div>Procedure looks good.<div dir="auto"><br></div><div dir="auto">Remember to back up Gluster config files before update:</div><div dir="auto"><br></div><div dir="auto">/etc/glusterfs</div><div dir="auto">/var/lib/glusterd</div><div dir="auto"><br></div><div dir="auto">If you are *not* on the latest 3.7.x, you are unlikely to be able to go back to it because PPA only keeps the latest version of each major branch, so keep that in mind. With Ubuntu, every time you update, make sure to download and keep a manual copy of the .Deb files. Otherwise you will have to compile the packages yourself in the event you wanted to go back.</div><div dir="auto"><br></div><div dir="auto">Might need before adding 3rd replica:</div><div dir="auto">gluster peer probe node3 </div><div dir="auto"><br></div><div dir="auto">When you add the 3rd replica, it should start healing, and there may be an issue there if the VMs are running. Your plan to not have VMs up is good here. Are you using sharding? If you are not sharding, I/O in running VMs may be stopped for too long while a large image is healed. If you were already using sharding you should be able to add the 3rd replica when VMs are running without much issue.</div><div dir="auto"><br></div><div dir="auto">Once healing is completed and if you are satisfied with 3.12, then remember to bump op version of Gluster.</div><div dir="auto"><br></div><div dir="auto">Diego</div><div dir="auto"><br></div><div class="gmail_extra"><br><div class="gmail_quote">On Sep 20, 2017 19:32, "Martin Toth" <<a href="mailto:snowmailer@gmail.com">snowmailer@gmail.com</a>> wrote:<br type="attribution"><blockquote class="quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word"><div>Hello all fellow GlusterFriends,</div><div><br></div><div>I would like you to comment / correct my upgrade procedure steps on replica 2 volume of 3.7.x gluster.</div><div>Than I would like to change replica 2 to replica 3 in order to correct quorum issue that Infrastructure currently has.</div><div><br></div><div><b>Infrastructure setup:</b></div><div>- all clients running on same nodes as servers (FUSE mounts)</div><div>- under gluster there is ZFS pool running as raidz2 with SSD ZLOG/ZIL cache</div><div>- all two hypervisor running as GlusterFS nodes and also Qemu compute nodes (Ubuntu 16.04 LTS)</div><div>- we are running Qemu VMs that accesses VMs disks via gfapi (Opennebula)</div><div>- we currently run : 1x2 , Type: Replicate volume</div><div><br></div><div><b>Current Versions :</b></div><div>glusterfs-* [package] 3.7.6-1ubuntu1</div><div>qemu-*<span class="m_-4813293742426275633Apple-tab-span" style="white-space:pre-wrap">                </span>[package] 2.5+dfsg-5ubuntu10.<wbr>2glusterfs3.7.14xenial1</div><div><br></div><div><b>What we need : (New versions)</b></div><div>- upgrade GlusterFS to 3.12 LTM version (Ubuntu 16.06 LTS packages are EOL - see <a href="https://www.gluster.org/community/release-schedule/" target="_blank">https://www.gluster.org/<wbr>community/release-schedule/</a>)</div><div><span class="m_-4813293742426275633Apple-tab-span" style="white-space:pre-wrap">        </span>- I want to use <a href="https://launchpad.net/~gluster/+archive/ubuntu/glusterfs-3.12" target="_blank">https://launchpad.net/~<wbr>gluster/+archive/ubuntu/<wbr>glusterfs-3.12</a> as package repository for 3.12</div><div>- upgrade Qemu (with build-in support for libgfapi) - <a href="https://launchpad.net/~monotek/+archive/ubuntu/qemu-glusterfs-3.12" target="_blank">https://launchpad.net/~<wbr>monotek/+archive/ubuntu/qemu-<wbr>glusterfs-3.12</a></div><div><span class="m_-4813293742426275633Apple-tab-span" style="white-space:pre-wrap">        </span>- (sadly Ubuntu has packages build without libgfapi support)</div><div>- add third node to replica setup of volume (this is probably most dangerous operation)</div><div><br></div><div><b>Backup Phase</b></div><div>- backup "NFS storage” - raw DATA that runs on VMs</div><div>- stop all running VMs</div><div>- backup all running VMs (Qcow2 images) outside of gluster</div><div><br></div><div><b>Upgrading Gluster Phase</b></div><div>- killall glusterfs glusterfsd glusterd (on every server)</div><div><span class="m_-4813293742426275633Apple-tab-span" style="white-space:pre-wrap">        </span>(this should stop all gluster services - server and client as it runs on same nodes)</div><div>- install new Gluster Server and Client packages from repository mentioned upper (on every server) </div><div>- install new Monotek's qemu glusterfs package with gfapi enabled support (on every server) </div><div>- /etc/init.d/glusterfs-server start (on every server)</div><div>- /etc/init.d/glusterfs-server status - verify that all runs ok (on every server)</div><div><span class="m_-4813293742426275633Apple-tab-span" style="white-space:pre-wrap">        </span>- check :</div><div><span class="m_-4813293742426275633Apple-tab-span" style="white-space:pre-wrap">                </span>- gluster volume info</div><div><span class="m_-4813293742426275633Apple-tab-span" style="white-space:pre-wrap">                </span>- gluster volume status</div><div><span class="m_-4813293742426275633Apple-tab-span" style="white-space:pre-wrap">                </span>- check gluster FUSE clients, if mounts working as expected</div><div>- test if various VMs are able tu boot and run as expected (if libgfapi works in Qemu)</div><div>- reboot all nodes - do system upgrade of packages</div><div>- test and check again</div><div><br></div><div><b>Adding third node to replica 2 setup (replica 2 => replica 3)</b></div><div>(volumes will be mounted and up after upgrade and we tested VMs are able to be served with libgfapi = upgrade of gluster sucessfuly completed)</div><div>(next we extend replica 2 to replica 3 while volumes are mounted but no data is touched = no running VMs, only glusterfs servers and clients on nodes)</div><div>- issue command : gluster volume add-brick volume replica 3 node3.san:/tank/gluster/brick1 (on new single node - node3)</div><div><span class="m_-4813293742426275633Apple-tab-span" style="white-space:pre-wrap">        </span>so we change : </div><div><span class="m_-4813293742426275633Apple-tab-span" style="white-space:pre-wrap">                </span>Bricks:</div><div><span class="m_-4813293742426275633Apple-tab-span" style="white-space:pre-wrap">                        </span>Brick1: node1.san:/tank/gluster/brick1</div><div><span class="m_-4813293742426275633Apple-tab-span" style="white-space:pre-wrap">                        </span>Brick2: node2.san:/tank/gluster/brick1</div><div><span class="m_-4813293742426275633Apple-tab-span" style="white-space:pre-wrap">        </span>to :</div><div><span class="m_-4813293742426275633Apple-tab-span" style="white-space:pre-wrap">                        </span>Bricks:</div><div><span class="m_-4813293742426275633Apple-tab-span" style="white-space:pre-wrap">                        </span>Brick1: node1.san:/tank/gluster/brick1</div><div><span class="m_-4813293742426275633Apple-tab-span" style="white-space:pre-wrap">                        </span>Brick2: node2.san:/tank/gluster/brick1</div><div><span class="m_-4813293742426275633Apple-tab-span" style="white-space:pre-wrap">                        </span>Brick3: node3.san:/tank/gluster/brick1</div><div>- check gluster status</div><div>- (is rebalance / heal required here ?)</div><div>- start all VMs and start celebration :)</div><div><br></div><div><b>My Questions</b></div><div>- is heal and rebalance necessary in order to upgrade replica 2 to replica 3 ?</div><div>- is this upgrade procedure OK ? What more/else should I do in order to do this upgrade correctly ?</div><div><br></div><div>Many thanks to all for support. Hope my little preparation howto will help others to solve same situation.</div><div><br></div><div>Best Regards,</div><div>Martin</div></div><br>______________________________<wbr>_________________<br>
Gluster-users mailing list<br>
<a href="mailto:Gluster-users@gluster.org">Gluster-users@gluster.org</a><br>
<a href="http://lists.gluster.org/mailman/listinfo/gluster-users" rel="noreferrer" target="_blank">http://lists.gluster.org/<wbr>mailman/listinfo/gluster-users</a><br></blockquote></div><br></div></div></div>