Documentation

Set up InfluxDB Clustered

Limited availability

InfluxDB Clustered is currently only available to a limited group of InfluxData customers. If interested in being part of the limited access group, please contact the InfluxData Sales team.

As you get started with this tutorial, do the following to make sure everything you need is in place.

Install and configure your InfluxDB cluster

InfluxDB Clustered installation instructions are coming soon.

Download, install, and configure the influxctl CLI

The influxctl CLI provides a simple way to manage your InfluxDB cluster from a command line. It lets you perform administrative tasks such as managing databases and tokens.

  1. Download and install the influxctl CLI.

  2. Create a connection profile and provide your InfluxDB Clustered connection credentials.

    The influxctl CLI uses connection profiles to connect to and authenticate with your InfluxDB cluster.

    Create a file named config.toml at the following location depending on your operating system.

    Operating systemDefault profile configuration file path
    Linux~/.config/influxctl/config.toml
    macOS~/Library/Application Support/influxctl/config.toml
    Windows%APPDATA%\influxctl\config.toml

    If stored at a non-default location, include the --config flag with each influxctl command and provide the path to your profile configuration file.

    Copy and paste the sample configuration profile code into your config.toml:

[[profile]]
  name = "default"
  product = "clustered"
  host = "cluster-host.com"
  port = "
PORT
"
[profile.auth.oauth2] client_id = "
OAUTH_CLIENT_ID
"
scopes = [""] token_url = "
OAUTH_TOKEN_URL
"
device_url = "
OAUTH_DEVICE_URL
"

Replace the following with your InfluxDB Clustered credentials:

  • PORT: the port to use to access your InfluxDB cluster
  • OAUTH_CLIENT_ID: the client URL of your OAuth2 provider (for example: https://identityprovider/oauth2/v2/token)
  • OAUTH_DEVICE_ID: the device URL of your OAuth2 provider (for example: https://identityprovider/oauth2/v2/auth/device)

For detailed information about influxctl profiles, see Configure connection profiles.

Create a database

Use the influxctl database create command to create a database. You can use an existing database or create a new one specifically for this getting started tutorial. Examples in this getting started tutorial assume a database named “get-started”.

Authenticate with your cluster

The first time you run an influxctl CLI command, you are directed to login to your OAuth provider. Once logged in, your OAuth provider issues a short-lived (1 hour) management token for the influxctl CLI that grants administrative access to your InfluxDB cluster.

Provide the following:

  • Database name.
  • Optional: Database retention period as a duration value. If no retention period is specified, the default is infinite.
influxctl database create --retention-period 
1y
get-started

Create a database token

Use the influxctl token create command to create a database token with read and write permissions for your database.

Provide the following:

  • Permission grants
    • --read-database: Grants read access to a database
    • --write-database Grants write access to a database
  • Token description
influxctl token create \
  --read-database 
get-started
\
--write-database
get-started
\
"Read/write token for
get-started
database"

The command returns the token ID and the token string. Store the token string in a safe place. You’ll need it later. This is the only time the token string is available in plain text.

Store secure tokens in a secret store

Token strings are returned only on token creation. We recommend storing database tokens in a secure secret store. For example, see how to authenticate Telegraf using tokens in your OS secret store.

Configure authentication credentials

Code samples in later sections assume you assigned the token string to an INFLUX_TOKEN environment variable–for example:

export INFLUX_TOKEN=
DATABASE_TOKEN
$env:INFLUX_TOKEN = "
DATABASE_TOKEN
"
set INFLUX_TOKEN=
DATABASE_TOKEN
# Make sure to include a space character at the end of this command.

Replace DATABASE_TOKEN with your database token string.


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