Traefik Enterprise Edition Installation Quick Start

Installing the teectl Command-Line Tool

Downloading

First, download teectl, a tool that will help you install and is required to operate your cluster, using one of the following links:

Check the integrity of the downloaded file

Use the sha256 checksums of the binaries that can be found here to verify the binaries:

# Compare this value to the one found in traefikee_checksums.txt
sha256sum ./teectl_v2.1.7_linux_amd64.tar.gz
# Compare this value to the one found in traefikee_checksums.txt
shasum -a256 ./teectl_v2.1.7_darwin_amd64.tar.gz
# Compare this value to the one found in traefikee_checksums.txt
Get-FileHash teectl_v2.1.7_windows_amd64.zip -Algorithm SHA256
Extract the downloaded archive
# Compare this value to the one found in traefikee_checksums.txt
tar -zxvf teectl_v2.1.7_linux_amd64.tar.gz
# Compare this value to the one found in traefikee_checksums.txt
tar -zxvf ./teectl_v2.1.7_darwin_amd64.tar.gz
# Compare this value to the one found in traefikee_checksums.txt
Expand-Archive teectl_v2.1.7_windows_amd64.zip

Installing

Copy the teectl binary to your PATH or add its location to your environment ($PATH or %PATH% depending on your OS) and make sure it's executable:

# Example with /usr/local/bin
# These command may need sudo rights
cp ./teectl /usr/local/bin/teectl

# Should print "/usr/local/bin/teectl"
command -v teectl
# Example with C:\Program Files
Copy-Item "teectl.exe" -Destination "C:\Program Files\teectl.exe"

# Should print "C:\Program Files\teectl.exe"
where teectl

Verifying

You can now test your installation by executing the command-line teectl with the help option, it should return the help:

teectl --help
teectl    teectl is a controller for TraefikEE (Enterprise Edition).
Complete documentation is available at https://docs.containo.us.

Usage: teectl [command] [resource] [flags]

Use "teectl [command] --help" for help on any command.

Commands:
    apply      Apply configuration to a cluster
    get        Get resources
    create     Create resources
    delete     Delete resources
    recover    Recovers a cluster that has lost quorum
    setup      Setup a cluster to manage

    support-dump    Gather data from the cluster to assist in support
    backup          Backs up the configuration of a running TraefikEE cluster
    restore         Restore a previously backed up cluster configuration
    version         Print version

Resources:
    acme-certs, ac
    nodes, n
    tls-certs, tc
    static-config, s

Install TraefikEE with teectl

Install your TraefikEE cluster on Kubernetes or Docker Swarm with the following commands:

teectl setup --kubernetes && \ # Generates ./bundle.zip
teectl setup gen \
--license=.... \
--controllers=1 \
--proxies=2 | kubectl apply -f - 
# Generates ./bundle.zip 
teectl setup --swarm

# Deploy controllers
teectl setup gen \
--license=.... 
--controllers=1 | docker stack deploy -c - traefikee

# Wait for controllers initialization
while [ $(docker config ls -qf name==default-proxy) -lt 1 ]; do sleep 1; done

# Deploy proxies
teectl setup gen \
--license=.... 
--proxies=2 | docker stack deploy -c - traefikee

If you want to customize the default settings, please check the following guides:

On-Premise Installation

If you plan to install TraefikEE On-Premise (on VMs, bare-metal machines or unsupported platforms), you will not be able to use the previous command for installation. Learn about TraefikEE's On-Premise installation. However, you will be able to perform other operations by using teectl on the same machine as traefikee.

To verify that your TraefikEE installation is ready, use the following command to print all of the nodes in the cluster:

teectl get nodes
ID                         NAME                           STATUS  ROLE
7022qjifgp2srv3tq6rxyjhdm  default-proxy-d55569575-n8mmb  Ready   Proxy
q01yagt5suwv2tooy8amm248k  default-controller-0           Ready   Controller (Leader)
s4eg90svby3aty5r6o9xkcpeh  default-proxy-d55569575-kzn82  Ready   Proxy

Apply a Static Configuration

In order to allow proxies to receive connections a static configuration needs to be applied to the cluster with entry-points and at least one provider. A static configuration can be applied on your TraefikEE cluster using teectl.

Below is an example static configuration:

entryPoints:
  web:
    address: ":80"
  websecure:
    address: ":443"

providers:
  kubernetesCRD: {}
[entryPoints]
  [entryPoints.web]
    address = ":80"
  [entryPoints.websecure]
    address = ":443"

[providers.kubernetesCRD]
entryPoints:
  web:
    address: ":80"
  websecure:
    address: ":443"

providers:
  docker:
    swarmMode: true
[entryPoints]
  [entryPoints.web]
    address = ":80"
  [entryPoints.websecure]
    address = ":443"

[providers.docker]
  swarmMode: true  

Apply the configuration using the following command:

teectl apply --file=config.yaml
teectl apply --file=config.toml

Congratulations! Your TraefikEE cluster is ready.

Access the Dashboard

To learn how to enable and access the dashboard, please refer to the dashboard operating guide

What's Next?

Now that you have installed a TraefikEE cluster, you can: