Skip to content
This repository has been archived by the owner on Jul 26, 2022. It is now read-only.

Latest commit

 

History

History

docker-compose

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 

Docker compose

F5 Telemetry Tracker can be deployed using docker compose on a Linux virtual machine running Docker.

This docker compose version creates a /opt/f5tt working directory for persistent storage.

Usage:

$ git clone https://github.com/fabriziofiorucci/F5-Telemetry-Tracker
$ cd F5-Telemetry-Tracker/contrib/docker-compose
$ ./f5tt-compose.sh 
F5 Telemetry Tracker - https://github.com/fabriziofiorucci/F5-Telemetry-Tracker

 This script is used to deploy/remove F5TT with docker-compose

 === Usage:

 ./f5tt-compose.sh [options]

 === Options:

 -h                     - This help

 -c [start|stop]        - Deployment command
 -t [bigiq|nim]         - Deployment type

 -s [url]               - BIG-IQ/NGINX Instance Manager URL
 -u [username]          - BIG-IQ/NGINX Instance Manager username
 -p [password]          - BIG-IQ/NGINX Instance Manager password

 -k [NIST API key]      - NIST CVE REST API Key (https://nvd.nist.gov/developers/request-an-api-key)

 === Examples:

 Deploy F5TT for BIG-IQ:                        ./f5tt-compose.sh -c start -t bigiq -s https://<BIGIQ_ADDRESS> -u <username> -p <password>
 Remove F5TT for BIG-IQ:                        ./f5tt-compose.sh -c stop -t bigiq
 Deploy F5TT for NGINX Instance Manager:        ./f5tt-compose.sh -c start -t nim -s https://<NGINX_INSTANCE_MANAGER_ADDRESS> -u <username> -p <password>
 Remove F5TT for NGINX Instance Manager:        ./f5tt-compose.sh -c stop -t nim

How to deploy

  1. Use docker-compose on a Linux VM running docker to start either the NGINX Instance Manager or BIG-IQ deployment
  2. Access the setup:
  • Grafana: Using a browser access http://<VM_IP_ADDRESS>
  • F5 Telemetry Tracker: Access endpoints http://<VM_IP_ADDRESS>/f5tt/instances and http://<VM_IP_ADDRESS>/f5tt/metrics - See the usage page
  1. Log on using username admin and password admin, then set a new password
  2. Browse to http://<VM_IP_ADDRESS>/dashboard/import Import the dashboards selecting the preconfigured "Prometheus" datasource
  1. After ~120 seconds the dashboards will be available

Starting & stopping with docker-compose

Starting F5 Telemetry Tracker for NGINX Instance Manager:

$ ./f5tt-compose.sh -c start -t nim -s https://<NIM_ADDRESS> -u admin -p mypassword
-> Deploying F5 Telemetry Tracker for nim at https://<NIM_ADDRESS>
Creating persistent storage directories under /opt/f5tt ...
Enter sudo password if prompted
Password: 
Creating network "f5tt-nim_default" with the default driver
Creating grafana    ... done
Creating prometheus ... done
Creating nginx      ... done
Creating clickhouse ... done
Creating f5tt-nim   ... done
$

Stopping F5 Telemetry Tracker for NGINX Instance Manager:

$ ./f5tt-compose.sh -c stop -t nim
-> Undeploying F5 Telemetry Tracker for nim
Stopping f5tt-nim   ... done
Stopping clickhouse ... done
Stopping grafana    ... done
Stopping prometheus ... done
Stopping nginx      ... done
Removing f5tt-nim   ... done
Removing clickhouse ... done
Removing grafana    ... done
Removing prometheus ... done
Removing nginx      ... done
Removing network f5tt-nim_default
$

Starting F5 Telemetry Tracker for BIG-IQ:

$ ./f5tt-compose.sh -c start -t bigiq -s https://<BIGIQ_ADDRESS> -u admin -p mypassword
-> Deploying F5 Telemetry Tracker for bigiq at https://<BIGIQ_ADDRESS>
Enter sudo password if prompted
Password: 
Creating network "f5tt-bigiq_default" with the default driver
Creating f5tt-bigiq ... done
Creating prometheus ... done
Creating nginx      ... done
Creating grafana    ... done
$

Stopping F5 Telemetry Tracker for BIG-IQ:

$ ./f5tt-compose.sh -c stop -t bigiq
-> Undeploying F5 Telemetry Tracker for bigiq
Stopping grafana    ... done
Stopping f5tt-bigiq ... done
Stopping nginx      ... done
Stopping prometheus ... done
Removing grafana    ... done
Removing f5tt-bigiq ... done
Removing nginx      ... done
Removing prometheus ... done
Removing network f5tt-bigiq_default
$