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 Services datanode as the first step in deploying a staged Abiquo distributed scalable environment.

At the end of this deployment, you should be able to log in to the UI and edit your user, and create a user.

Introduction

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

The services 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.
For Ubuntu, deploy first the services datanode and configure it, then you can deploy the api-ui or server.

...

Requirements

You will need the following virtual resources.

...

Note
  • The NFS repository folder for VM templates must be present and it must be able to be mounted and accessible on servers and hypervisors. See VM repository folder

  • The FQDN of the Abiquo API server must have DNS resolution

...

This section describes how to install the API UI server.

  1. Download the server OVA file and launch it. For details of the OVA deployment, see how to deploy an OVA in VMware, see OVA deployment for distributed scalable

  2. Enter the standard parameters for the API UI server, which are 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-ovaserverova.lab.abiquo.com

      1. This FQDN must be resolvable from customer premises for SSL and the Appliance manager to work properly

    2. Remote Services IP, e.g. 10.60.10.110

    3. Watchtower IP, e.g. 10.60.10.102

...

...

Services datanode

We will deploy a single services datanode server to form a cluster of one node. Later, you can easily deploy more nodes and add them to the cluster.

  1. Download the services datanode OVA file and launch it.

  2. Enter the standard parameters for the services datanode server. The description of the parameters is the same as above

    1. Friendly hostname, e.g. datanode-ova, which must be servicesova, enter a valid Linux hostname

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

  3. Enter the services datanode server parameters

    1. Services cluster IPs, e.g. 10.60.10.185, which is the IP of this server because the cluster will only have one node

...

Post install steps

Services datanode

  1. Log in to the services datanode server as an administrator

  2. Configure the Galera cluster with the following command

    Code Block
    galera_new_cluster
  3. Edit the RabbitMQ environment configuration file at /etc/rabbitmq/rabbitmq-env.conf

  4. Set the nodename that corresponds to the server, such as rabbit@services1

  5. Restart the RabbitMQ service

    Code Block
    systemctl restart rabbitmq-server.service
  6. Then run the following command

    Code Block
    /usr/local/abiquo/setup build_cluster

    Note that this command will output the default user and password of the database, so for a test system behind a firewall, you can use that in the next step.

...

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

    1. Change the DB endpoint from localhost to the IP address of the services datanode server, where your Galera

    cluster (datanode server)
    1. database cluster is running .
      Remove this line:

      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://{SERVICES_DATANODE_IP_ADDRESS}:3306/kinton?autoReconnect=true&useUnicode=true&characterEncoding=UTF-8"/>
    2. Change the user and password. If you need more information, please contact Abiquo Support

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

    1. Change

    the values of the following properties to be the IP address of the datanode
    1. the IP address of the services datanode and add the port of the Redis instance, and the FQDN of the API. Also deactivate monitoring until you deploy the monitoring node.

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

Datanode

  1. Log in to the datanode server as an administrator

  2. Configure the Galera cluster with the following command

    Code Block
    galera_new_cluster
  3. Edit the RabbitMQ environment configuration file at /etc/rabbitmq/rabbitmq-env.conf

  4. Set the nodename that corresponds to the server, such as rabbit@services1

  5. Restart the RabbitMQ service

    Code Block
    service rabbitmq-server restart
  6. Then run the following command

    Code Block/usr/local/abiquo/setup build_cluster
    1. 
      
      abiquo.redis.port = 6379
      
      abiquo.monitoring.enabled=false
      abiquo.server.api.location = https://{API_FQDN}/api
    2. Save the properties file and restart the abiquo-tomcat server

      Code Block
      systemctl restart abiquo-tomcat.service
  7. To check when the Abiquo server has started you can follow the end of the log with the following command until the API has started and connected to the services.

    Code Block
    tail -f /opt/abiquo/tomcat/logs/catalina.out

...

Configure firewalls

Configure the firewalls for your servers as described here.

Server firewall requirements

...

Note

Allow ICMP

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

...

Datanode Firewall Services datanode 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

...

Abiquo UI requires a screen resolution of at least 1024 x 768 for productive work.
It is based on HTML5 The UI uses HTML5, so browsers must support these HTML5 features: Forms block, Drag and drop.

The Abiquo UI is optimized for use with Firefox and Chrome.

...

Validating the server and services datanode install

  1. Log in to Abiquo UI

...

  1. and update your user account details as described at:
    Starting Abiquo for the first time

...

  1. Optionally, create a new user. See Create a user

...

Next

...

step

Install Abiquo remote services. See Deploy distributed scalable remote services