🌐Platform
Installation completes within minutes, ensuring that all components are operational upon completion.
To upgrade an existing platform, please refer to Upgrade section
Availability
The platform is available exclusively on linux systems:
RHEL8, Rocky linux 8, AlmaLinux 8
RHEL9, Rocky linux 9, AlmaLinux 9
Debian Bullseye
License
A license key is required to use Datasentinel.
Obtain a Datasentinel license key:
Users who want to try Datasentinel can obtain a 60-day Trial Key
Existing customers can obtain their license key from support: [email protected]
Refer to the documentation for instructions on updating the Token to enable the license key.
System Requirements
The sizing of the machine (cpus, memory, storage) to be provisioned, will depend on the number of PostgreSQL instances to monitor as well as the data retention chosen. Default sizing recommendations with a retention of 14 days
1 to 10
8GB
25GB
11 to 50
16GB
50GB
51 to 100
32GB
75GB
101 to 200
64GB
100G
>200
96GB
150GB
For enhanced memory management on a server hosting Datasentinel, it is advised to set the swappiness parameter to a value of 5.
You can confirm the current value:
cat /proc/sys/vm/swappiness
Security rules
Here are the firewall settings necessary for Datasentinel. NGINX acts as the main entry point for Datasentinel, handling all incoming connections—both from agents and the user interface (GUI)—over port 443 by default. (can be changed)
NGINX communicates locally with other Datasentinel components through their assigned ports.
IMPORTANT: SELinux Requirement For proper operation of all Datasentinel services, SELinux must be set to Permissive or Disabled on the host. Running in Enforcing mode can block critical internal traffic and file access, preventing components from starting or communicating.
Refer to How to configure SELinux
1. Agent-based mode
The listening port of the platform server must be accessible in both directions (PUSH and PULL) from the agents' servers.
Each agent listens on port 8282 by default (updatable). The platform server must be able to communicate with the agent servers on this port (PUSH and PULL)
2. Agentless mode
The platform connects directly to PostgreSQL instances. The listening port of each PostgreSQL instance must be accessible from the platform
Step-by-Step Installation Instructions
Download
RHEL, Rocky Linux, AlmaLinux 8
RHEL, Rocky Linux, AlmaLinux 9
Debian Bullseye
The file size is approximately 690 MB.
// Download example with wget
wget https://app.datasentinel.io/ds-api/download/install-datasentinel-platform-rhel9-latest.tar.gz
Installation
During installation, you will need to be logged in as the root account. However, this is the only time this account is required. After installation, all modules and future updates will be executed using the defined application account.
Prior to starting the installation process, it is necessary to install NGINX, as it serves as the initial entry point for Datasentinel.
// Example
dnf install -y nginx
// Uncompress the downloaded file
tar xvzf install-datasentinel-platform-rhel9-latest.tar.gz
Uncompress the downloaded file to create two files:
init_datasentinel.sh
and datasentinel-platform.tar.gz
// Run the shell script
./init_datasentinel.sh
The script executes in less than 2 minutes and performs multiple actions:
Requests user input for the application username (default is datasentinel). The user can be pre-created with bash as the default shell.
Requests the application listening port (default is 443)
Creates the /datasentinel directory if it doesn't already exist
Decompresses datasentinel-platform.tar.gz to install all components
Creates entries in
bash_profile
andcrontab
Deploys services for automatic restart
Starts all components.
At the end of the installation, the platform should be up and running.
The listening port must be opened and accessible.
Also, be careful with your firewall configuration (SELinux, firewalld) if any.
NGINX is the entry component for Datasentinel, listening on port 443 by default for all incoming communications from other servers.
NGINX communicates locally with other components using their designated listening ports. Refer to the configuration file located at /etc/nginx/conf.d/datasentinel.conf
If a 502 error appears on the graphical interface despite all components being up and running, it’s worth checking the firewall settings, such as SELinux
SSL certificate
The on-premises platform utilizes a self-signed certificate configured with NGINX.
The self-signed certificate is located in the /etc/nginx/certs
directory.
If desired, you can replace it with your own certificate. To do so:
Generate a certificate for the platform machine.
Replace the existing files
cert_datasentinel.pem
andkey_datasentinel.pem
with the real certificateRestart NGINX or reload it:
/usr/sbin/nginx -s reload
License update
To begin using Datasentinel, you must update the license by following the instructions on how to update the token.
Components
Architecture

Datasentinel utilizes the following components:
Nginx web server
Datasentinel Backend API
Datasentinel dispatcher (Agentless feature)
Timeseries database InfluxDB
Grafana Frontend, which includes a PostgreSQL database and Datasentinel Frontend as a plugin.
Management
// Start All
systemctl start datasentinel_influxdb datasentinel_postgresql datasentinel_grafana datasentinel_backend datasentinel_dispatcher nginx
// Stop All
systemctl stop datasentinel_influxdb datasentinel_postgresql datasentinel_grafana datasentinel_backend datasentinel_dispatcher nginx
// Component status
systemctl -l | egrep -i "datasentinel_|nginx"
// alias
status_datasentinel
// Output
datasentinel_backend.service loaded active running Datasentinel backend APIs
datasentinel_dispatcher.service loaded active running Datasentinel dispatcher
datasentinel_influxdb.service loaded active running InfluxDB service
datasentinel_grafana.service loaded active running Grafana daemon
datasentinel_postgresql.service loaded active running PostgreSQL 10 database server
nginx.service loaded active running The nginx HTTP and reverse proxy server
Status Check via the API
Another method to check the status of the platform is by querying its API using the following curl command
// curl
curl -k https://localhost/ds-api/
// output
{
"status": "OK",
"message": "Datasentinel Backend up and running",
"datasentinel_version": "2023.05",
"services": [
{
"name": "nginx",
"description": "Nginx web server",
"running": true
},
{
"name": "datasentinel_grafana",
"description": "Grafana frontend",
"running": true
},
{
"name": "datasentinel_postgresql",
"description": "PostgreSQL instance",
"running": true
},
{
"name": "datasentinel_backend",
"description": "Backend service and API",
"running": true
},
{
"name": "datasentinel_dispatcher",
"description": "Agentless service",
"running": true
},
{
"name": "datasentinel_influxdb",
"description": "Influxdb database",
"running": true
}
]
}
Installation demo
Log files
Datasentinel generates logs, which are located in the /datasentinel/log
directory, except for the NGINX log file
/var/log/https_datasentinel.log
Nginx log access (by default, access log is off)
datasentinel.log
Backend log file
dispatcher.log
Agentless feature log file
alerting.log
Alerting and Notification log file
scheduler.log
Scheduler log file
backend_to_influx.log
Log data copied to influxdb database in case of errors
grafana.log
Grafana log access
Last updated