Skip to content

About

A toolkit for running and monitoring a JunoCash node

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

2 Commits

Folders and files

Repository files navigation

JunoCash Node Ops

toolkit for running and monitoring a JunoCash node. Features systemd service management, auto-restart watchdogs, and a comprehensive Prometheus/Grafana monitoring stack.

Prerequisites

  • Ubuntu/Debian Server
  • junocashd binary (built or downloaded)

Node Binary Setup

It is recommended to use a stable path for your binary to allow easy upgrades.

  1. Create a directory for your binaries, e.g., /opt/junocash.
  2. Place your versions in subdirectories and use a symlink for the active version:
    mkdir -p /opt/junocash/v1.0.0
    # ... install binary to /opt/junocash/v1.0.0/bin/junocashd ...
    ln -s /opt/junocash/v1.0.0 /opt/junocash/current
  3. Update your .env to point JUNO_BINARY to /opt/junocash/current/bin/junocashd.

Getting Started

This repository uses a template-based configuration system.

1. Configure

Copy the example environment file and customize it with your paths and credentials:

cp .env.example .env
nano .env

2. Build

Generate the production configuration files:

./install.sh

This will create a dist/ directory containing your customized scripts and services.

3. Deploy

Deploy the generated files to your system (example paths):

# Systemd Services
sudo cp dist/systemd/*.service /etc/systemd/system/
sudo systemctl daemon-reload
sudo systemctl enable junocashd
sudo systemctl start junocashd

# Watchdog Script
sudo cp dist/scripts/watchdog.sh /usr/local/bin/juno-watchdog
sudo chmod +x /usr/local/bin/juno-watchdog
# Add to crontab: */30 * * * * /usr/local/bin/juno-watchdog

Monitoring Setup

1. RPC Exporter

The monitoring stack relies on json_exporter to bridge Juno's JSON-RPC to Prometheus.

  1. Download the json_exporter binary.
  2. Install the generated config:
    sudo mkdir -p /etc/json_exporter
    sudo cp dist/config/json_exporter.yml /etc/json_exporter/juno_config.yml
  3. Enable and start the juno-rpc-exporter service.

2. Prometheus

Add the jobs from config/prometheus.yml.snippet to your Prometheus configuration.

3. Grafana Dashboards

Import the JSON files from dashboards/ into Grafana:

  • Basic Metrics (dashboards/juno-basic-metrics.json): Core node stats (Peers, Block Height).
  • Advanced RPC (dashboards/juno-advanced-rpc.json): Detailed mempool, mining, and fork detection data.

About

A toolkit for running and monitoring a JunoCash node

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages