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.


Documentation

Skip to end of metadata
Go to start of metadata

Abiquo Wiki
Upgrading 3.2.x to 3.4

v3.4 2015-05-05

1. Description

The Abiquo 3.4 packages upgrade the Abiquo platform servers of the Abiquo Monolithic and Abiquo Distributed installs.

Follow this documentation to upgrade every Abiquo Server (Remote Services, V2V, Abiquo Server). Also upgrade Abiquo KVM servers.

Note that depending on your current 3.2.x version, you may need to perform extra upgrade steps, as summarized in the following diagram.

2. Prerequisites

This update is for Abiquo 3.2.0 and 3.2.x To perform a fresh install, you can use the Abiquo 3.2.0 ISO or the Abiquo Install Appliances.

2.1. Remove cloud user access

You can prevent cloud users from performing operations on VMs by accessing the platform and disabling all the physical machines in Abiquo (in Infrastructure view in the UI) or using the API (setting state to DISABLED).

2.2. Ensure all queues are empty and no tasks are in progress

On Remote Services check the status of RabbitMQ to ensure that there are no outstanding tasks 

service rabbitmq-server status

This will provide the PID so you can see if it is running or not.

Secondly, check the consumers’ list:

 rabbitmqctl list_consumers

The result should be something like this but with more values:

abiquo.vsm.eventsynk ... ==true
abiquo.tracer.traces ... ==true
abiquo.datacenter.requests.Abiquo.virtualfactory ... ==true
abiquo.ha.tasks ... ==true
abiquo.am.downloads ... ==true
abiquo.datacenter.requests.Abiquo.bpm ... ==true
abiquo.datacenter.notifications ... ==true

All must be true.  

Finally check the queues: 

# rabbitmqctl list_queues

The output will be similar to this:

Listing queues ...
abiquo.vsm.eventsynk 0
abiquo.tracer.traces 0
abiquo.datacenter.requests.Abiquo.virtualfactory 0
abiquo.ha.tasks 0
abiquo.am.downloads 0
abiquo.datacenter.requests.Abiquo.bpm 0
abiquo.datacenter.notifications 0
...done.

You can check for any active V2V conversions by checking for the V2V or Mechadora processes

ps aux | grep v2v
ps aux | grep mechadora

See Service Management for details

3. Stop Services

Stop the services

service abiquo-tomcat stop
service httpd stop

4. Back up your current installation

4.1. Backup mysql

mysqldump --routines --triggers kinton > kinton_dump_`date +%d%m%y`.sql
mysqldump --routines --triggers kinton_accounting > kinton_accounting_dump_`date +%d%m%y`.sql

4.2. Back up Redis

redis-cli
lastsave
bgsave
lastsave

4.3. Back up the contents of opt abiquo

tar cvfz opt-abiquo.tgz /opt/abiquo

4.4. Backup user interface

tar cvfz var-www-html-ui.tgz /var/www/html/ui

After upgrading your system, you will need to reapply branding. Add your themes to the new client-config-custom.json file as described in Configure Abiquo UI

4.5. Changes to UI client configuration in Abiquo 3.4

Custom UI configuration files

You must copy all custom client configuration to the new file name format client-config-custom.json or the custom configuration will not be found

Abiquo 3.4 has a new file name structure for custom UI configuration.

  • Before the upgrade to 3.4, customers should copy ANY existing custom UI configuration in client-config.json to the new file name format client-config-custom.json.
    • If you do not use this new file name, the custom configuration will not be found
    • Only add the custom configuration to avoid overriding new default configuration
  • During the upgrade, Abiquo will add the new client-config-default.json with the new configuration for Abiquo 3.4

5. Perform the server upgrade

5.1. Import new signing key

New signing key introduced in 3.1.4 and 3.2.2

If you have not yet imported the new signing key (which was introduced in Abiquo 3.1.4 and 3.2.2), import it before the yum update

rpm --import http://mirror.abiquo.com/RPM-GPG-RSA-KEY-Abiquo

5.2. Disable previous repos

Set all your previous Abiquo-Base and Abiquo-Updates repositories as disabled.

5.3. Install abiquo-release package

rpm -Uvh http://mirror.abiquo.com/abiquo/3.4/os/x86_64/abiquo-release-ee-3.4.0-2.el6.master.noarch.rpm

5.4. Refresh yum cache

yum clean all && yum makecache

 

5.5. Update abiquo packages

yum update abiquo-*

6. Add Abiquo tutorials configuration

Configuration change in Abiquo 3.2.2

You must add this configuration if you are upgrading from Abiquo 3.2.1 or earlier

The Abiquo tutorials have now been moved to a separate package. When you upgrade the UI, the upgrade will install a symbolic link to the new tutorials directory.

Then you should install the tutorials with the following yum command.

yum install abiquo-tutorials

If you have customized the Abiquo tutorials, update the symbolic link to point to your own tutorials directory. For example

ln -s /opt/abiquo/mytutorials /var/www/html/ui/config/tutorials

Edit the Apache configuration, /etc/httpd/conf.d/abiquo.conf

Within the directive /var/www/html/ui, in the Options line, enable the option to follow symlinks by adding the FollowSymLinks option. For example, the first two lines of your directive could be as follows.

<Directory "/var/www/html/ui">
? ? ? ? Options MultiViews FollowSymLinks

7. Update databases

7.1. Main Abiquo database

 Ensure your hostname is in your DNS or in your /etc/hosts file.

Edit the script /usr/bin/abiquo-liquibase to add your DBUSER and DBPASSWORD

Run the script to update a local or remote database.

/usr/bin/abiquo-liquibase update

7.2. Redis on Abiquo server

 

/usr/share/doc/abiquo-server/database/00-failed-templates.sh

7.3. Redis on RSS

/usr/share/doc/abiquo-remote-services/01-old-vsm-definitions.sh
 

8. Modify your configuration as required

See Configuration Changes in Abiquo 3.4

Abiquo 3.4 will use a new client-config-custom.json file that will not be overwritten during upgrades.

Create the new configuration file, replacing abiquo.example.com with the IP address of your server.

echo   '{ "config.endpoint": "http://abiquo.example.com/api" }' > /var/www/html/ui/config/client-config-custom.json

Add any further UI configuration you had added to client-config.json to the new client-config-custom.json file. For example branding themes.

8.1. Restart services

service abiquo-tomcat restart
service httpd restart

9. Abiquo KVM server upgrade

Upgrade the KVM server.

9.1. Install Abiquo release package

yum localinstall http://mirror.abiquo.com/abiquo/3.4/os/x86_64/abiquo-release-ee-3.4.0-2.el6.master.noarch.rpm

9.2. Update packages

yum update abiquo-*

9.3. Restart AIM

service abiquo-aim restart

9.4. Check AIM version

abiquo-aim -version

9.5. Check AIM is running

On the upgraded KVM cloud nodes, check that Abiquo AIM is running before starting the Abiquo Tomcat server

ps aux | grep abiquo-aim

See AIM - Abiquo Infrastructure Management

10. Packages upgraded

The following packages are included in the upgrade to Abiquo 3.4

abiquo-aim-3.4.0rel2.6.1-1.el6.x86_64.rpm
abiquo-am-3.4.0-2.el6.noarch.rpm
abiquo-api-3.4.0-2.el6.noarch.rpm
abiquo-cpp-3.4.0-2.el6.noarch.rpm
abiquo-lvmiscsi-3.4.0-1.el6.noarch.rpm
abiquo-m-3.4.0-1.el6.noarch.rpm
abiquo-nodecollector-3.4.0-1.el6.noarch.rpm
abiquo-server-3.4.0-9.el6.noarch.rpm
abiquo-ssm-3.4.0-1.el6.noarch.rpm
abiquo-ui-3.4.0-3.el6.noarch.rpm
abiquo-v2v-3.4.0-1.el6.noarch.rpm
abiquo-virtualfactory-3.4.0-0.el6.noarch.rpm
abiquo-vsm-3.4.0-1.el6.noarch.rpm

11. Post upgrade

11.1. Users clear browser cache

Important: Do NOT forget this step

Before logging in to Abiquo after an upgrade, all users must clear the browser cache on their machines. Check that the Abiquo GUI reports the correct version in the bottom left of the browser. 

11.2. Test the Upgrade

Perform basic testing to validate the installation, for example:

  1. Deploy VM
  2. Create instance
  3. Create persistent VM
  4. Deploy VM with external storage

12. Release Notes for Abiquo 3.4