Permalink
Browse files

Merge pull request #819 from rackerlabs/itzg/bf_plus_grafana_docker_c…

…ompose

Add end-to-end BF + Grafana docker compose example
  • Loading branch information...
itzg committed Jan 11, 2018
2 parents 4848335 + 8cdcf34 commit a03279ee6217251348d4bed908aff8bb8ea771d8
Showing with 85 additions and 0 deletions.
  1. +43 −0 contrib/bf-grafana/README.md
  2. +42 −0 contrib/bf-grafana/docker-compose.yml
@@ -0,0 +1,43 @@
This Docker composition runs an end-to-end instance of Blueflood along with Grafana 3. The composition is started using:
```bash
docker-compose up -d
```
Grafana can be accessed at http://localhost:3000 with the default login of:
* **User**: admin
* **Password**: admin
The first thing you'll need to do after logging in is create a new data source with the choices:
* **Name**: Blueflood
* **Type**: Blueflood
* **Url**: http://bf_finder:8888
* **Access**: proxy
After you have saved that data source you can create graphs in a new dashboard that reference "Blueflood" as the
"Panel data source".
Unless you already have something that feeds into Blueflood, you can manually ingest some metrics by `POST`ing like this:
```bash
curl -X POST \
http://localhost:19000/v2.0/100/ingest \
-H 'Content-Type: application/json' \
-d '[
{
"collectionTime": 1515694269000,
"ttlInSeconds": 172800,
"metricValue": 66,
"metricName": "example.metric.one"
},
{
"collectionTime": 1515694279000,
"ttlInSeconds": 172800,
"metricValue": 69,
"metricName": "example.metric.one"
}
]'
```
Be sure to adjust the `collectionTime` to something near the current time in milliseconds since Blueflood will reject
ingesting of old metrics by default.
@@ -0,0 +1,42 @@
version: '3.4'
services:
blueflood:
image: rackerlabs/blueflood
environment:
CASSANDRA_HOST: cassandra
ELASTICSEARCH_HOST: elasticsearch
ports:
- 19000:19000
- 20000:20000
- 9180:9180
cassandra:
image: cassandra:2.1
ports:
- 9042:9042
- 9160:9160
- 7199:7199
cassandran:
image: cassandra:2.1
environment:
- CASSANDRA_SEEDS=cassandra
elasticsearch:
image: elasticsearch:1.7
command: elasticsearch -Des.cluster.name="blueflood"
bf_finder:
image: rackerlabs/graphite-api-blueflood-finder
environment:
BLUEFLOOD_QUERY_URL: http://blueflood:20000
TENANT_ID: 100
GRAFANA_URLS: http://grafana:3000,http://localhost:3000
grafana:
image: grafana/grafana:3.1.1
environment:
GF_INSTALL_PLUGINS: rackerlabs-blueflood-datasource
ports:
- 3000:3000

0 comments on commit a03279e

Please sign in to comment.