Brood uses Docker for infrastructure management. To use this repository, make sure you have Docker installed on your target machine.
Brood consists of the following software
- VerneMQ - MQTT
- InfluxDB - Timeseries database
- Grafana - Timeseries visualization
- Brood - Middleware
Brood forces an encrypted MQTT connection. The following steps show how to create self-signed certificates to get RosettaHome talking to Brood.
$ cd priv
$ ../script/generate_ca.sh
- make sure to fill in the questions
- copy the generated certificate .crt file to
priv/ssl/ca.crt
$ ../script/generate_server_crt.sh
- copy the generate key and certificate to
priv/ssl/brood.crt
andpriv/ssl/brood.key
respectively $ ../script/generate_client_crt.sh
- copy the generated key and certificate to RosettaHome's
rosetta_home/app/cloud_logger/priv/ssl/cicada.key
androsetta_home/app/cloud_logger/priv/ssl/cicada.crt
- you will have to manually build and burn a new Rosetta Home image.
$ docker-compose up
- All logging is directed to
syslog
- Go to
http://localhost:3000
- Login:
- un: admin
- pw: admin
- Setup data source
- Main Menu > Data Sources > Add data Source
- Name: Brood InfluxDB
- Default: true/check
- Type: InfluxDB
- URL: http://influxdb:8086
- Access: Proxy
- Database: brood
- Import pre-configured dashboards
- Dashboard Menu > import
- preconfigured dashboards are available in
brood/priv/dashboards
- Select InfluxDB data source configured above.
unfortunately Grafana does not allow for auto-selecting datasources when automatically importing dashboards, so it's manual for now