Manage your InfluxDB 3 Enterprise license
InfluxDB 3 Enterprise licenses authorize the use of the InfluxDB 3 Enterprise software and apply to a single cluster. Licenses are primarily based on the number of CPUs InfluxDB can use, but there are other limitations depending on the license type.
- License feature comparison
- CPU limit
- Upgrade from InfluxDB 3 Core
- Activate a license
- Change your license type
- Renew a license
- Expiration behavior
License feature comparison
The following InfluxDB 3 Enterprise license types are available:
- 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.
| Features | Trial | At-Home | Commercial |
|---|---|---|---|
| CPU Core Limit | 256 | 2 | Per contract |
| Expiration | 30 days | Never | Per contract |
| Multi-node | |||
| Commercial use |
All other InfluxDB 3 Enterprise features are available to all licenses.
CPU limit
Each InfluxDB 3 Enterprise license limits the number of CPUs InfluxDB can use. The CPU limit is per cluster, not per machine. A cluster may consist of multiple nodes that share the available CPU limit.
For example, you can purchase a 32-CPU Commercial license and set up an InfluxDB 3 Enterprise cluster with the following:
- 3 × writer nodes, each with 4 CPUs (12 total)
- 1 × compactor node with 8 CPUs
- 3 × query nodes, each with 4 CPUs (12 total)
With the InfluxDB 3 Enterprise Commercial license, CPU cores are purchased in batches of 8, 16, 32, 64, or 128 cores.
CPU accounting
CPU cores are determined by whatever the operating system of the host machine reports as its core count. InfluxDB 3 Enterprise does not differentiate between physical and virtual CPU cores.
If using Linux, InfluxDB uses whatever cgroup CPU accounting is active–for
example: cpuset or cpu.shares.
Upgrade from InfluxDB 3 Core
If you’re running InfluxDB 3 Core and want to upgrade to InfluxDB 3 Enterprise, follow these instructions. Your existing data is compatible with Enterprise–no data migration is required.
Downgrading is not supported
After upgrading to InfluxDB 3 Enterprise, you cannot downgrade back to InfluxDB 3 Core. Enterprise makes catalog changes that are incompatible with Core. To revert to Core, you must restore from a backup taken before the upgrade.
Before upgrading, back up your data directory.
Before you begin
-
Back up your data: Create a backup of your InfluxDB 3 Core data directory before upgrading. For more information, see Back up and restore data.
-
Note your current configuration: Record your Core startup options, including
--data-dir,--object-store, and any other configuration. You’ll use the same data directory with Enterprise. -
Choose a license type: Decide which InfluxDB 3 Enterprise license you need:
- Trial: 30-day full-featured trial
- At-Home: Free for hobbyist use (2 CPU limit, single-node only)
- Commercial: For production and commercial use
Upgrade to Enterprise
Choose your installation method:
Stop InfluxDB 3 Core
Stop the running Core process:
# If running in foreground, press Ctrl+C
# If running in background, find and stop the process
pkill -f "influxdb3 serve"Install InfluxDB 3 Enterprise
Run the quick install script for Enterprise:
curl -O https://www.influxdata.com/d/install_influxdb3.sh \
&& sh install_influxdb3.sh enterpriseStart InfluxDB 3 Enterprise
Start Enterprise with your existing data directory. Enterprise requires a
--cluster-id option that Core doesn’t use:
influxdb3 serve \
--node-id NODE_ID \
--cluster-id CLUSTER_ID \
--object-store file \
--data-dir DATA_DIR \
--license-email EMAILReplace the following:
NODE_ID: Your existing node identifier from CoreCLUSTER_ID: A new cluster identifier for Enterprise (for example,cluster0)DATA_DIR: The same data directory you used with CoreEMAIL: Your email address for license activation
When prompted, select your license type (trial or home), then verify your
email address.
Stop the Core container
docker stop CORE_CONTAINER_NAMEPull the Enterprise image
docker pull influxdb:3-enterpriseStart InfluxDB 3 Enterprise
Start Enterprise using the same data volume. Enterprise requires a --cluster-id
option and license configuration:
docker run -d \
--name influxdb3-enterprise \
-p 8181:8181 \
-e INFLUXDB3_ENTERPRISE_LICENSE_EMAIL=EMAIL \
-v DATA_VOLUME:/var/lib/influxdb3/data \
-v PLUGIN_VOLUME:/var/lib/influxdb3/plugins \
influxdb:3-enterprise \
influxdb3 serve \
--node-id NODE_ID \
--cluster-id CLUSTER_ID \
--object-store file \
--data-dir /var/lib/influxdb3/dataReplace the following:
EMAIL: Your email address for license activationDATA_VOLUME: The same data volume you used with CorePLUGIN_VOLUME: The same plugin volume you used with CoreNODE_ID: Your existing node identifier from CoreCLUSTER_ID: A new cluster identifier for Enterprise (for example,cluster0)
License activation in Docker
You must provide INFLUXDB3_ENTERPRISE_LICENSE_EMAIL as an environment
variable because the interactive license prompt doesn’t work in containers.
After starting the container, check your email and click the verification link.
Stop InfluxDB 3 Core
sudo systemctl stop influxdb3-coreInstall InfluxDB 3 Enterprise
The Core and Enterprise packages share the same data directory
(/var/lib/influxdb3/data) but use different configuration files and
systemd unit names. The packages are not coinstallable–installing Enterprise
doesn’t remove Core, but you should only run one at a time.
Configure InfluxDB 3 Enterprise
Copy your Core configuration to the Enterprise configuration file and add Enterprise-specific options:
# Copy relevant settings from Core config
sudo cp /etc/influxdb3/influxdb3-core.conf /etc/influxdb3/influxdb3-enterprise.confEdit /etc/influxdb3/influxdb3-enterprise.conf to add Enterprise-specific options:
# Existing settings from Core
node-id = "node0"
object-store = "file"
data-dir = "/var/lib/influxdb3/data"
plugin-dir = "/var/lib/influxdb3/plugins"
# Add Enterprise-specific settings
cluster-id = "cluster0"
license-email = "your-email@example.com"Start InfluxDB 3 Enterprise
sudo systemctl start influxdb3-enterpriseCheck the logs to verify the server started successfully:
journalctl --unit influxdb3-enterprise -fAfter starting, check your email and click the verification link to activate your license.
(Optional) Disable Core service
To prevent accidentally starting Core:
sudo systemctl disable influxdb3-coreVerify the upgrade
After starting Enterprise, verify the upgrade was successful:
-
Check the version:
influxdb3 --version -
Verify your license:
influxdb3 show license --host http://localhost:8181 -
Query your existing data to confirm it’s accessible.
Activate a license
Each InfluxDB 3 Enterprise license must be activated when you start the server, but the process of activating the license depends on the license type:
Activate a trial or at-home license
- Use the
influxdb3 servecommand to start the server. If the server doesn’t find a license file or email address, the server prompts you to enter your email address. If you’re activating an InfluxDB trial or home license with Docker or with DEB/RPM installs, include options to skip the email prompt. - The server prompts you to select a license type. Select
trialorhome. - In the verification email from InfluxDB 3 Enterprise, click the button to verify your email address.
After you verify your email address, InfluxDB 3 Enterprise auto-generates a license (associated with your cluster and email address) and stores the license file in your object store. The license file is a JWT file that contains the license information.
Activate a trial or home license with Docker or Linux packaging
If you’re starting a new InfluxDB 3 Enterprise server in a Docker container or installed via DEB or RPM, you must use one of the methods to skip the email prompt. This ensures that the server can generate the license file after you verify your email address. See the following examples:
Skip the email prompt
To skip the email prompt when starting the server, you can provide your email address using one of the following methods:
- CLI option: Use the
--license-emailoption with theinfluxdb3 servecommand - Environment variable: Set the
INFLUXDB3_ENTERPRISE_LICENSE_EMAILenvironment variable - TOML config (DEB/RPM-only): Set the
license-emailoption in the/etc/influxdb3/influxdb3-enterprise.conffile for a DEB or RPM install
If the server finds a valid license file in your object store, it ignores the license email option.
See examples to start the server with your license email.
Use an existing trial or at-home license
When you activate a trial or at-home license, InfluxDB registers your email address with the license server. To use your existing license–for example, if you deleted your license file–provide your email address using one of the following methods:
- CLI option: Use the
--license-emailoption with theinfluxdb3 servecommand - Environment variable: Set the
INFLUXDB3_ENTERPRISE_LICENSE_EMAILenvironment variable - TOML config (DEB/RPM-only): Set the
license-emailoption in the/etc/influxdb3/influxdb3-enterprise.conffile for a DEB or RPM install
InfluxDB validates your email address with the license server and uses your existing license if it’s still valid.
Activate a commercial license
-
Contact InfluxData Sales to obtain an InfluxDB 3 Enterprise Commercial license. Provide the following:
- Cluster UUID
- Object Store Info
This information is provided in the output of the InfluxDB 3 Enterprise server if you try to start the server without a valid license.
InfluxData will provide you with a commercial license file. The license file is a JWT file that contains the license information.
-
When starting the InfluxDB 3 Enterprise server, provide the license file path using one of the following methods:
- CLI option: Use the
--license-fileoption with theinfluxdb3 servecommand - Environment variable: Set the
INFLUXDB3_ENTERPRISE_LICENSE_FILEenvironment variable. - TOML config (DEB/RPM-only): Set the
license-fileoption in the/etc/influxdb3/influxdb3-enterprise.conffile for a DEB or RPM install
- CLI option: Use the
License detection
InfluxDB 3 Enterprise checks for a license file in the following order:
-
The license file path provided with the
--license-filecommand line option orlicense-fileTOML option (DEB/RPM installs) -
The license file path provided with the
INFLUXDB3_ENTERPRISE_LICENSE_FILEenvironment variable -
The default license path:
/OBJECT_STORE/CLUSTER_ID/commercial_license -
A trial or at-home license stored in the default location
/OBJECT_STORE/CLUSTER_ID/trial_or_home_license -
The license email provided with the
--license-emailcommand line option orlicense-emailTOML option (DEB/RPM installs) -
The license email provided with the
INFLUXDB3_ENTERPRISE_LICENSE_EMAILenvironment variable -
If no license is found, the server won’t start
Start the server with your license email
influxdb3 serve \
--cluster-id cluster01 \
--node-id node01 \
--license-email example@email.com \
# ...INFLUXDB3_ENTERPRISE_LICENSE_EMAIL=example@email.com
influxdb3 serve \
--cluster-id cluster01 \
--node-id node01 \
# ...# compose.yaml
name: data-crunching-stack
services:
influxdb3-enterprise:
container_name: influxdb3-enterprise
image: influxdb:3-enterprise
ports:
- 8181:8181
# In the following command, replace INFLUXDB3_ENTERPRISE_LICENSE_EMAIL with your email address.
# Alternatively, pass the `INFLUXDB3_ENTERPRISE_LICENSE_EMAIL` environment variable or
# store the email address in a compose CLI .env file.
command:
- influxdb3
- serve
- --node-id=node0
- --cluster-id=cluster0
- --object-store=file
- --data-dir=/var/lib/influxdb3/data
- --plugin-dir=/var/lib/influxdb3/plugins
environment:
- INFLUXDB3_ENTERPRISE_LICENSE_EMAIL=${EMAIL_ADDRESS}
volumes:
- type: bind
# Path to store data on your host system
source: ~/.influxdb3/data
# Path to store data in the container
target: /var/lib/influxdb3/data
- type: bind
# Path to store plugins on your host system
source: ~/.influxdb3/plugins
# Path to store plugins in the container
target: /var/lib/influxdb3/pluginsReplace ${EMAIL_ADDRESS} with your email address
or a variable from your Compose .env file.
-
Edit
/etc/influxdb3/influxdb3-enterprise.confto add your license email:license-email="example@email.com" -
To start the server, run the following command:
# systemd (modern systems; see logs with 'journalctl --unit influxdb3-pr-preview') systemctl start influxdb3-enterprise # SysV init (legacy systems; logs to /var/lib/influxdb3/influxdb3-pr-preview.log) /etc/init.d/influxdb3-enterprise start
Start the server with your license file
influxdb3 serve \
--cluster-id cluster01 \
--node-id node01 \
--license-file /path/to/license-file.jwt \
# ...INFLUXDB3_ENTERPRISE_LICENSE_FILE=/path/to/license-file.jwt
influxdb3 serve \
--cluster-id cluster01 \
--node-id node01 \
# ...-
Edit
/etc/influxdb3/influxdb3-enterprise.confto add your license file path:license-file="/etc/influxdb3/license-file.jwt" -
Ensure the license file has strict permissions that allow the database to read the file:
chown root:influxdb3 /etc/influxdb3/influxdb3-enterprise.conf chmod 0640 /etc/influxdb3/influxdb3-enterprise.conf -
To start the server, run the following command:
# systemd (modern systems; see logs with 'journalctl --unit influxdb3-pr-preview') systemctl start influxdb3-enterprise # SysV init (legacy systems; logs to /var/lib/influxdb3/influxdb3-pr-preview.log) /etc/init.d/influxdb3-enterprise start
For more information about influxdb3 serve options, see the
CLI reference.
Change your license type
If you need to change your InfluxDB 3 Enterprise license type–for example, from Trial to At-Home, or from Trial to Commercial–follow these steps.
Identify your current license
Check your current license type and status:
influxdb3 show license --host http://localhost:8181Change from Trial or At-Home to a different Trial or At-Home license
To switch between Trial and At-Home licenses (or to reset a Trial license), you need to remove the existing license file so the server prompts you to select a new license type.
-
Stop the server.
-
Back up and remove the existing license file from your object store. The license file is stored in your object store at:
OBJECT_STORE/CLUSTER_ID/trial_or_home_licenseFor example, if using a local file system object store:
# Back up the license file mv /path/to/data/CLUSTER_ID/trial_or_home_license \ /path/to/data/CLUSTER_ID/trial_or_home_license.bak -
Restart the server with your license email:
influxdb3 serve \ --license-emailEMAIL\ # ... other optionsOr with Docker:
docker run -d \ -e INFLUXDB3_ENTERPRISE_LICENSE_EMAIL=EMAIL\ # ... other options influxdb:3-enterprise -
Select the new license type when prompted (or the server automatically activates the license associated with your email).
-
Verify your email by clicking the link in the verification email.
-
Verify the new license:
influxdb3 show license --host http://localhost:8181
Change to a Commercial license
To upgrade to a Commercial license from any other license type:
-
Contact InfluxData Sales to obtain a Commercial license file. Provide:
- Your cluster ID
- Your object store information
-
Stop the server.
-
Start the server with the commercial license file:
influxdb3 serve \ --license-file /path/to/commercial-license.jwt \ # ... other optionsOr set the environment variable:
exportINFLUXDB3_ENTERPRISE_LICENSE_FILE=/path/to/commercial-license.jwt influxdb3 serve # ... other optionsThe commercial license takes precedence over any existing trial or at-home license in your object store.
-
Verify the new license:
influxdb3 show license --host http://localhost:8181
Renew a license
To renew an InfluxDB 3 Enterprise Commercial license, contact InfluxData Sales.
Expiration behavior
When your InfluxDB 3 Enterprise license expires, the following occurs:
- Write requests continue to be accepted and processed.
- Compactions continue to optimize persisted data.
- Query requests return an error.
- If the InfluxDB 3 Enterprise server stops, it will not restart without a valid, non-expired license.
Was this page helpful?
Thank you for your feedback!
Support and feedback
Thank you for being part of our community! We welcome and encourage your feedback and bug reports for and this documentation. To find support, use the following resources:
- InfluxDB Community Slack (Preferred)
- InfluxDB Discord Server
- InfluxData Community
- InfluxDB Subreddit
Customers with an annual or support contract can contact InfluxData Support.