Documentation

Set up InfluxDB 3 Enterprise

Prerequisites

To get started, you’ll need:

  • InfluxDB 3 Enterprise: Install and verify the latest version on your system.
  • If you want to persist data, have access to one of the following:
    • A directory on your local disk where you can persist data (used by examples in this guide)
    • S3-compatible object store and credentials

Start InfluxDB

Use the influxdb3 serve command to start InfluxDB 3 Enterprise. Provide the following:

  • --node-id: A string identifier that distinguishes individual server instances within the cluster. This forms the final part of the storage path: <CONFIGURED_PATH>/<CLUSTER_ID>/<NODE_ID>. In a multi-node setup, this ID is used to reference specific nodes.

  • --cluster-id: A string identifier that determines part of the storage path hierarchy. All nodes within the same cluster share this identifier. The storage path follows the pattern <CONFIGURED_PATH>/<CLUSTER_ID>/<NODE_ID>. In a multi-node setup, this ID is used to reference the entire cluster.

  • --object-store: Specifies the type of object store to use. InfluxDB supports the following:

    • file: local file system
    • memory: in memory (no object persistence)
    • memory-throttled: like memory but with latency and throughput that somewhat resembles a cloud-based object store
    • s3: AWS S3 and S3-compatible services like Ceph or Minio
    • google: Google Cloud Storage
    • azure: Azure Blob Storage
  • Other object store parameters depending on the selected object-store type. For example, if you use s3, you must provide the bucket name and credentials.

Diskless architecture

InfluxDB 3 supports a diskless architecture that can operate with object storage alone, eliminating the need for locally attached disks. InfluxDB 3 Enterprise can also work with only local disk storage when needed.

The combined path structure <CONFIGURED_PATH>/<CLUSTER_ID>/<NODE_ID> ensures proper organization of data in your object store, allowing for clean separation between clusters and individual nodes.

For this getting started guide, use the file object store to persist data to your local disk.

# File system object store
# Provide the filesystem directory
influxdb3 serve \
  --node-id host01 \
  --cluster-id cluster01 \
  --object-store file \
  --data-dir ~/.influxdb3

Object store examples

File system object store

Docker with a mounted file system object store

Docker compose with a mounted file system object store

S3 object storage

Memory-based object store

For more information about server options, use the CLI help or view the InfluxDB 3 CLI reference:

influxdb3 serve --help

Set up licensing

When you first start a new instance, InfluxDB 3 Enterprise prompts you to select a license type.

InfluxDB 3 Enterprise licenses:

  • Authorize usage of InfluxDB 3 Enterprise software for a single cluster.
  • Apply per cluster, with limits based primarily on CPU cores.
  • Vary by license type, each offering different capabilities and restrictions.

Available license types

  • Trial: 30-day trial license with full access to InfluxDB 3 Enterprise capabilities.
  • At-Home: For at-home hobbyist use with limited access to InfluxDB 3 Enterprise capabilities.
  • Commercial: Commercial license with full access to InfluxDB 3 Enterprise capabilities.

Trial and at-home licenses with Docker

To generate the trial or home license in Docker, bypass the email prompt. The first time you start a new instance, provide your email address with the --license-email option or the INFLUXDB3_ENTERPRISE_LICENSE_EMAIL environment variable.

Currently, if you use Docker and enter your email address in the prompt, a bug may prevent the container from generating the license .

For more information, see the Docker Compose example.

Use the InfluxDB 3 Explorer query interface

You can complete the remaining steps in this guide using InfluxDB 3 Explorer, the web-based query and administrative interface for InfluxDB 3. Explorer provides visual management of databases and tokens and an easy way to write and query your time series data.

For more information, see the InfluxDB 3 Explorer documentation.

Set up authorization

InfluxDB 3 Enterprise uses token-based authorization to authorize actions in the database. Authorization is enabled by default when you start the server. With authorization enabled, you must provide a token with influxdb3 CLI commands and HTTP API requests.

InfluxDB 3 Enterprise supports the following types of tokens:

  • admin token: Grants access to all CLI actions and API endpoints.

  • resource tokens: Tokens that grant read and write access to specific resources (databases and system information endpoints) on the server.

    • A database token grants access to write and query data in a database
    • A system token grants read access to system information endpoints and metrics for the server

For more information about tokens and authorization, see Manage tokens.

Create an operator token

After you start the server, create your first admin token. The first admin token you create is the operator token for the server.

Use the influxdb3 create token command with the --admin option to create your operator token:

influxdb3 create token --admin
# With Docker — in a new terminal:
docker exec -it 
CONTAINER_NAME
influxdb3 create token --admin

Replace CONTAINER_NAME with the name of your running Docker container.

The command returns a token string for authenticating CLI commands and API requests.

Store your token securely

InfluxDB displays the token string only when you create it. Store your token securely—you cannot retrieve it from the database later.

Set your token for authorization

Use your operator token to authenticate server actions in InfluxDB 3 Enterprise, such as creating additional tokens, performing administrative tasks, and writing and querying data.

Use one of the following methods to provide your token and authenticate influxdb3 CLI commands.

In your command, replace YOUR_AUTH_TOKEN with your token string (for example, the operator token from the previous step).

Set the INFLUXDB3_AUTH_TOKEN environment variable to have the CLI use your token automatically:

export INFLUXDB3_AUTH_TOKEN=
YOUR_AUTH_TOKEN

Include the --token option with CLI commands:

influxdb3 show databases --token 
YOUR_AUTH_TOKEN

For HTTP API requests, include your token in the Authorization header–for example:

curl "http://localhost:8181/api/v3/configure/database" \
  --header "Authorization: Bearer 
YOUR_AUTH_TOKEN
"

Learn more about tokens and permissions


Was this page helpful?

Thank you for your feedback!


The future of Flux

Flux is going into maintenance mode. You can continue using it as you currently are without any changes to your code.

Read more

New in InfluxDB 3.2

Key enhancements in InfluxDB 3.2 and the InfluxDB 3 Explorer UI is now generally available.

See the Blog Post

InfluxDB 3.2 is now available for both Core and Enterprise, bringing the general availability of InfluxDB 3 Explorer, a new UI that simplifies how you query, explore, and visualize data. On top of that, InfluxDB 3.2 includes a wide range of performance improvements, feature updates, and bug fixes including automated data retention and more.

For more information, check out: