From 50397f2dc42a4ce72b9a5fdc9b0561e4e9aee399 Mon Sep 17 00:00:00 2001 From: Jamie Strandboge Date: Thu, 18 Dec 2025 15:24:40 -0600 Subject: [PATCH] chore: update install and license info for DEB/RPM (#6650) * fix: remove a couple of mis-merges and clarify DEB/RPM is non-Docker * chore: update install and license info for DEB/RPM * chore: incorporate formatting and style feedback from Jason * fix(influxdb3): Install: ToC and merge cleanup --------- Co-authored-by: Jason Stirnaman --- content/influxdb3/enterprise/admin/license.md | 59 +++++++++++- content/shared/influxdb3/install.md | 91 +++++++++++++++---- 2 files changed, 132 insertions(+), 18 deletions(-) diff --git a/content/influxdb3/enterprise/admin/license.md b/content/influxdb3/enterprise/admin/license.md index b1cd51f45..32ac499e0 100644 --- a/content/influxdb3/enterprise/admin/license.md +++ b/content/influxdb3/enterprise/admin/license.md @@ -84,7 +84,7 @@ but the process of activating the license depends on the license type: 1. Use the [`influxdb3 serve` command](/influxdb3/enterprise/reference/cli/influxdb3/serve/) 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 a trial or home license with Docker](#activate-a-trial-or-home-license-with-docker), include options to [skip the email prompt](#skip-the-email-prompt). + If you're [activating an InfluxDB trial or home license with Docker](#activate-a-trial-or-home-license-with-docker) or [with DEB/RPM installs](#activate-a-trial-or-home-license-with-linux-packaging), include options to [skip the email prompt](#skip-the-email-prompt). 2. The server prompts you to select a license type. Select `trial` or `home`. 3. In the verification email from {{% product-name %}}, click the button to verify your email address. @@ -103,6 +103,15 @@ The license file is a JWT file that contains the license information. > verify your email address. > See the [Docker Compose example](?t=Docker+compose#start-with-license-email-and-compose). +> [!Important] +> #### Activate a trial or home license with Linux packaging +> +> If you're starting a new {{% product-name %}} server that was installed via +> DEB or RPM, use one of the methods to [skip the email prompt](#skip-the-email-prompt)-- +> for example, using the [DEB and RPM TOML](?t=DEB+and+RPM+TOML#start-with-license-email-and-toml) +> configuration. This ensures that the server can generate the license file +> after you verify your email address. + #### Skip the email prompt To skip the email prompt when starting the server, you can provide your email @@ -110,6 +119,7 @@ address using one of the following methods: - Use the [`--license-email`](/influxdb3/enterprise/reference/config-options/#license-email) option with the `influxdb3 serve` command - Set the `INFLUXDB3_ENTERPRISE_LICENSE_EMAIL` environment variable +- Set the [`license-email`](/influxdb3/enterprise/reference/config-options/#license-email) option in the `/etc/influxdb3/influxdb3-enterprise.conf` file (DEB/RPM installs) If the server finds a valid license file in your object store, it ignores the license email option. @@ -187,6 +197,7 @@ existing license if it's still valid. [influxdb3 options](#) [Environment variables](#) [Docker compose](#start-with-license-email-and-compose) +[DEB and RPM TOML](#start-with-license-email-and-toml) {{% /code-tabs %}} {{% code-tab-content %}} @@ -255,6 +266,25 @@ Replace {{% code-placeholder-key %}}`${EMAIL_ADDRESS}`{{% /code-placeholder-key or a variable from your Compose `.env` file. {{% /code-tab-content %}} +{{% code-tab-content %}} + +1. Edit `/etc/influxdb3/influxdb3-enterprise.conf` to add your license email: + + ```toml + license-email="example@email.com" + ``` + +2. To start the server, run the following command: + + ```bash + # systemd (modern systems; see logs with 'journalctl --unit influxdb3-{{< product-key >}}') + systemctl start influxdb3-enterprise + + # SysV init (legacy systems; logs to /var/lib/influxdb3/influxdb3-{{< product-key >}}.log) + /etc/init.d/influxdb3-enterprise start + ``` + +{{% /code-tab-content %}} {{< /code-tabs-wrapper >}} ### Start the server with your license file @@ -263,6 +293,7 @@ or a variable from your Compose `.env` file. {{% code-tabs %}} [influxdb3 options](#) [Environment variables](#) +[DEB and RPM TOML](#start-with-license-file-and-toml) {{% /code-tabs %}} {{% code-tab-content %}} @@ -289,6 +320,32 @@ influxdb3 serve \ ``` {{% /code-tab-content %}} +{{% code-tab-content %}} + +1. Edit `/etc/influxdb3/influxdb3-enterprise.conf` to add your license file path: + + ```toml + license-file="/etc/influxdb3/license-file.jwt" + ``` + +2. Ensure the license file has strict permissions that allow the database to read the file: + + ```bash + chown root:influxdb3 /etc/influxdb3/influxdb3-enterprise.conf + chmod 0640 /etc/influxdb3/influxdb3-enterprise.conf + ``` + +3. To start the server, run the following command: + + ```bash + # systemd (modern systems; see logs with 'journalctl --unit influxdb3-{{< product-key >}}') + systemctl start influxdb3-enterprise + + # SysV init (legacy systems; logs to /var/lib/influxdb3/influxdb3-{{< product-key >}}.log) + /etc/init.d/influxdb3-enterprise start + ``` + +{{% /code-tab-content %}} {{< /code-tabs-wrapper >}} For more information about `influxdb3 serve` options, see the diff --git a/content/shared/influxdb3/install.md b/content/shared/influxdb3/install.md index 3c6bee264..bdb7b25b5 100644 --- a/content/shared/influxdb3/install.md +++ b/content/shared/influxdb3/install.md @@ -5,8 +5,9 @@ - [Download and install the latest build artifacts](#download-and-install-the-latest-build-artifacts) - [Pull the Docker image](#pull-the-docker-image) - [Linux DEB and RPM install](#linux-deb-and-rpm-install) + - [TOML configuration (Linux)](#toml-configuration-linux) + - [Run as a system service (Linux)](#run-as-a-system-service-linux) - [Verify the installation](#verify-the-installation) - - [Run as a system service (Linux)](#run-as-a-system-service-linux) {{% show-in "enterprise" %}} > [!Note] @@ -137,20 +138,19 @@ influxdb:3-{{< product-key >}} ### Linux DEB and RPM install -Best practice for production deployments is to either install {{< product-name >}} via DEBs/RPMs or [Docker](#pull-the-docker-image). When installing via DEB/RPM on a `systemd`-enabled system, {{< product-name >}} will run in a sandboxed environment as configured by its `systemd` unit file. The shipped unit file provides meaningful security for many use cases; see [security](/influxdb3/{{< product-key >}}/admin/security/) for more information on the sandbox environment and how to tune it your environment. When installed via DEB or RPM on a `systemd`-enabled system, {{< product-name >}} runs in a sandboxed environment. The included `systemd` unit file configures the environment to provide security isolation for typical deployments. For more information, see [Manage security](/influxdb3/version/admin/security/). > [!Note] -> DEB and RPM installation is **recommended for production deployments** due to built-in systemd sandboxing. +> DEB and RPM installation is **recommended for non-Docker production deployments** due to built-in systemd sandboxing. {{< expand-wrapper >}} {{% expand "DEB-based systems" %}} -Install from the InfluxData repository by running the following commands using `apt-get` to install {{< product-name >}} from the InfluxData repository: Use `apt-get` to install {{< product-name >}} from the InfluxData repository: -``` + ```bash +curl --silent --location -O https://repos.influxdata.com/influxdata-archive.key gpg --show-keys --with-fingerprint --with-colons ./influxdata-archive.key 2>&1 \ | grep -q '^fpr:\+24C975CBA61A024EE1B631787C3D57159FC2F927:$' \ && cat influxdata-archive.key \ @@ -163,9 +163,8 @@ sudo apt-get update && sudo apt-get install influxdb3-{{< product-key >}} {{% /expand %}} {{% expand "RPM-based systems" %}} -Install from the InfluxData repository by running the following commands using `yum` to install {{< product-name >}} from the InfluxData repository: Use `yum` to install {{< product-name >}} from the InfluxData repository: -``` + ```bash curl --silent --location -O https://repos.influxdata.com/influxdata-archive.key gpg --show-keys --with-fingerprint --with-colons ./influxdata-archive.key 2>&1 \ @@ -185,6 +184,74 @@ EOF {{% /expand %}} {{< /expand-wrapper >}} +#### TOML configuration (Linux) + +After you install the DEB or RPM package, the {{% product-name %}} TOML +configuration file is located at `/etc/influxdb3/influxdb3-{{< product-key >}}.conf` +and contains the following settings: + +- [object-store](/influxdb3/version/reference/config-options/#object-store): `file` +- [data-dir](/influxdb3/version/reference/config-options/#data-dir): `/var/lib/influxdb3/data` +- [plugin-dir](/influxdb3/version/reference/config-options/#plugin-dir): `/var/lib/influxdb3/plugins` +- [node-id](/influxdb3/version/reference/config-options/#node-id): `primary-node` +{{% show-in "enterprise" %}} +- [cluster-id](/influxdb3/version/reference/config-options/#cluster-id): `primary-cluster` +- [mode](/influxdb3/version/reference/config-options/#mode): `all` + +> [!Important] +> #### License required +> +> {{% product-name %}} requires an active license to start. +> See how to [Activate a license](/influxdb3/enterprise/admin/license/#activate-a-license). +{{% /show-in %}} + +#### Run as a system service (Linux) + +{{% product-name %}} DEB and RPM installs include service files for running as +a managed system service on Linux: + +- **systemd**: For modern Linux distributions +- **SysV init**: For legacy system compatibility + +##### Run using systemd + +On `systemd` systems, the `influxdb3-{{< product-key >}}` unit file is +`enabled` on install, but the unit is not started in order to allow +configuration. + +To start the database, enter the following commands: + +```bash +# Start the service +systemctl start influxdb3-{{< product-key >}} + +# View status +systemctl status influxdb3-{{< product-key >}} + +# View logs +journalctl --unit influxdb3-{{< product-key >}} +``` + +##### Run using SysV + +On SysV init systems, `influxdb3-{{< product-key >}}` is disabled on install +and can be enabled by adjusting `/etc/default/influxdb3-{{< product-key >}}` to +contain `ENABLED=yes`. + +To start the database, enter the following commands: + +```bash +# Start the database +/etc/init.d/influxdb3-{{< product-key >}} start + +# View status +/etc/init.d/influxdb3-{{< product-key >}} status + +# View logs +tail -f /var/lib/influxdb3/influxdb3-{{< product-key >}}.log +``` + + ### Verify the installation After installing {{% product-name %}}, enter the following command to verify @@ -201,16 +268,6 @@ If your system doesn't locate `influxdb3`, then `source` the configuration file source ~/.zshrc ``` -### Run as a system service (Linux) - -{{% product-name %}} includes service files for running as a managed system service on Linux: - -- **systemd**: For modern Linux distributions -- **SysV init**: For legacy system compatibility - -Service files are included in the Linux binary downloads. -For more information, see the [release notes for v3.8.0](/influxdb3/corerelease-notes/#v380). - {{% show-in "enterprise" %}} > [!Note] > For information about setting up a multi-node {{% product-name %}} cluster,