Skip to content

Commit 929b7c4

Browse files
author
Leonor Boga
committed
ETCM-530 Add a setup for Besu and Geth that allows to evaluate their performance
1 parent e5f2262 commit 929b7c4

File tree

20 files changed

+4720
-1
lines changed

20 files changed

+4720
-1
lines changed

docker/besu/README.md

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
## How to run Besu
2+
3+
In `runBesu.sh` set the Besu `VERSION` you wish to test and then just run the script in a terminal
4+
5+
```./runBesu.sh```
6+
7+
When the script is running Prometheus metrics and Grafana will be available at:
8+
9+
`http://localhost:9091` for the list of all available metrics
10+
11+
`http://localhost:3000/login` to access Grafana (login is admin / admin)
12+
13+
14+
### Metrics
15+
Some metrics are already being displayed in Grafana, using part of the dashboard that can be found in `https://grafana.com/grafana/dashboards/10273` and also replicating some metrics being used by the `mantis-ops` grafana dashboard
16+
17+
18+
### JSON RPC API
19+
JSON-RPC service is available at port 8545

docker/besu/docker-compose.yml

Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
1+
version: '3.1'
2+
3+
volumes:
4+
prometheus_data: {}
5+
grafana_data: {}
6+
7+
networks:
8+
besu-net:
9+
10+
services:
11+
12+
prometheus:
13+
image: prom/prometheus:v2.23.0
14+
volumes:
15+
- ./prometheus/:/etc/prometheus/
16+
- prometheus_data:/prometheus
17+
command:
18+
- '--config.file=/etc/prometheus/prometheus.yml'
19+
- '--storage.tsdb.path=/prometheus'
20+
- '--web.console.libraries=/usr/share/prometheus/console_libraries'
21+
- '--web.console.templates=/usr/share/prometheus/consoles'
22+
ports:
23+
- 9090:9090
24+
links:
25+
- besu:besu
26+
depends_on:
27+
- besu
28+
networks:
29+
- besu-net
30+
restart: always
31+
32+
grafana:
33+
image: grafana/grafana:7.3.6
34+
depends_on:
35+
- prometheus
36+
ports:
37+
- 3000:3000
38+
volumes:
39+
- grafana_data:/var/lib/grafana
40+
- ./grafana/provisioning/:/etc/grafana/provisioning/
41+
networks:
42+
- besu-net
43+
restart: always
44+
45+
pushgateway:
46+
image: prom/pushgateway:v1.4.0
47+
ports:
48+
- 9091:9091
49+
depends_on:
50+
- besu
51+
networks:
52+
- besu-net
53+
restart: always
54+
55+
besu:
56+
image: hyperledger/besu:$VERSION
57+
ports:
58+
- 8545:8545
59+
- 9545:9545
60+
networks:
61+
- besu-net
62+
volumes:
63+
- $HOME/.mantis/development/besu:/var/lib/besu
64+
command: --rpc-http-cors-origins="all" --rpc-http-enabled --metrics-push-enabled --metrics-push-port=9091 --metrics-push-host=pushgateway
65+
restart: always

0 commit comments

Comments
 (0)