Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

1. Prevent cloud users from performing VM operations

  1. In the UI in the Infrastructure view, select each physical machine and click Disable

  2. Using the API, set the state of each physical machine to DISABLED

...

Code Block
# Log in as root
sudo su -


# Check that the Abiquo RabbitMQ queues are empty (API or Datanode).
# The number of messages in all queues must be 0.
rabbitmqctl list_queues messages name


# Stop  services
systemctl stop httpd
systemctl stop abiquo-tomcat
# (API or Datanode)
systemctl stop rabbitmq-server


# Back up the UI
tar cvfz /var/www/html/ui.tgz-$(date +%Y%m%d_%H%M%S) /var/www/html/ui


# Copy the api.xml file to back up the database connection details
cp /opt/abiquo/tomcat/conf/Catalina/localhost/api.xml /opt/abiquo/api.xml-$(date +%Y%m%d_%H%M%S)


# Back up the /opt/abiquo folder
tar cvfz /opt/abiquo.tgz-$(date +%Y%m%d_%H%M%S) /opt/abiquo
  

# Back up Redis
redis-cli save
cp -a /var/lib/redis /var/lib/redis-$(date +%Y%m%d_%H%M%S)


# On DB Server, back up the Abiquo MySQL DBs
mysqldump --routines --triggers kinton            > kinton.sql-$(date +%Y%m%d_%H%M%S)
mysqldump --routines --triggers kinton_accounting > kinton_accounting.sql-$(date +%Y%m%d_%H%M%S)


# IF you are using SAML with multiple IdPs, back up security beans files
cp /opt/abiquo/tomcat/webapps/api/WEB-INF/classes/springresources/security/saml/security-saml-generated-beans.xml /opt/abiquo/tomcat/webapps/api/WEB-INF/classes/springresources/security/saml/security-saml-generated-beans.xml-$(date
 +%Y%m%d_%H%M%S)


# Stop  services
systemctl stop httpd
systemctl stop abiquo-tomcat
# (API or Datanode)
systemctl stop rabbitmq-server
 

# Install latest yum release package for your target version using link
yum remove 'abiquo-release-*'
# Find the correct link at https://abiquo.atlassian.net/wiki/spaces/doc/pages/311363475/Abiquo-release-ee+packages+list
# For 6.2
yum localinstall https://user:passwd@mirror.abiquo.com/el7/6.2/os/x86_64/abiquo-release-ee-6.2.0-AAAAAAAA_BBBBBB.el7.noarch.rpm


# Prepare yum repository for your target version with yum-utils
yum-config-manager --enable abiquo-base
yum-config-manager --enable abiquo-updates


 # Perform update
yum clean all && yum makecache

yum update
# 6.2.0: - Note: MariaDB-server requires a manual update after running the gpmigrator running the gpmigrator in the next steps


# 6.2.0: - Download and install the guestpasswordmigrator package
yum localinstall http://user:passwd@mirror.abiquo.com/el7/6.2/os/x86_64/abiquo-gpmigrator-6.2.0-20240205_155724.el7.noarch.rpm

# Run the tool to prepare to migrate the guest passwords of the current VMs to a new column that will be added in 6.2.0.
# The tool requires access to the kinton database and to the API Redis
cd /opt/abiquo/utilities/
java -jar gpmigrator.jar --jdbc-url="jdbc:mariadb://localhost:3306/kinton?user=root&password=root" --redis-host=localhost
# Save the guestpasswords.sql file andto run it after you update the Abiquo database
with
abiquo-db.

# 6.2.0: - On all database servers, upgrade MariaDB 
rpm --nodeps -ev MariaDB-server-10.4.10-1.el7.centos.x86_64
yum install MariaDB-server

service mariadb start
#? or OR for datanode: galera_new_cluster

mysql_upgrade

# UpgradeUpdate the Abiquo databases
abiquo-db [-h DB hostname] [-P DB port] [-u user] [-p password] update


# IF the database upgrade fails because of checksums
abiquo-db [-h DB hostname] [-P DB port] [-u user] [-p password] clearCheckSums
abiquo-db [-h DB hostname] [-P DB port] [-u user] [-p password] update


# 6.2.0: - Run guestpasswords.sql file
mysql kinton < guestpasswords.sql


# Post-upgrade step for API
chown -R tomcat /opt/abiquo


# Run Redis database script
# On each Remote Services server (including Monolithic sever) 
cd /usr/share/doc/abiquo-redis/redis/
bash ./4.2.3/00-old-vsm-definitions.sh


# 6.2.0: - Edit the tomcat configconfiguration file and update the database connector configuration 
# Edit /opt/abiquo/tomcat/conf/Catalina/localhost/api.xml
# The latest version of the file should contain new options
# Update the file and/or variables marked with ${} for your environment
<Context>
    <Resource 
        name="jdbc/abiquoDB" 
        auth="Container" 
        type="javax.sql.DataSource" 
        factory="com.zaxxer.hikari.HikariJNDIFactory"
        dataSourceClassName="org.mariadb.jdbc.MariaDbDataSource"
        connectionTimeout="120000"
        maximumPoolSize="100"
        username="${server.database.username}"
        password="${server.database.password}"
        dataSource.url="jdbc:mariadb://${server.database.host}:${server.database.port}/kinton"
        />
</Context>
# For a DB cluster, change the datasource.url to point to your Galera cluster
# This will not affect the multi-master configuration of the cluster
    dataSource.url="jdbc:mariadb:loadbalance://address=(host=dbmain)(port=3306)(type=master),
        address=(host=dbr1)(port=3306)(type=slave),
        address=(host=dbr2)(port=3306)(type=slave)/kinton"
        

# Add the Java keytool path to your $PATH variable:
export PATH=$PATH:/usr/java/jdk-21+35/bin/

# Check your cacerts certificates
keytool -v -list -cacerts | grep ${ENV_NAME}

# If necessary, restore your certificates following the instructions
# See https://abiquo.atlassian.net/wiki/spaces/doc/pages/609648729/Update+certificates+in+your+Abiquo+environment

...

Code Block
# Log in as root and stop services
sudo su -
systemctl stop abiquo-emmett
systemctl stop abiquo-delorean
systemctl stop kairosdb
systemctl stop cassandra
 

# Really kill Cassandra by getting its process number (e.g. XXXXX) and killing it
ps auwx | grep cassandra
kill -9 XXXXX


# Install latest yum release package for your target version using link
yum remove 'abiquo-release-*'
# Find the correct link at https://https://abiquo.atlassian.net/wiki/spaces/doc/pages/311363475/Abiquo-release-ee+packages+list
# For 6.2
yum localinstall https://user:passwd@mirror.abiquo.com/el7/6.2/os/x86_64/abiquo-release-ee-6.2.0-AAAAAAAA_BBBBBB.el7.noarch.rpm
# Prepare yum repository for your target version 
yum-config-manager --enable abiquo-base
yum-config-manager --enable abiquo-updates

 
# Perform update
yum clean all && yum makecache
yum update


# 6.2.0: - On monitoring database server, upgrade MariaDB 
rpm --nodeps -ev MariaDB-server-10.4.10-1.el7.centos.x86_64
yum install MariaDB-server
service mariadb start
mysql_upgrade


# Update watchtower database
watchtower-db [-h DB hostname] [-P DB port] [-u user] [-p password] update


# 6.2.0: - Edit the emmett.conf and delorean.conf files at:
/etc/abiquo/watchtower/delorean.conf
/etc/abiquo/watchtower/emmett.conf
# Replace "jdbc:mysql" must be replaced with "jdbc:mariadb"
# And the IP address as for your othermonitoring database servers,server includingor clusterscluster


...


5. Start Abiquo server and services

...