Installazione Influxdb con Docker

Galleria: 
Installazione influx

Influxdb è un famoso Time Series Database, in grado di ingerire e collezionare milioni di misurazioni, utili al network monitoring, per generare grafici di performance e stati di host e servizi
Docker ci permette di eseguire un rapido deploy e di mantenere i container identici in sviluppo, test e produzione

Installazione di Influxdb

Per un installazione rapida abbiamo utilizzato il container Influxdb ufficiale disponibile Dockerhub, per l'installazione è disponibile questa breve guida. Installare Docker in Debian
Per rendere la configurazione e i dati permanenti, sono stati creati dei volumi, montati sul filesystem in /docker/influxdb
Abbiamo inoltre abilitato la ricezione delle metriche esportate da Collectd e Graphite esponendo le porte TCP 8086 e UDP 25826, è anche necessario il download del types-db, per taggare le metriche di Collectd
Possiamo scaricarlo dal git del progetto collectd: types-db e rispetto a questo script posizionarlo in /docker/influxdb/types-db/collectd-types.db

VERSION="1.6.4-alpine"
APP="/docker"
INFLUX_ROOT="$APP/influxdb"
INFLUX_DATA="$INFLUX_ROOT/data"
INFLUX_CONF="$INFLUX_ROOT/etc"
INFLUX_TYPESDB="$INFLUX_ROOT/types-db"

# Creazione directory
mkdir -p $INFLUX_DATA ; mkdir -p $INFLUX_CONF

docker run --name=influxdb \
        --restart=always \
        -p 8086:8086 \
        -p 25826:25826/udp \
        -e INFLUXDB_GRAPHITE_ENABLED=true \
        -v $INFLUX_DATA:/var/lib/influxdb \
        -v $INFLUX_CONF/influxdb.conf:/etc/influxdb/influxdb.conf:ro \
        -v $INFLUX_TYPESDB/collectd-types.db:/usr/share/collectd/types.db:ro \
        influxdb:$VERSION -config /etc/influxdb/influxdb.conf

Creazione utente amministratore

A questo punto è necessario creare un account admin, eseguendo comandi all'interno del docker container

docker exec -it influxdb bash
influx

All'interno della console del database:

CREATE USER nomeamministratore WITH PASSWORD 'passwordsupersicura' WITH ALL ALL PRIVILEGES

Abilitare l'autenticazione di Influx

  • editare /etc/influxdb.conf
    • auth-enabled = true
  • Riavviare influx: docker restart influxdb

Testare la connessione con utente amministratore

influx -username 'nomeamministratore' -password passwordsupersicura