Versions Compared

Key

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

...

Info

This section describes how to deploy the Server and Datanode in a Abiquo distributed scalable environment.
At the end of this deployment, you should be able to log in to the UI and create a user

Warning

Draft documentation - work in progress

...

Introduction

The server appliance contains the Abiquo UI, API, and Events servers.

The datanode appliance contains the database cluster and the Abiquo services. Abiquo uses the services, such as RabbitMQ and Redis, in communication between the API server and other platform components.

Requirements

You will need the following virtual resources to deploy the Abiquo OVAs.

Server

  • 2 CPUs

  • 8 GB RAM

  • 64 GB HD

Datanode

  • 2 CPUs

  • 8 GB RAM

  • 20 GB HD

Server

The server appliance contains the Abiquo UI, API, and Events servers.

Installation parameters

...

Parameter

...

Notes

...

The template repository folder must be present and fulfill the requirements as stated on the Installation page

...

Install the API UI server

This section describes how to install the API UI server.

  1. Download the server OVA file and launch it.

  2. Enter the standard parameters as follows:

    1. Friendly hostname, e.g. server-ova, which must be a valid Linux hostname

    2. Management interface IPv4 Address, e.g. 10.60.10.100, which should be a static network configuration

    3. Management interface IPv4 Netmask, e.g. 255.255.255.0

    4. Default Gateway, e.g. 10.60.10.1

    5. Space separated DNS Server list, e.g. 10.60.10.1

    6. Space separated NTP Server list, e.g. 10.60.10.1, which is required for features that depend on clock synchronization

  3. Enter the API/UI Server parameters

    1. Abiquo API server FQDN, e.g. server-ova.abiquo.com

      1. This FQDN must be resolvable from customer premises

...

      1. for SSL and the Appliance manager to work

...

      1. properly

    1. Remote Services IP, e.g. 10.60.10.100

    2. Watchtower IP, e.g. 10.60.10.102

Datanode

Installation parameters

Parameter

Notes

Services cluster IPs

IP of this server

  1. Log in to the API/UI server as an administrator

  2. To use the separate database on the datanode server, edit the tomcat configuration at /opt/abiquo/tomcat/conf/Catalina/localhost/api.xml

  3. Change the DB endpoint from localhost to the Galera cluster (datanode server)
    Remove:

    Code Block
    driverClassName="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost:3306/kinton?autoReconnect=true&useUnicode=true&characterEncoding=UTF-8"/>

    Add this line and replace {DATANODE_IP_ADDRESS} with the IP address of your datanode server:

    Code Block
    driverClassName="com.mysql.jdbc.Driver" url="jdbc:mysql://{DATANODE_IP_ADDRESS}:3306/kinton?autoReconnect=true&useUnicode=true&characterEncoding=UTF-8"/>
  4. Change the user and password. If you need more information, please contact Abiquo Support

  5. To point to the datanode instead of the local host for RabbitMQ and Redis, edit the abiquo.properties file at /opt/abiquo/config/abiquo.properties:

  6. Change the values of the following properties to be the IP address of the datanode

    Code Block
    abiquo.rabbitmq.addresses={DATANODE_IP_ADDRESS}
    abiquo.redis.host={DATANODE_IP_ADDRESS}

Firewalls

Server firewall requirements

From

To

Notes

Client

80/tcp

HTTP - It will be redirected to port 443 by default

443/tcp

HTTPS - Proxy port for API/AM/UI services

Remote services appliance

8009/tcp

8010/tcp

V2V appliance

8009/tcp

8010/tcp

Note

Allow ICMP

You must ICMP between all components of the Abiquo platform, including hypervisors.

...

Datanode

...

The datanode appliance contains the database cluster and the Abiquo services. Abiquo uses the services, such as RabbitMQ and Redis, in communication between the API server and other platform components.

The datanode includes the following components and is prepared for use in a high-availability cluster configuration.

...

Component

...

Description

...

MaxScale

...

Read/write splitting across all nodes in Galera, to write to only one node.

...

MariaDB Galera

...

Synchronous multi-director cluster for MariaDB.

...

HAproxy

...

Balancing across all Redis instances, but only leader instance is active

...

Redis

...

Stores volatile information such as tasks.

...

Sentinel

...

Provides high availability for Redis.

...

RabbitMQ

...

Queues for remote services.

...

Zookeeper

...

Manages API leader selection (for more than one API server)

Installation requirements

  • 2 CPUs

  • 8 GB RAM

  • 20 GB HD

Installation parameters

...

Parameter

...

Notes

...

Services cluster IPs

...

IP of this server, or a comma separated list of IPs in a cluster

Firewall requirements

From

To

Notes

Monitoring

3306/tcp

MySQL

5672/tcp

RabbitMQ

Server

2181/tcp

Zookeeper for API load balancing

3306/tcp

MySQL

5672/tcp

RabbitMQ

6379/tcp

Redis

Remote services

5672/tcp

RabbitMQ

V2V

5672/tcp

RabbitMQ

...