Installation

Rocky Linux

Please configure the system with a UTF-8 locale, as example en_US.UTF-8.

Prepare installation

dnf install epel-release wget

Repository

wget https://repo.bloonix.org/bloonix.gpg -O /etc/pki/rpm-gpg/RPM-GPG-KEY-Bloonix
cat <<EOT >/etc/yum.repos.d/bloonix.repo
[bloonix]
name=Bloonix repository
baseurl=https://repo.bloonix.org/rockylinux/\$releasever/\$basearch
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-Bloonix
EOT

Packages

dnf install nginx \
    postgresql-server \
    postfix \
    redis \
    bloonix-server \
    bloonix-webgui \
    bloonix-webgui-schema \
    bloonix-agent

Redis

echo 'save ""' >>/etc/redis/redis.conf
systemctl restart redis

PostgreSQL

/usr/bin/postgresql-setup --initdb

Edit /var/lib/pgsql/data/pg_hba.conf and comment out the following lines:

host    all             all             127.0.0.1/32            ident
host    all             all             ::1/128                 ident

Add the following lines:

host all all 127.0.0.1/32 md5
host all all ::1/128 md5

Start the database

systemctl start postgresql

Initialize the database schema

cd /usr/share/bloonix/schema/
./init-postgresql-database -i -m -o /etc/bloonix/database/main.conf
./init-postgresql-database -i -d -o /etc/bloonix/datastore/main.conf

Import the check plugins

bloonix-import-plugins-into-db

Nginx

An example configuration for testing purposes can be found in the file /etc/bloonix/webgui/nginx.conf and looks like:

server {
    listen 8080 default_server;
    listen [::]:8080 default_server;
    server_name _;
    access_log /var/log/nginx/bloonix-webgui.access.log;
    error_log /var/log/nginx/bloonix-webgui.error.log;
    location /favicon.ico {
        expires 365d;
        add_header Cache-Control public;
        root /srv/bloonix/webgui/public/assets/img;
    }
    location /assets {
        expires 365d;
        add_header Cache-Control public;
        root /srv/bloonix/webgui/public;
    }
    location / {
        expires off;
        include uwsgi_params;
        uwsgi_pass 127.0.0.1:9000;
    }
}

However, for security reasons, a domain should be set up with a valid SSL certificate.

Systemctl

Once everything is set up, the Bloonix services can be started and enabled.

systemctl start bloonix-webgui
systemctl start bloonix-server
systemctl start bloonix-agent

systemctl enable bloonix-webgui
systemctl enable bloonix-server
systemctl enable bloonix-agent

Login

The initial login for the WebGUI is

admin / bloonix

Templates

The last step is to import the predefined service templates from Bloonix. These are not absolutely necessary, but they make getting started easier.

bloonix-import-default-templates \
    --url https://webgui-domain/