The basic flow is to upgrade each YB-Master and YB-TServer one at a time, verifying after each step from the yb-master Admin UI that the cluster is healthy and the upgraded process is back online.
If you plan to script this in a loop, then a pause of about 60 seconds is recommended before moving from one process or node to another.
Preserving data and cluster configuration across upgradesYour data/log/conf directories are generally stored in a separate location which stays the same across the upgrade so that the cluster data, its configuration settings are retained across the upgrade.
Install new version of YugabyteDB
First we need to install the new version of YugabyteDB in a new location. For CentOS, this would be something like:
1. wget https://downloads.yugabyte.com/yugabyte-$VER.tar.gz 2. tar xf yugabyte-$VER.tar.gz -C /home/yugabyte/softwareyb-$VER/ 3. cd /home/yugabyte/softwareyb-$VER/ 4. ./bin/post_install.sh
1. pkill yb-master (i.e. stop the older version of the yb-master process) 2. make sure we're on the dir of the new version (cd /home/yugabyte/softwareyb-$VER/) 3. start (the newer version of) the yb-master process 4. verify in http://<any-yb-master>:7000/ that all masters are alive 5. pause ~60 secs before upgrading next yb-master
1. pkill yb-tserver (i.e. stop the older version of the yb-tserver process) 2. make sure we're on the dir of the new version (cd /home/yugabyte/softwareyb-$VER/) 3. start (the newer version of) yb-tserver process 4. verify in http://<any-yb-master>:7000/tablet-servers to see if the new YB-TServer is alive and heart beating 5. pause ~60 secs before upgrading next YB-TServer