From 43663d083625c0034134d5f3fdc36e94d5ad4750 Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Fri, 2 May 2025 12:45:57 -0500 Subject: [PATCH 1/6] fix(ent3): License options: clarify license email and license file are mutally exclusive (Closes #6039): - Add examples using license email or license file - Add license file entry in config-options and note they're mutually exclusive. --- content/influxdb3/enterprise/admin/license.md | 71 +++++++++++--- .../enterprise/reference/config-options.md | 98 +++++++++++-------- 2 files changed, 115 insertions(+), 54 deletions(-) diff --git a/content/influxdb3/enterprise/admin/license.md b/content/influxdb3/enterprise/admin/license.md index bb19662f1..4a9b14bc8 100644 --- a/content/influxdb3/enterprise/admin/license.md +++ b/content/influxdb3/enterprise/admin/license.md @@ -13,14 +13,25 @@ weight: 101 {{< product-name >}} licenses authorize the use of the {{< product-name >}} 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. The following {{< product-name >}} license types are available: +the license type. + +- [License feature comparison](#license-feature-comparison) +- [CPU limit](#cpu-limit) + - [CPU accounting](#cpu-accounting) +- [Activate a license](#activate-a-license) + - [Activate a Trial or At-Home license](#activate-a-trial-or-at-home-license) + - [Activate a Commercial license](#activate-a-commercial-license) +- [Renew a license](#renew-a-license) +- [Expiration behavior](#expiration-behavior) + +## License feature comparison + +The following {{< product-name >}} license types are available: - **Trial**: 30-day trial license with full access to {{< product-name >}} capabilities. - **At-Home**: For at-home hobbyist use with limited access to {{< product-name >}} capabilities. - **Commercial**: Commercial license with full access to {{< product-name >}} capabilities. -#### License feature comparison - | Features | Trial | At-Home | Commercial | | :------------- | :-----------------------: | :-----: | :-----------------------: | | CPU Core Limit | 256 | 2 | _Per contract_ | @@ -86,18 +97,20 @@ email address. The server auto-generates and stores your license. InfluxData will provide you with a Commercial license file. -2. Provide the following when starting the {{< product-name >}} server: +2. Provide ONE of the following authentication methods when starting the {{< product-name >}} server: - **License email**: The email address associated with your Commercial license. Use either the `--license-email` option or set the `INFLUXDB3_ENTERPRISE_LICENSE_EMAIL` environment variable. - - **License file**: The file path of the provided Commercial license file. + - **License file**: The file path of the Commercial license file you received in the previous step. Use either the `--license-file` option or set the `INFLUXDB3_ENTERPRISE_LICENSE_FILE` environment variable. +#### Example: Start the {{< product-name >}} server with your license email: + {{< code-tabs-wrapper >}} {{% code-tabs %}} [influxdb3 options](#) @@ -108,11 +121,10 @@ email address. The server auto-generates and stores your license. ```bash influxdb3 serve \ - --cluster-id cluster01 \ - --node-id node01 \ - --license-email example@email.com \ - --license-file /path/to/license-file.jwt \ - # ... +--cluster-id cluster01 \ +--node-id node01 \ +--license-email example@email.com \ +# ... ``` {{% /code-tab-content %}} @@ -121,12 +133,45 @@ influxdb3 serve \ ```bash INFLUXDB3_ENTERPRISE_LICENSE_EMAIL=example@email.com + +influxdb3 serve \ +--cluster-id cluster01 \ +--node-id node01 \ +# ... +``` + +{{% /code-tab-content %}} +{{< /code-tabs-wrapper >}} + +#### Example: Start the {{< product-name >}} server with your license file: + +{{< code-tabs-wrapper >}} +{{% code-tabs %}} +[influxdb3 options](#) +[Environment variables](#) +{{% /code-tabs %}} +{{% code-tab-content %}} + + +```bash +influxdb3 serve \ +--cluster-id cluster01 \ +--node-id node01 \ +--license-file /path/to/license-file.jwt \ +# ... +``` + +{{% /code-tab-content %}} +{{% code-tab-content %}} + + +```bash INFLUXDB3_ENTERPRISE_LICENSE_FILE=/path/to/license-file.jwt influxdb3 serve \ - --cluster-id cluster01 \ - --node-id node01 \ - # ... +--cluster-id cluster01 \ +--node-id node01 \ +# ... ``` {{% /code-tab-content %}} diff --git a/content/influxdb3/enterprise/reference/config-options.md b/content/influxdb3/enterprise/reference/config-options.md index 2e26e7914..eaf9df003 100644 --- a/content/influxdb3/enterprise/reference/config-options.md +++ b/content/influxdb3/enterprise/reference/config-options.md @@ -25,6 +25,7 @@ environment variables. ```sh influxdb3 serve \ + --license-email example@email.com \ --object-store file \ --data-dir ~/.influxdb3 \ --node-id NODE_ID \ @@ -39,6 +40,7 @@ influxdb3 serve \ ```sh +export INFLUXDB3_ENTERPRISE_LICENSE_EMAIL=example@email.com export INFLUXDB3_OBJECT_STORE=file export INFLUXDB3_DB_DIR=~/.influxdb3 export INFLUXDB3_WRITER_IDENTIFIER_PREFIX=my-host @@ -52,12 +54,13 @@ influxdb3 serve ## Server configuration options - [General](#general) - - [object-store](#object-store) - - [data-dir](#data-dir) - - [node-id](#node-id) - [cluster-id](#cluster-id) - - [mode](#mode) + - [data-dir](#data-dir) - [license-email](#license-email) + - [license-file](#license-file) + - [mode](#mode) + - [node-id](#node-id) + - [object-store](#object-store) - [query-file-limit](#query-file-limit) - [AWS](#aws) - [aws-access-key-id](#aws-access-key-id) @@ -145,30 +148,23 @@ influxdb3 serve ### General -- [object-store](#object-store) -- [bucket](#bucket) -- [data-dir](#data-dir) -- [node-id](#node-id) - [cluster-id](#cluster-id) -- [mode](#mode) +- [data-dir](#data-dir) - [license-email](#license-email) +- [license-file](#license-file) +- [mode](#mode) +- [node-id](#node-id) +- [object-store](#object-store) - [query-file-limit](#query-file-limit) -#### object-store +#### cluster-id -Specifies which object storage to use to store Parquet files. -This option supports the following values: +Specifies the cluster identifier that prefixes the object store path for the Enterprise Catalog. +This value must be different than the [`--node-id`](#node-id) value. -- `memory` _(default)_: Effectively no object persistence -- `memory-throttled`: Like `memory` but with latency and throughput that somewhat resembles a cloud object store -- `file`: Stores objects in the local filesystem (must also set `--data-dir`) -- `s3`: Amazon S3 (must also set `--bucket`, `--aws-access-key-id`, `--aws-secret-access-key`, and possibly `--aws-default-region`) -- `google`: Google Cloud Storage (must also set `--bucket` and `--google-service-account`) -- `azure`: Microsoft Azure blob storage (must also set `--bucket`, `--azure-storage-account`, and `--azure-storage-access-key`) - -| influxdb3 serve option | Environment variable | -| :--------------------- | :----------------------- | -| `--object-store` | `INFLUXDB3_OBJECT_STORE` | +| influxdb3 serve option | Environment variable | +| :--------------------- | :--------------------------------- | +| `--cluster-id` | `INFLUXDB3_ENTERPRISE_my-cluster-01` | --- @@ -182,26 +178,27 @@ Defines the location {{< product-name >}} uses to store files locally. --- -#### node-id +#### license-email -Specifies the node identifier used as a prefix in all object store file paths. -This should be unique for any hosts sharing the same object store -configuration--for example, the same bucket. +Specifies the email address to associate with your {{< product-name >}} license +and automatically responds to the interactive email prompt when the server starts. +This option is mutually exclusive with [license-file](#license-file). -| influxdb3 serve option | Environment variable | -| :--------------------- | :--------------------------------- | -| `--node-id` | `INFLUXDB3_NODE_IDENTIFIER_PREFIX` | +| influxdb3 serve option | Environment variable | +| :--------------------- | :----------------------------------- | +| `--license-email` | `INFLUXDB3_ENTERPRISE_LICENSE_EMAIL` | --- -#### cluster-id +#### license-file -Specifies the cluster identifier that prefixes the object store path for the Enterprise Catalog. -This value must be different than the [`--node-id`](#node-id) value. +Specifies the path to a license file for {{< product-name >}}. When provided, the license +file's contents are used instead of requesting a new license. +This option is mutually exclusive with [license-email](#license-email). -| influxdb3 serve option | Environment variable | -| :--------------------- | :--------------------------------- | -| `--cluster-id` | `INFLUXDB3_ENTERPRISE_my-cluster-01` | +| influxdb3 serve option | Environment variable | +| :--------------------- | :----------------------------------- | +| `--license-file` | `INFLUXDB3_ENTERPRISE_LICENSE_FILE` | --- @@ -227,14 +224,33 @@ You can specify multiple modes using a comma-delimited list (for example, `inges --- -#### license-email +#### node-id -Specifies the email address to associate with your {{< product-name >}} license -and automatically responds to the interactive email prompt when the server starts. +Specifies the node identifier used as a prefix in all object store file paths. +This should be unique for any hosts sharing the same object store +configuration--for example, the same bucket. -| influxdb3 serve option | Environment variable | -| :--------------------- | :----------------------------------- | -| `--license-email` | `INFLUXDB3_ENTERPRISE_LICENSE_EMAIL` | +| influxdb3 serve option | Environment variable | +| :--------------------- | :--------------------------------- | +| `--node-id` | `INFLUXDB3_NODE_IDENTIFIER_PREFIX` | + +--- + +#### object-store + +Specifies which object storage to use to store Parquet files. +This option supports the following values: + +- `memory` _(default)_: Effectively no object persistence +- `memory-throttled`: Like `memory` but with latency and throughput that somewhat resembles a cloud object store +- `file`: Stores objects in the local filesystem (must also set `--data-dir`) +- `s3`: Amazon S3 (must also set `--bucket`, `--aws-access-key-id`, `--aws-secret-access-key`, and possibly `--aws-default-region`) +- `google`: Google Cloud Storage (must also set `--bucket` and `--google-service-account`) +- `azure`: Microsoft Azure blob storage (must also set `--bucket`, `--azure-storage-account`, and `--azure-storage-access-key`) + +| influxdb3 serve option | Environment variable | +| :--------------------- | :----------------------- | +| `--object-store` | `INFLUXDB3_OBJECT_STORE` | --- From f0864152a5e73dcd7b58df448fa31f46db805f84 Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Fri, 2 May 2025 13:10:25 -0500 Subject: [PATCH 2/6] chore(influxdb3): Specify when data-dir is required, emphasize in license.md that license email and license file are mutually exclusive --- content/influxdb3/core/reference/config-options.md | 3 ++- content/influxdb3/enterprise/admin/license.md | 4 ++++ content/influxdb3/enterprise/reference/config-options.md | 3 ++- 3 files changed, 8 insertions(+), 2 deletions(-) diff --git a/content/influxdb3/core/reference/config-options.md b/content/influxdb3/core/reference/config-options.md index 371d30377..7dfee8828 100644 --- a/content/influxdb3/core/reference/config-options.md +++ b/content/influxdb3/core/reference/config-options.md @@ -159,7 +159,8 @@ This option supports the following values: #### data-dir -Defines the location {{< product-name >}} uses to store files locally. +For the `file` object store, defines the location {{< product-name >}} uses to store files locally. +Required when using the `file` [object store](#object-store). | influxdb3 serve option | Environment variable | | :--------------------- | :------------------- | diff --git a/content/influxdb3/enterprise/admin/license.md b/content/influxdb3/enterprise/admin/license.md index 4a9b14bc8..f6641a98a 100644 --- a/content/influxdb3/enterprise/admin/license.md +++ b/content/influxdb3/enterprise/admin/license.md @@ -109,6 +109,10 @@ email address. The server auto-generates and stores your license. Use either the `--license-file` option or set the `INFLUXDB3_ENTERPRISE_LICENSE_FILE` environment variable. +> [!Note] +> License file and license email are mutually exclusive. +> When starting the server, only use one or the other. + #### Example: Start the {{< product-name >}} server with your license email: {{< code-tabs-wrapper >}} diff --git a/content/influxdb3/enterprise/reference/config-options.md b/content/influxdb3/enterprise/reference/config-options.md index eaf9df003..833848ae6 100644 --- a/content/influxdb3/enterprise/reference/config-options.md +++ b/content/influxdb3/enterprise/reference/config-options.md @@ -170,7 +170,8 @@ This value must be different than the [`--node-id`](#node-id) value. #### data-dir -Defines the location {{< product-name >}} uses to store files locally. +For the `file` object store, defines the location {{< product-name >}} uses to store files locally. +Required when using the `file` [object store](#object-store). | influxdb3 serve option | Environment variable | | :--------------------- | :------------------- | From 91d4a9b525a438e22a63b5082144ef598e6b1939 Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Fri, 2 May 2025 17:55:35 -0500 Subject: [PATCH 3/6] chore(ent3): Add license file option to serve command list and sort the options --- .../reference/cli/influxdb3/serve.md | 113 +++++++++--------- 1 file changed, 57 insertions(+), 56 deletions(-) diff --git a/content/influxdb3/enterprise/reference/cli/influxdb3/serve.md b/content/influxdb3/enterprise/reference/cli/influxdb3/serve.md index 41ea66ecc..2b0e70db2 100644 --- a/content/influxdb3/enterprise/reference/cli/influxdb3/serve.md +++ b/content/influxdb3/enterprise/reference/cli/influxdb3/serve.md @@ -37,44 +37,25 @@ influxdb3 serve [OPTIONS] \ | Option | | Description | | :--------------- | :--------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------ | -| {{< req "\*" >}} | `--node-id` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#node-id)_ | -| {{< req "\*" >}} | `--cluster-id` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#cluster-id)_ | -| | `--mode` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#mode)_ | -| | `--object-store` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#object-store)_ | -| | `--bucket` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#bucket)_ | -| | `--data-dir` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#data-dir)_ | | | `--aws-access-key-id` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#aws-access-key-id)_ | -| | `--aws-secret-access-key` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#aws-secret-access-key)_ | +| | `--aws-allow-http` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#aws-allow-http)_ | | | `--aws-default-region` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#aws-default-region)_ | | | `--aws-endpoint` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#aws-endpoint)_ | +| | `--aws-secret-access-key` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#aws-secret-access-key)_ | | | `--aws-session-token` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#aws-session-token)_ | -| | `--aws-allow-http` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#aws-allow-http)_ | | | `--aws-skip-signature` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#aws-skip-signature)_ | -| | `--google-service-account` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#google-service-account)_ | -| | `--azure-storage-account` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#azure-storage-account)_ | | | `--azure-storage-access-key` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#azure-storage-access-key)_ | -| | `--object-store-connection-limit` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#object-store-connection-limit)_ | -| | `--object-store-http2-only` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#object-store-http2-only)_ | -| | `--object-store-http2-max-frame-size` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#object-store-http2-max-frame-size)_ | -| | `--object-store-max-retries` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#object-store-max-retries)_ | -| | `--object-store-retry-timeout` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#object-store-retry-timeout)_ | -| `-h` | `--help` | Print help information | -| | `--help-all` | Print detailed help information | -| | `--object-store-cache-endpoint` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#object-store-cache-endpoint)_ | -| | `--log-filter` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#log-filter)_ | -| `-v` | `--verbose` | Enable verbose output | -| | `--log-destination` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#log-destination)_ | -| | `--log-format` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#log-format)_ | -| | `--traces-exporter` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#traces-exporter)_ | -| | `--traces-exporter-jaeger-agent-host` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#traces-exporter-jaeger-agent-host)_ | -| | `--traces-exporter-jaeger-agent-port` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#traces-exporter-jaeger-agent-port)_ | -| | `--traces-exporter-jaeger-service-name` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#traces-exporter-jaeger-service-name)_ | -| | `--traces-exporter-jaeger-trace-context-header-name` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#traces-exporter-jaeger-trace-context-header-name)_ | -| | `--traces-jaeger-debug-name` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#traces-jaeger-debug-name)_ | -| | `--traces-jaeger-tags` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#traces-jaeger-tags)_ | -| | `--traces-jaeger-max-msgs-per-second` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#traces-jaeger-max-msgs-per-second)_ | +| | `--azure-storage-account` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#azure-storage-account)_ | +| | `--bucket` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#bucket)_ | +| {{< req "\*" >}} | `--cluster-id` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#cluster-id)_ | +| | `--compaction-gen2-duration` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#compaction-gen2-duration)_ | +| | `--compaction-max-num-files-per-plan` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#compaction-max-num-files-per-plan)_ | +| | `--compaction-multipliers` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#compaction-multipliers)_ | +| | `--compaction-row-limit` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#compaction-row-limit)_ | +| | `--data-dir` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#data-dir)_ | +| | `--datafusion-config` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#datafusion-config)_ | +| | `--datafusion-max-parquet-fanout` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#datafusion-max-parquet-fanout)_ | | | `--datafusion-num-threads` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#datafusion-num-threads)_ | -| | `--datafusion-runtime-type` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#datafusion-runtime-type)_ | | | `--datafusion-runtime-disable-lifo-slot` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#datafusion-runtime-disable-lifo-slot)_ | | | `--datafusion-runtime-event-interval` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#datafusion-runtime-event-interval)_ | | | `--datafusion-runtime-global-queue-interval` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#datafusion-runtime-global-queue-interval)_ | @@ -82,37 +63,57 @@ influxdb3 serve [OPTIONS] \ | | `--datafusion-runtime-max-io-events-per-tick` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#datafusion-runtime-max-io-events-per-tick)_ | | | `--datafusion-runtime-thread-keep-alive` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#datafusion-runtime-thread-keep-alive)_ | | | `--datafusion-runtime-thread-priority` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#datafusion-runtime-thread-priority)_ | -| | `--datafusion-max-parquet-fanout` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#datafusion-max-parquet-fanout)_ | +| | `--datafusion-runtime-type` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#datafusion-runtime-type)_ | | | `--datafusion-use-cached-parquet-loader` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#datafusion-use-cached-parquet-loader)_ | -| | `--datafusion-config` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#datafusion-config)_ | -| | `--max-http-request-size` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#max-http-request-size)_ | -| | `--http-bind` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#http-bind)_ | +| | `--disable-parquet-mem-cache` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#disable-parquet-mem-cache)_ | +| | `--distinct-cache-eviction-interval` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#distinct-cache-eviction-interval)_ | | | `--exec-mem-pool-bytes` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#exec-mem-pool-bytes)_ | +| | `--force-snapshot-mem-threshold` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#force-snapshot-mem-threshold)_ | | | `--gen1-duration` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#gen1-duration)_ | -| | `--wal-flush-interval` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#wal-flush-interval)_ | -| | `--wal-snapshot-size` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#wal-snapshot-size)_ | -| | `--wal-max-write-buffer-size` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#wal-max-write-buffer-size)_ | -| | `--snapshotted-wal-files-to-keep` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#snapshotted-wal-files-to-keep)_ | +| | `--google-service-account` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#google-service-account)_ | +| `-h` | `--help` | Print help information | +| | `--help-all` | Print detailed help information | +| | `--http-bind` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#http-bind)_ | +| | `--last-cache-eviction-interval` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#last-cache-eviction-interval)_ | +| | `--license-email` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#license-email)_ | +| | `--license-file` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#license-file)_ | +| | `--log-destination` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#log-destination)_ | +| | `--log-filter` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#log-filter)_ | +| | `--log-format` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#log-format)_ | +| | `--max-http-request-size` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#max-http-request-size)_ | +| | `--mode` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#mode)_ | +| {{< req "\*" >}} | `--node-id` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#node-id)_ | +| | `--object-store` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#object-store)_ | +| | `--object-store-cache-endpoint` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#object-store-cache-endpoint)_ | +| | `--object-store-connection-limit` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#object-store-connection-limit)_ | +| | `--object-store-http2-max-frame-size` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#object-store-http2-max-frame-size)_ | +| | `--object-store-http2-only` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#object-store-http2-only)_ | +| | `--object-store-max-retries` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#object-store-max-retries)_ | +| | `--object-store-retry-timeout` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#object-store-retry-timeout)_ | +| | `--package-manager` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#package-manager)_ | +| | `--parquet-mem-cache-prune-interval` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#parquet-mem-cache-prune-interval)_ | +| | `--parquet-mem-cache-prune-percentage` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#parquet-mem-cache-prune-percentage)_ | +| | `--parquet-mem-cache-query-path-duration` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#parquet-mem-cache-query-path-duration)_ | +| | `--parquet-mem-cache-size` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#parquet-mem-cache-size)_ | +| | `--plugin-dir` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#plugin-dir)_ | +| | `--preemptive-cache-age` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#preemptive-cache-age)_ | +| | `--query-file-limit` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#query-file-limit)_ | | | `--query-log-size` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#query-log-size)_ | | | `--replication-interval` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#replication-interval)_ | -| | `--compaction-row-limit` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#compaction-row-limit)_ | -| | `--compaction-max-num-files-per-plan` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#compaction-max-num-files-per-plan)_ | -| | `--compaction-gen2-duration` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#compaction-gen2-duration)_ | -| | `--compaction-multipliers` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#compaction-multipliers)_ | -| | `--license-email` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#license-email)_ | -| | `--preemptive-cache-age` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#preemptive-cache-age)_ | -| | `--parquet-mem-cache-size` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#parquet-mem-cache-size)_ | -| | `--parquet-mem-cache-prune-percentage` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#parquet-mem-cache-prune-percentage)_ | -| | `--parquet-mem-cache-prune-interval` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#parquet-mem-cache-prune-interval)_ | -| | `--disable-parquet-mem-cache` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#disable-parquet-mem-cache)_ | -| | `--parquet-mem-cache-query-path-duration` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#parquet-mem-cache-query-path-duration)_ | -| | `--last-cache-eviction-interval` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#last-cache-eviction-interval)_ | -| | `--distinct-cache-eviction-interval` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#distinct-cache-eviction-interval)_ | -| | `--plugin-dir` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#plugin-dir)_ | -| | `--force-snapshot-mem-threshold` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#force-snapshot-mem-threshold)_ | +| | `--snapshotted-wal-files-to-keep` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#snapshotted-wal-files-to-keep)_ | +| | `--traces-exporter` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#traces-exporter)_ | +| | `--traces-exporter-jaeger-agent-host` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#traces-exporter-jaeger-agent-host)_ | +| | `--traces-exporter-jaeger-agent-port` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#traces-exporter-jaeger-agent-port)_ | +| | `--traces-exporter-jaeger-service-name` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#traces-exporter-jaeger-service-name)_ | +| | `--traces-exporter-jaeger-trace-context-header-name` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#traces-exporter-jaeger-trace-context-header-name)_ | +| | `--traces-jaeger-debug-name` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#traces-jaeger-debug-name)_ | +| | `--traces-jaeger-max-msgs-per-second` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#traces-jaeger-max-msgs-per-second)_ | +| | `--traces-jaeger-tags` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#traces-jaeger-tags)_ | +| `-v` | `--verbose` | Enable verbose output | | | `--virtual-env-location` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#virtual-env-location)_ | -| | `--package-manager` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#package-manager)_ | -| | `--query-file-limit` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#query-file-limit)_ | +| | `--wal-flush-interval` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#wal-flush-interval)_ | +| | `--wal-max-write-buffer-size` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#wal-max-write-buffer-size)_ | +| | `--wal-snapshot-size` | _See [configuration options](/influxdb3/enterprise/reference/config-options/#wal-snapshot-size)_ | {{< caption >}} {{< req text="\* Required options" >}} From 404305d22e1667d1667f05f506e2a29524272397 Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Fri, 2 May 2025 17:56:35 -0500 Subject: [PATCH 4/6] chore(ent3): Add related and more info links to serve CLI command reference --- content/influxdb3/enterprise/admin/license.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/content/influxdb3/enterprise/admin/license.md b/content/influxdb3/enterprise/admin/license.md index f6641a98a..3383e19de 100644 --- a/content/influxdb3/enterprise/admin/license.md +++ b/content/influxdb3/enterprise/admin/license.md @@ -8,6 +8,8 @@ menu: name: Manage your license parent: Administer InfluxDB weight: 101 +related: + - /influxdb3/enterprise/reference/cli/influxdb3/serve/ --- {{< product-name >}} licenses authorize the use of the {{< product-name >}} @@ -181,6 +183,9 @@ influxdb3 serve \ {{% /code-tab-content %}} {{< /code-tabs-wrapper >}} +For more information about `influxdb3 serve` options, see the +[CLI reference](/influxdb3/enterprise/reference/cli/influxdb3/serve/). + ## Renew a license To renew an {{< product-name >}} Commercial license, contact From 32e4a87d133d1d1937dd9ad5b77d85f1451e6f46 Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Mon, 5 May 2025 13:00:13 -0500 Subject: [PATCH 5/6] fix(v3): Enterprise: license-email is primarily for trial and at-home, license-file is primarily for commercial (for now), add license detection sequence, remove caps --- content/influxdb3/enterprise/admin/license.md | 72 ++++++++++++++----- 1 file changed, 54 insertions(+), 18 deletions(-) diff --git a/content/influxdb3/enterprise/admin/license.md b/content/influxdb3/enterprise/admin/license.md index 3383e19de..6437ff422 100644 --- a/content/influxdb3/enterprise/admin/license.md +++ b/content/influxdb3/enterprise/admin/license.md @@ -76,14 +76,36 @@ physical and virtual CPU cores. Each {{< product-name >}} license must be activated, but the process of activating the license depends on the license type: -- [Activate a Trial or At-Home license](#activate-a-trial-or-at-home-license) -- [Activate a Commercial license](#activate-a-commercial-license) +- [Activate a trial or at-home license](#activate-a-trial-or-at-home-license) +- [Activate a commercial license](#activate-a-commercial-license) -### Activate a Trial or At-Home license +### Activate a trial or at-home license -When starting the {{< product-name >}} server, it will ask you what type of -license you would like to use. Select `trial` or `home` and provide your -email address. The server auto-generates and stores your license. +When starting the {{< product-name >}} server, it asks what type of +license you would like to use. +Select `trial` or `home` and provide your +email address. +The server auto-generates and stores your license. + +#### 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: + +- Use the [`--license-email`](/influxdb3/enterprise/reference/cli/influxdb3/serve/) option with the `influxdb3 serve` command +- Set the `INFLUXDB3_ENTERPRISE_LICENSE_EMAIL` environment variable + +InfluxDB validates your email address with the license server and uses your +existing license if it's still valid. + + ### Activate a Commercial license @@ -98,22 +120,36 @@ email address. The server auto-generates and stores your license. > 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. -2. Provide ONE of the following authentication methods when starting the {{< product-name >}} server: +2. When starting the {{< product-name >}} server, provide the license file + path using one of the following methods: + + - Use the the [`--license-file`](/influxdb3/enterprise/reference/config-options/#license-file) + option with the `influxdb3 serve` command + - Set the `INFLUXDB3_ENTERPRISE_LICENSE_FILE` environment variable. - - **License email**: The email address associated with your Commercial license. - - Use either the `--license-email` option or set the - `INFLUXDB3_ENTERPRISE_LICENSE_EMAIL` environment variable. +### License detection - - **License file**: The file path of the Commercial license file you received in the previous step. - - Use either the `--license-file` option or set the - `INFLUXDB3_ENTERPRISE_LICENSE_FILE` environment variable. +{{% product-name %}} checks for a license file in the following order: -> [!Note] -> License file and license email are mutually exclusive. -> When starting the server, only use one or the other. +1. The license file path provided with the [`--license-file`](/influxdb3/enterprise/reference/config-options/#license-file) option +2. The license file path provided with the `INFLUXDB3_ENTERPRISE_LICENSE_FILE` + environment variable +3. The default license path: + + ``` + ///commercial_license + ``` +4. A trial or at-home license stored in the default location + + ``` + ///trial_or_home_license + ``` +5. The license email provided with the [`--license-email`](/influxdb3/enterprise/reference/config-options/#license-email) option +6. The license email provided with the `INFLUXDB3_ENTERPRISE_LICENSE_EMAIL` + environment variable +7. If no license is found, the server won't start #### Example: Start the {{< product-name >}} server with your license email: From 6b16a8a13b353c8211b3555d050fc16bb6335566 Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Mon, 5 May 2025 13:45:48 -0500 Subject: [PATCH 6/6] Apply suggestions from code review --- content/influxdb3/enterprise/admin/license.md | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/content/influxdb3/enterprise/admin/license.md b/content/influxdb3/enterprise/admin/license.md index 6437ff422..38f6ac503 100644 --- a/content/influxdb3/enterprise/admin/license.md +++ b/content/influxdb3/enterprise/admin/license.md @@ -21,8 +21,8 @@ the license type. - [CPU limit](#cpu-limit) - [CPU accounting](#cpu-accounting) - [Activate a license](#activate-a-license) - - [Activate a Trial or At-Home license](#activate-a-trial-or-at-home-license) - - [Activate a Commercial license](#activate-a-commercial-license) + - [Activate a trial or at-home license](#activate-a-trial-or-at-home-license) + - [Activate a commercial license](#activate-a-commercial-license) - [Renew a license](#renew-a-license) - [Expiration behavior](#expiration-behavior) @@ -87,6 +87,8 @@ Select `trial` or `home` and provide your email address. The server auto-generates and stores your license. +The license file is a JWT file that contains the license information. + #### Use an existing trial or at-home license When you activate a trial or at-home license, InfluxDB registers your email @@ -107,7 +109,7 @@ existing license if it's still valid. > When starting the server, only use one or the other. --> -### Activate a Commercial license +### Activate a commercial license 1. [Contact InfluxData Sales](https://influxdata.com/contact-sales/) to obtain an {{< product-name >}} Commercial license. Provide the following: @@ -119,7 +121,7 @@ existing license if it's still valid. > This information is provided in the output of the {{< product-name >}} > server if you try to start the server without a valid license. - InfluxData will provide you with a Commercial license file. + InfluxData will provide you with a commercial license file. The license file is a JWT file that contains the license information. 2. When starting the {{< product-name >}} server, provide the license file