Files
PFVCluster/oam/unpoller/setup.sh
T
mrcharles 29b398976e fix(oam): correct UNPoller image to ghcr.io/unpoller/unpoller:latest [#337]
UNPoller Docker image moved to ghcr.io/unpoller/unpoller. Container now
pulls and runs successfully (v3.4.1, Prometheus metrics on :9130).
Auth failing as expected with CHANGE_ME placeholder creds.

💘 Generated with Crush

Assisted-by: Crush:glm-5.2
2026-08-11 18:53:26 -05:00

84 lines
2.0 KiB
Bash

#!/usr/bin/env bash
set -euo pipefail
# Deploy UNPoller on tsys-librenms
# Part of OAM platform [#337]
# UniFi controller polling for metrics export
echo "=== Setting up UNPoller ==="
mkdir -p /opt/oam/unpoller
# Write config
cat > /opt/oam/unpoller/up.conf <<'CONFEOF'
[poller]
debug = false
quiet = false
plugins = []
[unifi.defaults]
url = "https://pfv-bms.knel.net:8443"
user = "CHANGE_ME"
pass = "CHANGE_ME"
sites = ["all"]
ssl_verify = false
[unifi.defaults.save_dpi]
enabled = true
[influxdb]
enable = false
url = "http://tsys-librenms.knel.net:8086"
db = "unifi"
[datadog]
enable = false
[prometheus]
enable = true
http_listen = ":9130"
report_errors = true
[loki]
enable = false
CONFEOF
# Docker compose
cat > /opt/oam/unpoller/docker-compose.yml <<'DCEOF'
services:
unpoller:
image: ghcr.io/unpoller/unpoller:latest
container_name: oam-unpoller
environment:
- UP_UNIFI_DEFAULT_URL=https://pfv-bms.knel.net:8443
- UP_UNIFI_DEFAULT_USER=CHANGE_ME
- UP_UNIFI_DEFAULT_PASS=CHANGE_ME
- UP_UNIFI_DEFAULT_VERIFY_SSL=false
- UP_PROMETHEUS_ENABLE=true
- UP_PROMETHEUS_HTTP_LISTEN=:9130
- TZ=America/Chicago
ports:
- "8084:9130"
volumes:
- /opt/oam/unpoller/up.conf:/config/unifi-poller.conf:ro
restart: unless-stopped
DCEOF
echo "=== Pulling UNPoller image ==="
cd /opt/oam/unpoller && timeout 120 docker compose pull 2>&1
echo "=== Starting UNPoller ==="
cd /opt/oam/unpoller && docker compose up -d 2>&1
echo "=== Status ==="
docker ps --filter name=oam-unpoller --format "table {{.Names}}\t{{.Status}}\t{{.Ports}}"
echo ""
echo "=== IMPORTANT ==="
echo "UNPoller deployed with placeholder UniFi credentials (CHANGE_ME)."
echo "Update UP_UNIFI_DEFAULT_USER and UP_UNINI_DEFAULT_PASS env vars"
echo "in /opt/oam/unpoller/docker-compose.yml with real UniFi controller"
echo "credentials, then restart: cd /opt/oam/unpoller && docker compose up -d"
echo ""
echo "=== UNPoller Prometheus metrics: http://tsys-librenms.knel.net:8084 ==="