In this tutorial, we will show you how to install InfluxDB on Debian 12. InfluxDB, the powerful open-source time-series database, has emerged as a go-to solution for managing high-frequency data streams in various domains. From monitoring system performance to handling Internet of Things (IoT) data, InfluxDB provides a robust foundation for real-time analytics.
This article assumes you have at least basic knowledge of Linux, know how to use the shell, and most importantly, you host your site on your own VPS. The installation is quite simple and assumes you are running in the root account, if not you may need to add ‘
sudo‘ to the commands to get root privileges. I will show you the step-by-step installation of the InfluxDB on a Debian 12 (Bookworm).
- A server running one of the following operating systems: Debian 12 (Bookworm).
- It’s recommended that you use a fresh OS install to prevent any potential issues.
- SSH access to the server (or just open Terminal if you’re on a desktop).
- An active internet connection. You’ll need an internet connection to download the necessary packages and dependencies for InfluxDB.
non-root sudo useror access to the
root user. We recommend acting as a
non-root sudo user, however, as you can harm your system if you’re not careful when acting as the root.
Install InfluxDB on Debian 12 Bookworm
Step 1. Before we install any software, it’s important to make sure your system is up to date by running the following
apt commands in the terminal:
sudo apt update sudo apt install build-essential libjpeg-dev libpng-dev libtiff-dev
This command will refresh the repository, allowing you to install the latest versions of software packages.
Step 2. Installing InfluxDB on Debian 12.
Run the following command below to install InfluxDB and client tools:
sudo apt install influxdb influxdb-client
Step 3. Configuring InfluxDB.
Now that InfluxDB is installed, it’s crucial to configure it correctly before use. By default, InfluxDB’s configuration file is located at
/etc/influxdb/influxdb.conf. Let’s dive in and tweak some essential settings:
- Adjust data storage settings:
InfluxDB offers multiple storage options, including storing data in memory or on disk. To optimize performance and manage resources, we recommend configuring the
wal directories. Open the configuration file:
sudo nano /etc/influxdb/influxdb.conf
Search for the following lines and modify them to suit your system:
# data storage and retrieval settings [storage] ... # For example, to use /var/lib/influxdb as the data directory: dir = "/var/lib/influxdb/data" # wal - write-ahead log settings [wal] ... # For example, to use /var/lib/influxdb/wal as the WAL directory: dir = "/var/lib/influxdb/wal"
- Configure network and HTTP settings (optional):
By default, InfluxDB listens on
localhost for HTTP requests. If you want to enable external access or modify the listening address and port, adjust the following lines:
# [http] ... # The bind address used by the HTTP service. bind-address = ":8086" # Determines whether HTTP endpoint is enabled. enabled = true
Once the configuration is complete, you can start the MongoDB service using the following command:
sudo systemctl start influxdb
You can also enable the MongoDB service to start automatically at boot time using the following command:
sudo systemctl enable influxdb
Step 4. Accessing InfluxDB on Debian.
To interact with InfluxDB, we’ll use its powerful command-line interface (CLI). The CLI provides an intuitive way to manage databases, measurements, and tags. Let’s explore some of the basic commands:
Create a new database:
CREATE DATABASE my_database
Switch to the newly created database:
Create a measurement:
INSERT cpu,host=my_server value=0.64
Step 5. Securing InfluxDB.
Securing your InfluxDB instance is of utmost importance to protect sensitive data and maintain its integrity. Implement the following measures to bolster security.
- Enable authentication and authorization: By default, InfluxDB allows unrestricted access. We must enable authentication and create users with specific permissions:
influx CREATE USER my_user WITH PASSWORD 'strong_password' WITH ALL PRIVILEGES
- Configure HTTPS (optional but recommended):
To encrypt communication between clients and InfluxDB, configure HTTPS with a valid SSL/TLS certificate.
Congratulations! You have successfully installed InfluxDB. Thanks for using this tutorial for installing the latest version of InfluxDB on Debian 12 Bookworm. For additional help or useful information, we recommend you check the official InfluxDB website.