Full HA Debian / Ubuntu Upgrade¶
The following covers upgrading the Morpheus App nodes in Full HA Architecture configurations to v6.2.2.
Important
The following is only for Full HA Architecture configurations, where MySQL, Elasticsearch and RabbitMQ services are external to the App nodes. The following steps assume 3 app nodes, adjust accordingly.
Morpheus Packages¶
Morpheus Release Package urls can be obtained from https://morpheushub.com
v6.0.6 or lower -> v6.2.2 Upgrade¶
Warning
Rolling upgrades from v6.0.6 or lower to v6.2.2 are not supported
Important
It is important to stop the morpheus-ui service on all app nodes prior to upgrade. Failure to do so will resilt in a flood of log errors due to previous message serializaiton conflict. The messages will eventually expire and the logs will clear.
Warning
Morpheus v6.2.2 contains new node and VM node packages that require 3.5GB of storage. It is safe to run sudo rm -Rf /var/opt/morpheus/package-repos/*
after v6.2.2 package installation and before reconfigure to clean old node and vm node packages from the package-repo when room is needed.
Starting with App Node 3, on All App Nodes, stop the morpheus-ui services via
morpheus-ctl stop morpheus-ui
. If you receive a timeout, runmorpheus-ctl graceful-kill morpheus-ui
.[root@app-server-3 ~]# morpheus-ctl stop morpheus-ui
[root@app-server-2 ~]# morpheus-ctl stop morpheus-ui
[root@app-server-1 ~]# morpheus-ctl stop morpheus-ui
Upgrade the deb package on App Node 1, then run a Reconfigure on App Node 1
[root@app-server-1 ~]# sudo wget https://packageUrl.morpheus-appliance_x.x.x-x_amd64.deb [root@app-server-1 ~]# sudo dpkg -i morpheus-appliance_x.x.x-1_amd64.deb [root@app-server-1 ~]# sudo morpheus-ctl stop morpheus-ui [root@app-server-1 ~]# sudo morpheus-ctl reconfigure [root@app-server-1 ~]# sudo morpheus-ctl start morpheus-ui
After the reconfigure has succeeded, tail the ui service to watch ui startup logs with
morpheus-ctl tail morpheus-ui
.Once App Node 1 upgrade has completed and the ui is available, upgrade the deb package on App Node 2, then run a Reconfigure on App Node 2.
[root@app-server-2 ~]# sudo wget https://packageUrl.morpheus-appliance_x.x.x-x_amd64.deb [root@app-server-2 ~]# sudo dpkg -i morpheus-appliance_x.x.x-1_amd64.deb [root@app-server-1 ~]# sudo morpheus-ctl stop morpheus-ui [root@app-server-1 ~]# sudo morpheus-ctl reconfigure [root@app-server-1 ~]# sudo morpheus-ctl start morpheus-ui After the reconfigure has succeeded, tail the ui service to watch ui startup logs with ``morpheus-ctl tail morpheus-ui``.
Once App Node 2 upgrade has completed and the ui is available, upgrade the deb package on App Node 3, and run a Reconfigure on App Node 3
[root@app-server-3 ~]# sudo wget https://packageUrl.morpheus-appliance_x.x.x-x_amd64.deb [root@app-server-3 ~]# sudo dpkg -i morpheus-appliance_x.x.x-1_amd64.deb [root@app-server-3 ~]# sudo morpheus-ctl reconfigure
The upgrade is complete and the Morpheus-ui services should be running on the three allocated nodes.
Important
If reconfigure after a rpm package upgrade stalls or hangs on starting a local service it is possible the morpheus-runsvdir
service did not start or a process it was managing was manually shutdown or killed. To resolve, run systemctl stop morpheus-runsvdir
then systemctl start morpheus-runsvdir
, then run reconfigure again, morpheus-ctl reconfigure
.
v6.0.7 -> v6.2.2 Upgrade¶
Note
Rolling upgrades are supported for v6.0.7 -> v6.2.2 only.
Warning
Morpheus v6.2.2 contains new node and VM node packages that require 3.5GB of storage. It is safe to run sudo rm -Rf /var/opt/morpheus/package-repos/*
after v6.2.2 package installation and before reconfigure to clean old node and vm node packages from the package-repo when room is needed.
Starting with App Node 3, on All App Nodes, stop the morpheus-ui services via
morpheus-ctl stop morpheus-ui
. If you receive a timeout, runmorpheus-ctl graceful-kill morpheus-ui
.Upgrade the deb package on App Node 1, then run a Reconfigure on App Node 1
[root@app-server-1 ~]# sudo wget https://packageUrl.morpheus-appliance_x.x.x-x_amd64.deb [root@app-server-1 ~]# sudo dpkg -i morpheus-appliance_x.x.x-1_amd64.deb [root@app-server-1 ~]# sudo morpheus-ctl stop morpheus-ui [root@app-server-1 ~]# sudo morpheus-ctl reconfigure [root@app-server-1 ~]# sudo morpheus-ctl start morpheus-ui
After the reconfigure has succeeded, tail the ui service to watch ui startup logs with
morpheus-ctl tail morpheus-ui
. Once morpheus-ui is started, proceed to the next node.Once App Node 1 upgrade has completed and the ui is available, upgrade the deb package on App Node 2, then run a Reconfigure on App Node 2.
[root@app-server-2 ~]# sudo wget https://packageUrl.morpheus-appliance_x.x.x-x_amd64.deb [root@app-server-2 ~]# sudo dpkg -i morpheus-appliance_x.x.x-1_amd64.deb [root@app-server-2 ~]# sudo morpheus-ctl stop morpheus-ui [root@app-server-2 ~]# sudo morpheus-ctl reconfigure [root@app-server-2 ~]# sudo morpheus-ctl start morpheus-ui
After the reconfigure has succeeded, tail the ui service to watch ui startup logs with
morpheus-ctl tail morpheus-ui
. Once morpheus-ui is started, proceed to the next node.Once App Node 2 upgrade has completed and the ui is available, upgrade the deb package on App Node 3, and run a Reconfigure on App Node 3
[root@app-server-3 ~]# sudo wget https://packageUrl.morpheus-appliance_x.x.x-x_amd64.deb [root@app-server-3 ~]# sudo dpkg -i morpheus-appliance_x.x.x-1_amd64.deb [root@app-server-3 ~]# sudo morpheus-ctl stop morpheus-ui [root@app-server-3 ~]# sudo morpheus-ctl reconfigure [root@app-server-3 ~]# sudo morpheus-ctl start morpheus-ui
After the reconfigure has succeeded, tail the ui service to watch ui startup logs with
morpheus-ctl tail morpheus-ui
. Once morpheus-ui is started, proceed to the next node.The upgrade is complete and the Morpheus-ui services should be running on the three allocated nodes.
Important
If reconfigure after a rpm package upgrade stalls or hangs on starting a local service it is possible the morpheus-runsvdir
service did not start or a process it was managing was manually shutdown or killed. To resolve, run systemctl stop morpheus-runsvdir
then systemctl start morpheus-runsvdir
, then run reconfigure again, morpheus-ctl reconfigure
.