Getting Started Concepts The Things Stack Cloud The Things Stack Enterprise Integrations API Hardware
Get The Things Stack

The Things Stack Enterprise

    Overview
  • AWS
  • Kubernetes
    • Generic
    • Azure
      • Architecture
      • Prerequisites
      • Configuration
      • Deployment
      • Upgrading
      • Troubleshooting
  • Docker
  • The Things Join Server
  • Manage The Things Stack

Configuration

The Things Stack requires a few configuration files to be prepared. In this section, we show how to create them and store them for further use.

Terraform Backend

Create a config.azurerm.tfbackend file and put it in 1-infrastructure, 2-kubernetes and one of the chosen DNS provider templates directories. We recommend azure-dns provider for this deployment.

storage_account_name = <storage_account_name>
container_name       = <storage_container_name>
key                  = <terraform_state_file>
use_azuread_auth     = true

Deployment Configuration

Create a deployment.auto.tfvars.json file in 1-infrastructure directory.

The following contains only the minimum mandatory fields for this configuration file. For a full list of possible values check the variables.tf file in this directory.

Note:
The combination of <deployment_name>-<environment>-<cluster> needs to be unique in a Resource Group.
{
    "azure_ad_admin_group_object_id": <object_id>, # Object ID of the AKS admin group.
    "deployment_name": <deployment_name>,          # Name of the deployment.
    "environment": <environment>,                  # 'prod', 'staging' or 'dev'.
    "cluster": <cluster>,                          # Cluster identifier for multi-cluster deployments.
    "location": <location>,                        # Azure location
    "resource_group": {
        "create": <true|false>,                    # If set to `true` a new Resource Group will be created on deployment.
                                                   # Otherwise a Resource Group is going to be imported based on "name" parameter.
        "name": <resource_group_name>             # Optional custom Azure Resource Group name. Mandatory when "create" is set to `false`.
    },
    "domain": {
        "name": <domain_name>,                     # Domain where The Things Stack is available.
        "dns_zone": <dns_zone_name>               # Azure DNS zone.
    }
}

ACME Configuration

Create an acme.auto.tfvars.json file in the DNS templates directory.

It is only required to set the acme_email field.

{
    "acme_email": <acme_email> # ACME email that will receive notifications about expiring Certificates.
}

The Things Stack Values

Create a tts.values.yaml file in the 2-kubernetes templates directory.

The following contains only the minimum mandatory fields for this values file. For a full list of possible values check the values.yaml file of The Things Stack Helm chart.

license:
  key: <tts_license_key>
global:
  deployment:
    initialTenant:
      tenantID: <initial_tenant_id>
      adminEmail: <initial_tenant_admin_email>
      adminUserID: <initial_tenant_admin_id>
      adminPassword: <initial_tenant_admin_password>
← Prerequisites Deployment →

On this page

  • Terraform Backend
  • Deployment Configuration
  • ACME Configuration
  • The Things Stack Values

Sections

Getting Started

Concepts

The Things Stack Cloud

The Things Stack Enterprise

Integrations

API

Hardware

Sitemap

View our Sitemap

Contributing

GitHub

About Us

The Things Industries