Datanode services cluster

This document describes the datanode services cluster, which includes the database cluster and Abiquo services cluster. The datanode services cluster is part of an Abiquo distributed HA cluster environment.

In an Abiquo distributed scalable environment, the datanode services cluster contains only 1 node.

The datanode appliance contains the database cluster and the Abiquo services.

The database cluster will be a standard Galera cluster to store application data in MariaDB.

Abiquo uses the services, such as RabbitMQ and Redis, in communication between the API server and other platform components.

Datanode components

Component

Description

MaxScale

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

MariaDB Galera

Synchronous multi-main cluster for MariaDB.

HAproxy

Balancing across all Redis instances, but only main 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)

 

Galera database cluster

MaxScale splits reads and writes across all nodes, so only one node will receive writes. Components that do not support MariaDB Galera cluster will use the VIP to access the MariaDB Galera cluster through MaxScale.

Galera database cluster
Galera database cluster

Datanode services cluster

The cluster has a virtual IP (VIP) that will be active on one node at a time only. For access to Redis, Abiquo components (API and RS) will use the VIP. All HAproxy instances balance across all Redis instances, but only the main instance is active.

RabbitMQ is a standard configuration that can be built as a cluster. 

If we use more than one API server, we will configure Zookeeper. This service coordinates APIs for tasks with RS and periodic checks.

 Datanode services cluster
Datanode services cluster

 

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