chore: initial import from KNEL/PFVCluster@041d311 [#769]
Split per O&M lane work order. Full history: KNEL/PFVCluster. shellcheck debt fixed in librenms-agent (quoting, arithmetic, backticks); fixes upstream ntp-server.sh bug: input_wakeups reported PACKETSENDFAILURES instead of INPUTWAKEUPS. mysql.sh (PHP-in-.sh) exempt per house rule. https://projects.knownelement.com/issues/769#note-4152
This commit is contained in:
@@ -0,0 +1,83 @@
|
||||
#!/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 ==="
|
||||
Reference in New Issue
Block a user