AL
alafon/taraxa-node-monitor
taraxa-node-monitor
A simple node monitor stack relying on a:
-
on the validator side: a nginx reverse proxy to expose metrics coming from the build-in prometheus exporter and a cadvisor container to expose host/container hardware metrics
-
on your side (anywhere): a grafana/prometheus stack pre-configured for your node.
Install
On your validator(s)/node(s)
Download both validator/compose-companion.yaml and validator/nginx_reverse_proxy.conf.template on your validator.
Then run:
COMPANION_NOAUTH_IP=YOUR_IP COMPANION_AUTH_BEARER_TOKEN=A_RANDOM_TOKEN docker compose -f compose-companion.yamlYOUR_IPis used if you want to access the metrics without authenticationA_RANDOM_TOKENis used to authenticate the request from the prometheus scraper
If you are using ufw-docker you might want to run ufw-docker allow reverse_proxy to create the required ufw forward rules.
Grafana/prometheus stack
Clone this repository, copy .env.dist into .env and adjust environment variables:
TARAXA_NODE_VALIDATORS='"NODE_1_IP:8080", "NODE_2_IP:8080"'
TARAXA_NODE_PROXY_AUTH_TYPE=Bearer
TARAXA_NODE_PROXY_AUTH_CREDENTIALS=A_RANDOM_TOKEN
GF_SECURITY_ADMIN_PASSWORD=foobar
GF_USERS_ALLOW_SIGN_UP=falsethen run docker compose up -d.
It will popup:
- a prometheus instance that will scrap data over the nginx instance setup from your node(s)
- a grafana instance pre-configured with the prometheus instance and dashboard
Todo
Make it possible to configure:
- the path to the disk where the node db is stored (default: /dev/sdb cuz it should not be on the host main disk)
- the container name (default: mainnet-node-1)
Security
TBD:
- firewall config documentation on the validator/node
- same for the monitoring stack
Credits
chrizfrom the Taraxa official discord
On this page
Languages
Shell71.7%Dockerfile28.3%
Contributors
MIT License
Created March 9, 2025
Updated April 2, 2025