277 lines
9.4 KiB
Markdown
277 lines
9.4 KiB
Markdown
---
|
|
title: Configure InfluxDB Enterprise meta modes
|
|
description: Covers the InfluxDB Enterprise meta node configuration settings and environmental variables
|
|
menu:
|
|
enterprise_influxdb_1_7:
|
|
name: Configure meta nodes
|
|
weight: 30
|
|
parent: Administration
|
|
---
|
|
|
|
* [Meta node configuration settings](#meta-node-configuration-settings)
|
|
* [Global options](#global-options)
|
|
* [Enterprise license `[enterprise]`](#enterprise)
|
|
* [Meta node `[meta]`](#meta)
|
|
|
|
## Meta node configuration settings
|
|
|
|
### Global options
|
|
|
|
#### `reporting-disabled = false`
|
|
|
|
InfluxData, the company, relies on reported data from running nodes primarily to
|
|
track the adoption rates of different InfluxDB versions.
|
|
These data help InfluxData support the continuing development of InfluxDB.
|
|
|
|
The `reporting-disabled` option toggles the reporting of data every 24 hours to
|
|
`usage.influxdata.com`.
|
|
Each report includes a randomly-generated identifier, OS, architecture,
|
|
InfluxDB version, and the number of databases, measurements, and unique series.
|
|
To disable reporting, set this option to `true`.
|
|
|
|
> **Note:** No data from user databases are ever transmitted.
|
|
|
|
#### `bind-address = ""`
|
|
|
|
This setting is not intended for use.
|
|
It will be removed in future versions.
|
|
|
|
#### `hostname = ""`
|
|
|
|
The hostname of the [meta node](/enterprise_influxdb/v1.7/concepts/glossary/#meta-node).
|
|
This must be resolvable and reachable by all other members of the cluster.
|
|
|
|
Environment variable: `INFLUXDB_HOSTNAME`
|
|
|
|
-----
|
|
|
|
### Enterprise license settings
|
|
|
|
#### `[enterprise]`
|
|
|
|
The `[enterprise]` section contains the parameters for the meta node's
|
|
registration with the [InfluxDB Enterprise License Portal](https://portal.influxdata.com/).
|
|
|
|
|
|
|
|
#### `license-key = ""`
|
|
|
|
The license key created for you on [InfluxPortal](https://portal.influxdata.com).
|
|
The meta node transmits the license key to
|
|
[portal.influxdata.com](https://portal.influxdata.com) over port 80 or port 443
|
|
and receives a temporary JSON license file in return.
|
|
The server caches the license file locally.
|
|
You must use the [`license-path` setting](#license-path) if your server cannot
|
|
communicate with [https://portal.influxdata.com](https://portal.influxdata.com).
|
|
|
|
Use the same key for all nodes in the same cluster.
|
|
{{% warn %}}The `license-key` and `license-path` settings are mutually exclusive and one must remain set to the empty string.
|
|
{{% /warn %}}
|
|
|
|
InfluxData recommends performing rolling restarts on the nodes after the license key update.
|
|
Restart one meta node or data node service at a time and wait for it to come back up successfully.
|
|
The cluster should remain unaffected as long as only one node is restarting at a
|
|
time as long as there are two or more data nodes.
|
|
|
|
Environment variable: `INFLUXDB_ENTERPRISE_LICENSE_KEY`
|
|
|
|
#### `license-path = ""`
|
|
|
|
The local path to the permanent JSON license file that you received from InfluxData
|
|
for instances that do not have access to the Internet.
|
|
To obtain a license file, contact [sales@influxdb.com](mailto:sales@influxdb.com).
|
|
|
|
The license file must be saved on every server in the cluster, including meta nodes
|
|
and data nodes.
|
|
The file contains the JSON-formatted license, and must be readable by the `influxdb` user.
|
|
Each server in the cluster independently verifies its license.
|
|
|
|
{{% warn %}}
|
|
The `license-key` and `license-path` settings are mutually exclusive and one must remain set to the empty string.
|
|
{{% /warn %}}
|
|
|
|
InfluxData recommends performing rolling restarts on the nodes after the
|
|
license file update.
|
|
Restart one meta node or data node service at a time and wait for it to come back
|
|
up successfully.
|
|
The cluster should remain unaffected as long as only one node is restarting at a
|
|
time as long as there are two or more data nodes.
|
|
|
|
Environment variable: `INFLUXDB_ENTERPRISE_LICENSE_PATH`
|
|
|
|
-----
|
|
|
|
### Meta node settings
|
|
|
|
#### `[meta]`
|
|
|
|
#### `dir = "/var/lib/influxdb/meta"`
|
|
|
|
The directory where cluster meta data is stored.
|
|
|
|
Environment variable: `INFLUXDB_META_DIR`
|
|
|
|
#### `bind-address = ":8089"`
|
|
|
|
The bind address(port) for meta node communication.
|
|
For simplicity, InfluxData recommends using the same port on all meta nodes,
|
|
but this is not necessary.
|
|
|
|
Environment variable: `INFLUXDB_META_BIND_ADDRESS`
|
|
|
|
#### `http-bind-address = ":8091"`
|
|
|
|
The default address to bind the API to.
|
|
|
|
Environment variable: `INFLUXDB_META_HTTP_BIND_ADDRESS`
|
|
|
|
#### `https-enabled = false`
|
|
|
|
Determines whether meta nodes use HTTPS to communicate with each other. By default, HTTPS is disabled. We strongly recommend enabling HTTPS.
|
|
|
|
To enable HTTPS, set https-enabled to `true`, specify the path to the SSL certificate `https-certificate = " "`, and specify the path to the SSL private key `https-private-key = ""`.
|
|
|
|
Environment variable: `INFLUXDB_META_HTTPS_ENABLED`
|
|
|
|
#### `https-certificate = ""`
|
|
|
|
If HTTPS is enabled, specify the path to the SSL certificate.
|
|
Use either:
|
|
|
|
* PEM-encoded bundle with both the certificate and key (`[bundled-crt-and-key].pem`)
|
|
* Certificate only (`[certificate].crt`)
|
|
|
|
Environment variable: `INFLUXDB_META_HTTPS_CERTIFICATE`
|
|
|
|
#### `https-private-key = ""`
|
|
|
|
If HTTPS is enabled, specify the path to the SSL private key.
|
|
Use either:
|
|
|
|
* PEM-encoded bundle with both the certificate and key (`[bundled-crt-and-key].pem`)
|
|
* Private key only (`[private-key].key`)
|
|
|
|
Environment variable: `INFLUXDB_META_HTTPS_PRIVATE_KEY`
|
|
|
|
#### `https-insecure-tls = false`
|
|
|
|
Whether meta nodes will skip certificate validation communicating with each other over HTTPS.
|
|
This is useful when testing with self-signed certificates.
|
|
|
|
Environment variable: `INFLUXDB_META_HTTPS_INSECURE_TLS`
|
|
|
|
#### `data-use-tls = false`
|
|
|
|
Whether to use TLS to communicate with data nodes.
|
|
|
|
#### `data-insecure-tls = false`
|
|
|
|
Whether meta nodes will skip certificate validation communicating with data nodes over TLS.
|
|
This is useful when testing with self-signed certificates.
|
|
|
|
#### `gossip-frequency = "5s"`
|
|
|
|
The default frequency with which the node will gossip its known announcements.
|
|
|
|
#### `announcement-expiration = "30s"`
|
|
|
|
The default length of time an announcement is kept before it is considered too old.
|
|
|
|
#### `retention-autocreate = true`
|
|
|
|
Automatically create a default retention policy when creating a database.
|
|
|
|
#### `election-timeout = "1s"`
|
|
|
|
The amount of time in candidate state without a leader before we attempt an election.
|
|
|
|
#### `heartbeat-timeout = "1s"`
|
|
|
|
The amount of time in follower state without a leader before we attempt an election.
|
|
|
|
#### `leader-lease-timeout = "500ms"`
|
|
|
|
The leader lease timeout is the amount of time a Raft leader will remain leader
|
|
if it does not hear from a majority of nodes.
|
|
After the timeout the leader steps down to the follower state.
|
|
Clusters with high latency between nodes may want to increase this parameter to
|
|
avoid unnecessary Raft elections.
|
|
|
|
Environment variable: `INFLUXDB_META_LEADER_LEASE_TIMEOUT`
|
|
|
|
#### `commit-timeout = "50ms"`
|
|
|
|
The commit timeout is the amount of time a Raft node will tolerate between
|
|
commands before issuing a heartbeat to tell the leader it is alive.
|
|
The default setting should work for most systems.
|
|
|
|
Environment variable: `INFLUXDB_META_COMMIT_TIMEOUT`
|
|
|
|
#### `consensus-timeout = "30s"`
|
|
|
|
Timeout waiting for consensus before getting the latest Raft snapshot.
|
|
|
|
Environment variable: `INFLUXDB_META_CONSENSUS_TIMEOUT`
|
|
|
|
#### `cluster-tracing = false`
|
|
|
|
Cluster tracing toggles the logging of Raft logs on Raft nodes.
|
|
Enable this setting when debugging Raft consensus issues.
|
|
|
|
Environment variable: `INFLUXDB_META_CLUSTER_TRACING`
|
|
|
|
#### `logging-enabled = true`
|
|
|
|
Meta logging toggles the logging of messages from the meta service.
|
|
|
|
Environment variable: `INFLUXDB_META_LOGGING_ENABLED`
|
|
|
|
#### `pprof-enabled = true`
|
|
|
|
Enables the `/debug/pprof` endpoint for troubleshooting.
|
|
To disable, set the value to `false`.
|
|
|
|
Environment variable: `INFLUXDB_META_PPROF_ENABLED`
|
|
|
|
#### `lease-duration = "1m0s"`
|
|
|
|
The default duration of the leases that data nodes acquire from the meta nodes.
|
|
Leases automatically expire after the `lease-duration` is met.
|
|
|
|
Leases ensure that only one data node is running something at a given time.
|
|
For example, [continuous queries](/influxdb/v1.7/concepts/glossary/#continuous-query-cq)
|
|
(CQs) use a lease so that all data nodes aren't running the same CQs at once.
|
|
|
|
For more details about `lease-duration` and its impact on continuous queries, see
|
|
[Configuration and operational considerations on a cluster](/enterprise_influxdb/v1.7/features/clustering-features/#configuration-and-operational-considerations-on-a-cluster).
|
|
|
|
Environment variable: `INFLUXDB_META_LEASE_DURATION`
|
|
|
|
#### `auth-enabled = false`
|
|
|
|
If true, HTTP endpoints require authentication.
|
|
This setting must have the same value as the data nodes' meta.meta-auth-enabled configuration.
|
|
|
|
#### `ldap-allowed = false`
|
|
|
|
Whether LDAP is allowed to be set.
|
|
If true, you will need to use `influxd ldap set-config` and set enabled=true to use LDAP authentication.
|
|
|
|
#### `shared-secret = ""`
|
|
|
|
The shared secret to be used by the public API for creating custom JWT authentication.
|
|
If you use this setting, set [`auth-enabled`](#auth-enabled-false) to `true`.
|
|
|
|
Environment variable: `INFLUXDB_META_SHARED_SECRET`
|
|
|
|
#### `internal-shared-secret = ""`
|
|
|
|
The shared secret used by the internal API for JWT authentication for
|
|
inter-node communication within the cluster.
|
|
Set this to a long pass phrase.
|
|
This value must be the same value as the
|
|
[`[meta] meta-internal-shared-secret`](/enterprise_influxdb/v1.7/administration/config-data-nodes#meta-internal-shared-secret) in the data node configuration file.
|
|
To use this option, set [`auth-enabled`](#auth-enabled-false) to `true`.
|
|
|
|
Environment variable: `INFLUXDB_META_INTERNAL_SHARED_SECRET`
|