Datasentinel Docs
Visit our websiteBlogRelease Notes
  • 👋Welcome
  • 🆓Free Trial
  • 📣Release Notes
  • Getting started
    • Architecture
    • Installation
      • 🌐Platform
      • 🕶️Agent
    • PostgreSQL clusters
      • 🔌Extensions
        • 🔌pg_stat_statements
        • 🔌pg_store_plans
        • 🔌system_stats
        • 🔌pg_buffercache
      • 🕶️Monitoring User
      • ➕Adding Connection
    • FAQs
      • ❓Platform FAQ
      • ❓Agent FAQ
  • Features
    • Key Features
      • 📊Session History
      • 📊Top Queries
      • 📂Top Tables
      • 🔓Lock Explorer
      • 📈Cluster & System Metrics
      • ⌚Live360
      • 📰Reporting
      • 🔔Alerting
        • Settings
        • Templates
        • Silences
        • Manager
    • Other Features
      • 📡Agentless Monitoring
      • 🛡️Role Based Access
      • 🔂Changed Parameters
    • Tips & Hints
      • 🖥️User Interface
      • 🏷️Tags
      • 🔀Metric Correlation
      • 👁️‍🗨️Consolidated View
      • ❗Graphical Annotations
      • ☁️Predefined Providers
      • ❓Wait Event Description
      • ®️Read Replicas
      • 👁️‍🗨️Agentless & System Metrics
      • ☑️Simplified pg_instance Display
  • implementation
    • Platform Usage
      • ⚙️Configuration
        • 🔑License
        • 📓LDAP
        • ✉️SMTP
        • 📋Audit
        • 👨‍🏭Users & Roles
      • 🧩API
        • 🔗Access Token
        • 🧩Connection API
        • 🧩Role API
        • 🧩User API
        • 🧩Reporting API
        • 🧩Workload API
        • 🧩Alerting API
      • 🛠️Tooling
    • Agent Usage
      • 📣Release Notes
      • ⌨️CLI
      • 🧩API
      • 🗃️Collection Level
      • 🔬Internals
    • Upgrade
      • 🔄Platform
      • 🔄Agent
    • Troubleshooting
      • 🩺Error message: “502 Bad Gateway”
      • 🩺The UI is not displaying any metrics for my new instance.
      • 🩺UI dashboard is encountering loading errors
      • 🩺InfluxDB
  • Support
    • How to Contact Us
  • GitHub Toolkit
Powered by GitBook
On this page
  • Availability
  • License
  • System Requirements
  • Security rules
  • Step-by-Step Installation Instructions
  • Components
  • Architecture
  • Management
  • Status Check via the API
  • Installation demo
  • Log files
  1. Getting started
  2. Installation

Platform

Installation completes within minutes, ensuring that all components are operational upon completion.

PreviousInstallationNextAgent

Last updated 2 months ago

To upgrade an existing platform, please refer to

Availability

The platform is available exclusively on linux systems:

Distribution

RHEL8, Rocky linux 8, AlmaLinux 8

RHEL9, Rocky linux 9, AlmaLinux 9

Debian Bullseye

To install Datasentinel on a different Linux system, please reach out to us at

License

A license key is required to use Datasentinel.

Obtain a Datasentinel license key:

  • Users who want to try Datasentinel can obtain a

  • Existing customers can obtain their license key from support:

Refer to the documentation for instructions on updating the 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

Instances
CPUs
Memory
Storage

1 to 10

4

8GB

25GB

11 to 50

8

16GB

50GB

51 to 100

8

32GB

75GB

101 to 200

16

64GB

100G

>200

24

96GB

150GB

We strongly recommend a machine with scale capabilities such as virtual machines

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

  • The listening port of the platform server must be accessible to connect to the GUI. The port is the https port 443 by default and can be changed.

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

Date
Last available platform version

2025-02-21

2025.02

1

Download

OS
File to 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

2

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.

// 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

The application binaries and the database for storing metrics will be installed in the /datasentinel directory. You can choose to pre-create the directory as a symbolic link, file system, or directory, or it will be created during installation. Make sure the directory is empty.

// 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 and crontab

  • Deploys services for automatic restart

  • Starts all components.

To install Datasentinel silently, use ./init_datasentinel.sh -d Default values will be used

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. It communicates locally with other components via their respective listening ports. Config file /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

3

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.pemand key_datasentinel.pem with the real certificate

  • Restart NGINX or reload it: /usr/sbin/nginx -s reload

The configuration file used by NGINX is /etc/nginx/conf.d/datasentinel.conf

4

User interface

Once the installation is complete, access the UI using url and username:

  • URL: https://<<server_name>>

  • Username: datasentinel

The password will be displayed at the end of the installation process

5

License update


Components

Architecture

Datasentinel utilizes the following components:

  1. Nginx web server

  2. Timeseries database InfluxDB

  3. Grafana Frontend, which includes a PostgreSQL database and Datasentinel Frontend as a plugin.

Each component is restarted automatically with a system service located on /usr/lib/systemd/system

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"

An alias is available when connected as datasentinel to check the availability of all components

// 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

Log file
Information

/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

The platform is packaged as a single file, install-datasentinel-platform-<<OS>>-latest.tar.gz, which includes all necessary .

Prior to starting the installation process, it is necessary to install , as it serves as the initial entry point for Datasentinel.

To begin using Datasentinel, you must update the license by following the instructions on .

Datasentinel

Datasentinel dispatcher ( feature)

🌐
Upgrade section
support@datasentinel.io
60-day Trial Key
support@datasentinel.io
Token
NGINX
how to update the token
Backend API
Agentless
Release Notes
install-datasentinel-platform-rocky8-latest.tar.gz
install-datasentinel-platform-rhel9-latest.tar.gz
install-datasentinel-platform-debian-bullseye-latest.tar.gz
components
Datasentinel architecture