Post-OVA configuration for Distributed HA cluster

 

 

This document describes the post-install configuration after you deploy the Abiquo OVAs.

This configuration is required for a Distributed HA Cluster environment.

Abiquo API UI Server

After you deploy the OVA, do these configuration steps

  1. To use the separate database cluster in Abiquo, edit the tomcat configuration at:

    /opt/abiquo/tomcat/conf/Catalina/localhost/api.xml

     

  2. Edit the Context with this default format.

    <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>

    Change the datasource.url to add the cluster. Note that this configuration does 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"

     

  3. Change the user and password. Please contact Abiquo Support for more information

  4. To point to the services cluster instead of the local host for RabbitMQ and Redis, edit the abiquo.properties file at:

  5. Set the RabbitMQ property

    Enter the three IPs in the datanode services cluster, separated by commas.
    For example:

     

  6. Set the Redis host property

    Enter the master IP of the cluster, which be the IP of the first VM deployed in the cluster.
    For example:

 

Datanode services cluster

Do these steps on ALL SERVERS in the datanode services cluster (usually 3 servers).

  1. Log in to each server as an administrator

  2. On the leader node, create the Galera cluster for MySQL

  3. On the other nodes, start MariaDB or MySQL service

  4. Edit the RabbitMQ environment configuration file at:

  5. Set the nodename that corrresponds to the server.
    For example: "rabbit@services1", "rabbit@services2", or "rabbit@services3"

  6. Restart the RabbitMQ service

  7. Then start with the master and run the following command on each server

 

Monitoring cluster

Do these steps on node 2 and node 3 in the monitoring cluster, not the master node (again, we’re assuming you’ve got three servers).

  1. Log in to node 2 and node 3, not the master node

  2. Edit the Cassandra configuration file at:

     

  3. Remove the seeds value. In this example, remove “x.x.x.x”

     

  4. Add the IP of the master VM as the new seeds value.

 

Then do these steps on ALL monitoring nodes.

  1. Log in to the monitoring server

  2. Edit the KairosDB properties file at:

     

  3. Remove the this property

     

  4. Add this property (note the cql_” in the name) and set the value as the three IP addresses of the cluster, without the port, and separated by commas

     

  5. Edit the watchtower properties files at:

  6. Set the URL of the mysql server connection (as on the API server) with the 3 IP addresses of the watchtower cluster servers.

  7. Set the database credentials.

  8. Restart the cluster

    1. On all servers, stop the following services:

      1. cassandra

      2. kairosdb

      3. abiquo-emmett

      4. abiquo-delorean

      5. firewalld (and allow connections as required)

    2. Start cassandra and wait 5 minutes before continuing

    3. Start kairosdb and wait 1 minute

    4. Start abiquo-emmett and abiquo-delorean

    5. Start firewalld

The cluster should now be fully functioning.

 

Copyright © 2006-2024, Abiquo Holdings SL. All rights reserved