Pharos Node Monitoring

We recommend deploying Prometheus, Pushgateway, and Grafana to monitor Pharos Node metrics.

Deploy Prometheus and pushgateway

If you have already deployed a Prometheus monitoring and alerting system, you can skip this step:

  1. Create the Prometheus namespace:

kubectl create namespace prometheus
  1. Add the prometheus-community chart repository:

helm repo add prometheus-community https://prometheus-community.github.io/helm-charts
  1. Deploy Prometheus:

helm upgrade -i prometheus prometheus-community/prometheus \
--namespace prometheus \
--set alertmanager.persistence.storageClass="gp2" \
--set server.persistentVolume.storageClass="gp2"
  1. Verify that all pods in the prometheus namespace are in the READY state:

kubectl get pods -n prometheus
  1. Get the Pushgateway Service IP/Domain:

kubectl -n prometheus-agent-namespace get svc

You should see the prometheus-pushgateway Service. Save the IP address of the Pushgateway Service.

Modify the metrics push configuration file

Modify /data/pharos-node/domain/light/conf/monitor.conf with the pamir_cetina_push_address to push metrics to your Pushgateway:

{
  "enable_pamir_cetina": true,
  "pamir_cetina_push_address": "your_pushgateway_domain_or_ip",
  "pamir_cetina_push_port": 9091,
  "pamir_cetina_push_interval_second": 5,
  "pamir_cetina_job_name": "pharos_testnet_xxx"
}

Last updated