Skip to content

Installation on Raspberry Pi

NodeSniff edited this page Mar 22, 2026 · 3 revisions

🛰️ NodeSniff Agent – Raspberry Pi Installation

This guide describes how to install and run the NodeSniff Linux Agent on a Raspberry Pi.


1. System preparation

sudo apt update
sudo apt upgrade
sudo apt install -y python3 python3-pip python3-venv git

2. Clone repository

git clone https://github.com/nodesniff/nodesniff-linux-agent.git
cd nodesniff-linux-agent

3. Create virtual environment

python3 -m venv venv
source venv/bin/activate

4. Install dependencies

pip install -r requirements.txt

5. Create system user

sudo useradd --system --no-create-home --shell /usr/sbin/nologin nodesniff

6. First run (bootstrap)

sudo ./nsagent.py

This step will:

  • create /etc/nodesniff/nsconfig.yaml
  • create /etc/nodesniff/nsagent.token
  • install agent to /usr/lib/nodesniff

7. Add company token

sudo nano /etc/nodesniff/nsagent.token

Paste your company key and save.


8. Register and send first metrics

sudo ./nsagent.py

Expected output:

Registration successful
Metrics sent successfully

9. Set permissions

sudo mkdir -p /var/log/nodesniff

sudo chown -R nodesniff:nodesniff /etc/nodesniff
sudo chown -R nodesniff:nodesniff /usr/lib/nodesniff
sudo chown -R nodesniff:nodesniff /var/log/nodesniff

sudo chmod 750 /var/log/nodesniff

# Create agent log file
sudo touch /var/log/nodesniff/nsagent.log

# Create module log files (required for non-root execution)
sudo touch /var/log/nodesniff/top_processes.log
sudo touch /var/log/nodesniff/disk_info.log

sudo chown nodesniff:nodesniff /var/log/nodesniff/*.log
sudo chmod 640 /var/log/nodesniff/*.log

10. Install as systemd service

sudo ./nsagent.py --service
sudo systemctl daemon-reload
sudo systemctl enable --now nodesniff-agent

11. Verify

systemctl status nodesniff-agent
ps aux | grep nsagent

Expected:

Active: active (running)
User=nodesniff

Debug

journalctl -u nodesniff-agent -n 50 --no-pager

Notes

  • Agent runs as a dedicated nodesniff system user
  • Configuration: /etc/nodesniff/
  • Logs: /var/log/nodesniff/
  • Runtime files: /usr/lib/nodesniff/