Abiquo Documentation Cookies Policy

Our Documentation website uses cookies to improve your experience. Please visit our Cookie Policy page for more information about cookies and how we use them.


Abiquo 5.0

Skip to end of metadata
Go to start of metadata

This section describes how to upgrade from Abiquo 4.4.x or above to the current Abiquo version. Please contact Abiquo Support for further information.

 

Abiquo YUM repositories are no longer open, please contact Abiquo Support to obtain your credentials

This upgrade process starts from Abiquo 4.4 or above. To upgrade from earlier versions, please contact Abiquo Support

  • In Abiquo 4.7.x, you must upgrade Abiquo Reports to use the new events model. Please contact Abiquo Support for the file and procedure
  • In Abiquo 4.7.0, the data structure of the events streamed by the Outbound API (M module) has changed. Update data objects in your integrations. See Trace entity for a description of the new data entity
  • The database upgrade to Abiquo 4.7 may take a little longer than usual while changing the events format of past events.
  • In Abiquo 4.6 the "__EOF" label is mandatory at the end of each language file, otherwise the UI will not load correctly
  • Abiquo 4.5+ versions do not support CentOS 6
  • The upgrade will overwrite lang_en_US.json. If you have customized labels or translations, back them up before the upgrade and restore them afterwards accordingly.

1. Prepare branding upgrade

See Changes to branding for instructions on how to upgrade branding for the following versions:

  • 4.5
  • 4.6
  • 4.6.1
  • 4.7.0

2. Before the upgrade

Before you begin, remember to:

  • Stop services
  • Check for queued jobs or conversions 
  • Perform a full backup
  • Disable the abiquo-updates repository if the destination release patch version is zero (for example, upgrading to 4.7.0 or 5.0.0).

See Prepare to Upgrade Abiquo for further details.

3. Upgrade packages on ALL servers

  1. If you are upgrading to a newer major version, remove the previous version Abiquo release packages.

    yum remove 'abiquo-release-*'
  2. If you are upgrading to a newer major version, locate the corresponding abiquo-release-ee package and install it. For example, for Abiquo 4.7 use the command below:

    yum localinstall http://mirror.abiquo.com/el7/4.7/os/x86_64/abiquo-release-ee-4.7.0-4794.el7.noarch.rpm
  3. Update Abiquo packages:

    yum clean all && yum makecache && yum update 'abiquo-*'
  4. The Abiquo services must run as the tomcat user (not root), so set the required permissions and enforce the use of the package configuration files.
    If you have a MONOLITHIC SERVER do all of the following steps on the Monolithic server

    1. On Abiquo Server and Remote Services

      chown -R tomcat /opt/abiquo
    2. On the Remote Services with Appliance Manager and the V2V Server (i.e. servers that mount the NFS repository)

      chown -R tomcat /opt/vm_repository
      chmod -R a+r /opt/vm_repository
    3. On the V2V server, check the /etc/sysconfig/abiquo/ec2-api-tools file exists.
      The file must contain the following configuration. If the file does not exist, create it and add this configuration.

      For CentOS 7
      EC2_HOME=/opt/aws

      For older versions running on CentOS 6 servers, use the following configuration instead.

      For CentOS 6
      export EC2_HOME=/opt/aws

4. Update the Abiquo databases

  1. Ensure your hostname is in your DNS or in your /etc/hosts file
  2. To upgrade the Abiquo API databases, run the command below on the Server appliance:

    abiquo-db [-h DB hostname] [-P DB port] [-u user] [-p password] update

    If the liquibase update fails with a message similar to the following: 

    Liquibase update Failed: Validation Failed:
    1 change sets check sum
    src/X.X.X-XX/kinton-X.X.X.xml::ABICLOUDPREMIUM-XXXX-XxxxxxxxXXxXxxxxxxXxxxxx::XXXXXXXXX is now: 7:ee2fa6e058ec76c7abf801567898917d
    For more information, use the --logLevel flag

    Do the following steps

    1. Clear the database checksums

      abiquo-db clearCheckSums
    2. Retry the above abiquo-db update command.
  3. To upgrade the Abiquo Watchtower database, run the command below on the monitoring appliance:

    watchtower-db [-h DB hostname] [-P DB port] [-u user] [-p password] update
  4. Reporting changes: To upgrade the Abiquo Reports database for the upgrade to Abiquo 4.7.x+, contact Abiquo Support for the file and procedure.

5. Upgrade additional elements

Start with your original version and perform the steps to the final version.


By default, you will find the upgrade scripts (e.g. for Redis definitions) on the Abiquo Server under the folder: /usr/share/doc/abiquo-redis/redis/

For each upgrade step, run the Redis database script to remove old VSM definitions, which can be found in the 4.2.3 subfolder

On Remote Services server:

# cd /usr/share/doc/abiquo-redis/redis/
# bash ./4.2.3/00-old-vsm-definitions.sh
 Upgrade from 4.4.x to 4.5x

Run additional database scripts

This is a new version of the same tool that was run in the 4.2.x to 4.4 upgrade. If you are upgrading from 4.2.x or earlier, you do not need to run this tool twice.

When upgrading from 4.4.x to 4.5, run the following tool that will generate two scripts.

Run the scripts after the database upgrade on the Abiquo kinton database server and the Watchtower database server.

The instructions for running the tool are at the following location:

/usr/share/doc/abiquo-model/scripts/watchtower_migration_tool/README.md

The tool is located at the following location:

/usr/share/doc/abiquo-model/scripts/watchtower_migration_tool/wttool.jar

Run tool to update VM naming on vCloud

Please contact Abiquo support.

Run Redis database script

On Remote Services server:

# cd /usr/share/doc/abiquo-redis/redis/
# bash ./4.2.3/00-old-vsm-definitions.sh


 Start here to upgrade from 4.5.x to 4.6.x

Nodecollector and cloud provider proxy changes

  • Discovery manage functions are now performed by the NARS remote service, which replaces the Nodecollector and Cloud Provider Proxy remote services.
  • As part of the upgrade process, administrators can remove the old remote service webapps: nodecollector and cpp.

Run Redis database script

On Remote Services server:

# cd /usr/share/doc/abiquo-redis/redis/
# bash ./4.2.3/00-old-vsm-definitions.sh


 Upgrade from 4.6.x to 4.7.x

Storage changes

  • If you have a custom external storage plugin, contact Abiquo Support to obtain the upgrade procedure: Upgrade a storage plugin to Abiquo 4.7
  • External storage in private cloud and public cloud is now managed using the NARS remote service, which replaces the Storage Manager. As part of the upgrade you can remove the ssm webapp

Run Redis database script

On Remote Services server:

# cd /usr/share/doc/abiquo-redis/redis/
# bash ./4.2.3/00-old-vsm-definitions.sh

Reporting changes

  • To upgrade the Abiquo Reports database for the upgrade to Abiquo 4.7.x+, contact Abiquo Support for the file and procedure.

Post-upgrade step:

  • For VMs captured in a powered on state with Abiquo 4.6.3+ and vCenter 6.5+, the administrator can manually remove the VNC configuration from the VM definition file on the hypervisor to allow remote access without reconfiguring the VM. When WebMKS is enabled, users will then be able to connect to these VMs using the web console
 Upgrade from 4.7.x to 5.0x

Run Redis database script

On every Remote Services server:

# cd /usr/share/doc/abiquo-redis/redis/
# bash ./4.2.3/00-old-vsm-definitions.sh

Post-upgrade step:

  • Change the tutorials' softlinks in the frontend servers: if there is a softlink /var/www/html/ui/config/tutorials pointing to /opt/abiquo/config/tutorials, please change it to point to /opt/abiquo/tutorials instead.


6. Configure Abiquo after the upgrade

  1. Before you start the Abiquo tomcat server, add Abiquo Configuration Properties to the abiquo.properties file. By default abiquo.properties is found in the /opt/abiquo/config/ folder. See Changes to Abiquo Configuration Properties

  2. Configure the user interface. The default UI location in Abiquo 4.x is /var/www/html/ui.
    Optional: Add custom labels and translations in the lang_xx_XX_custom.json files in the lang folder
    Add custom configuration to client-config-custom.json. See Configure Abiquo UI
    If your API is not in the same domain as the UI, set the API endpoint pointing to your Abiquo API server:

    {
        "config.endpoint": "http://myAPIserver/api"
    }

7. Start Abiquo server and services

  1. Bring up the server and restart the HTTP daemon to refresh the user interface files.

    service abiquo-tomcat start
    service httpd restart
  2. Start the tomcat server on remote services
  3. Start delorean and emmett services