3-Node HA CentOS / RHEL Upgrade

The following covers upgrading the HPE Morpheus Software App nodes in 3 Node HA configurations to v9.1.0.

Warning

As a best practice, always backup your database prior to any upgrade.

Important

The following is only for “3 Node HA” Architecture configurations.

HPE Morpheus Software Packages

HPE Morpheus Software Release Package urls can be obtained from https://myenterpriselicense.hpe.com

Below v9.0.0 -> v9.1.0 (non-rolling)

Important

From any release below v9.0.0, use this non-rolling procedure. Stop morpheus-ui on all app nodes first; the upgrade requires downtime. Rolling upgrades apply only when every app node is already on v9.0.0 or higher.

Warning

HPE Morpheus Software v9.1.0 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 v9.1.0 package installation and before reconfigure to clean old node and vm node packages from the package-repo when room is needed.

  1. Starting with Node 3, on All App Nodes, stop the morpheus-ui services via morpheus-ctl stop morpheus-ui. If you receive a timeout, run morpheus-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
    
  2. Upgrade the RPM package on Node 1, then run a Reconfigure on Node 1

    [root@app-server-1 ~]# sudo wget https://packageUrl.morpheus-appliance-x.x.x-x.x86_64.rpm
    [root@app-server-1 ~]# sudo rpm -Uhv morpheus-appliance-x.x.x-x.x86_64.rpm
    [root@app-server-1 ~]# sudo morpheus-ctl reconfigure
    

    Note

    All services will automatically be stopped and started during the reconfigure process. After the reconfigure has succeeded, refresh your browser and wait for the UI loading screen to complete. Only if the UI does not become available or the loading screen stalls, tail the logs with morpheus-ctl tail morpheus-ui.

  3. Once Node 1 upgrade has completed and the ui is available, upgrade the RPM package on Node 2, then run a Reconfigure on Node 2.

    [root@app-server-2 ~]# sudo wget https://packageUrl.morpheus-appliance-x.x.x-x.x86_64.rpm
    [root@app-server-2 ~]# sudo rpm -Uhv morpheus-appliance-x.x.x-x.x86_64.rpm
    [root@app-server-2 ~]# sudo morpheus-ctl reconfigure
    
  4. Then upgrade the RPM package on Node 3, then run a Reconfigure on Node 3

    [root@app-server-3 ~]# sudo wget https://packageUrl.morpheus-appliance-x.x.x-x.x86_64.rpm
    [root@app-server-3 ~]# sudo rpm -Uhv morpheus-appliance-x.x.x-x.x86_64.rpm
    [root@app-server-3 ~]# sudo morpheus-ctl reconfigure
    
  5. The upgrade is complete and the HPE Morpheus Software-ui services should be running with clustered Elasticsearch and RabbitMQ services across the 3 nodes.

Important

If reconfigure after a rpm package upgrade stalls or hangs on starting a service (mysql, rabbitmq, elasticsearch …) 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.


v9.0.0 or higher -> v9.1.0 (rolling)

Note

Rolling upgrades (no full UI outage) are supported only when every app node is already on v9.0.0 or higher before upgrading to v9.1.0. From any earlier version, use the non-rolling procedure above — that path requires downtime.

Warning

HPE Morpheus Software v9.1.0 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 v9.1.0 package installation and before reconfigure to clean old node and vm node packages from the package-repo when room is needed.

  1. Upgrade the RPM package on Node 1, then run a Reconfigure on Node 1

    [root@app-server-1 ~]# sudo wget https://packageUrl.morpheus-appliance-x.x.x-x.x86_64.rpm
    [root@app-server-1 ~]# sudo rpm -Uhv morpheus-appliance-x.x.x-x.x86_64.rpm
    [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, refresh your browser and wait for the UI loading screen to complete before proceeding to the next node. Only if the UI does not become available or the loading screen stalls, tail the logs with morpheus-ctl tail morpheus-ui.

  2. Once Node 1 upgrade has completed and the u is available, upgrade the RPM package on Node 2, then run a Reconfigure on Node 2.

    [root@app-server-2 ~]# sudo wget https://packageUrl.morpheus-appliance-x.x.x-x.x86_64.rpm
    [root@app-server-2 ~]# sudo rpm -Uhv morpheus-appliance-x.x.x-x.x86_64.rpm
    [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, refresh your browser and wait for the UI loading screen to complete before proceeding to the next node. Only if the UI does not become available or the loading screen stalls, tail the logs with morpheus-ctl tail morpheus-ui.

  3. Then upgrade the RPM package on Node 3, then run a Reconfigure on Node 3

    [root@app-server-3 ~]# sudo wget https://packageUrl.morpheus-appliance-x.x.x-x.x86_64.rpm
    [root@app-server-3 ~]# sudo rpm -Uhv morpheus-appliance-x.x.x-x.x86_64.rpm
    [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, refresh your browser and wait for the UI loading screen to complete before proceeding to the next node. Only if the UI does not become available or the loading screen stalls, tail the logs with morpheus-ctl tail morpheus-ui.

  4. The upgrade is complete and the HPE Morpheus Software-ui services should be running with clustered Elasticsearch and RabbitMQ services across the 3 nodes.

Important

If reconfigure after a rpm package upgrade stalls or hangs on starting a service (mysql, rabbitmq, elasticsearch …) 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.