Introduction
Abiquo relies on a complex infrastructure with many distributed services that must be monitored on health and performance. This document is a guideline about which elements you must monitor in your installation to assure service level and proactively detect possible failures before your end customers do.
Monitoring technology
We let you choose your prefered monitoring platform, nowadays most major monitoring technologies have the capability to alert about service outages alongside retrieving and graphing performance metrics, so it is up to you to decide which one you will use.
Services to monitor
Next you will find a relation of elements to monitor on every server in a distributed installation. We will try to detail both process name, port where the service would be listening and also interesting parameters to get metrics values for.
Abiquo Server
This server would host Abiquo API, UI, websockify and M services, it would also have the queue system RabbitMQ, Redis and MariaDB database.
Service | Parameters |
---|---|
Basic Parameters | CPU usage |
RAM Usage | |
Filesystem occupation | |
Network availability | |
Abiquo API | abiquo-tomcat service running |
apache tomcat / JVM performance parameters | |
port 8009/HTTP listening | |
port 8010/AJP listening | |
Login service available (curl -u admin -p xabiquo http://abiquo_server:8009/api/login ) | |
Abiquo UI | httpd service running |
Apache webserver performance parameters | |
port 80/HTTP listening | |
port 443/HTTPS listening | |
UI service available (curl http://abiquo_server:80/ui ) | |
RabbitMQ | rabbitmq service running |
port 5672/AMPQ listening | |
queue status ( rabbitmqctl list_queues name messages consumers ) | |
queue status - Number of messages queued ( increase of this number indicates a global problem ) | |
queue status - Number of consumers ( Each queue must have at least one connected consumer ) | |
RabbitMQ performance parameters | |
Redis | redis service running |
Port 6379/TCP listening | |
Redis performance parameters | |
Websockify | websockify service running |
Port 41337/TCP listening | |
(Abiquo v3.8 and earlier) cron service running, /opt/websockify/config.vnc file updated at least every five minutes | |
(Abiquo v3.10+) abiquo-websockify service running | |
MariaDB | mysql service running |
Port 3306/TCP listening | |
MariaDB performance parameters |