Servidor Central
El servidor central corre todo el stack SigNoz como servicios systemd nativos (sin Docker), dentro de un LXC de Debian en Proxmox. Se monta y se mantiene con el Proxmox VE Helper-Script de SigNoz — no con scripts propios.
Componentes instalados
| Servicio | Qué hace | Puerto |
|---|---|---|
zookeeper |
Coordinación del cluster ClickHouse | 2181 |
clickhouse-server |
Almacenamiento de métricas, logs y trazas | 9000 (TCP), 8123 (HTTP) |
signoz |
Backend + UI web | 8080 |
signoz-otel-collector |
Recibe datos de los agentes (OTLP) | 4317 (gRPC), 4318 (HTTP) |
Requisitos
El helper-script crea el LXC con este perfil por defecto (se puede subir si hay muchos agentes):
| Recurso | Default del helper-script | Recomendado (varios agentes) |
|---|---|---|
| OS | Debian 13 (LXC) | Debian 13 |
| vCPU | 2 | 4 |
| RAM | 4 GB | 8 GB |
| Disco | 20 GB | 50 GB+ |
| Red | ZeroTier (Infra-mesh) | — |
Instalación
Se ejecuta el helper-script de la comunidad desde la Proxmox VE Shell (en el host Proxmox, no dentro del LXC). El script crea el LXC, instala SigNoz y lo deja corriendo:
bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/ct/signoz.sh)"
Referencia: community-scripts.org/scripts/signoz.
Primer usuario = admin
El primer usuario que registres en la UI queda como administrador. Registralo apenas termina la instalación.
Después de crear el LXC, sumalo a la red ZeroTier Infra-mesh para que los agentes puedan enviarle datos (ver Seguridad).
Acceso
- UI pública:
https://signoz.histrix.com.ar(Cloudflare + TLS) — la que se usa día a día - UI interna:
http://IP_ZEROTIER_CENTRAL:8080— por ZeroTier, para diagnóstico - Health check:
http://IP_ZEROTIER_CENTRAL:13133/
IP a usar
Usá la IP de ZeroTier (Infra-mesh) del LXC central. Los agentes también se conectan por esta misma IP al puerto 4317.
Archivos y directorios
/opt/signoz/ ← backend + UI
/opt/signoz/conf/systemd.env ← config (JWT secret, rutas, DSNs)
/opt/signoz-otel-collector/ ← OTel Collector
/opt/signoz-otel-collector/conf/config.yaml ← config del collector central
/var/lib/signoz/signoz.db ← base de datos SQLite (usuarios, alertas)
/var/lib/clickhouse/ ← datos de ClickHouse (métricas, logs, trazas)
Comandos útiles
Desde adentro del LXC (pct enter <CTID> desde el host, o SSH):
# Estado de todos los servicios
systemctl status zookeeper clickhouse-server signoz signoz-otel-collector
# Logs en vivo
journalctl -u signoz -f
journalctl -u signoz-otel-collector -f
journalctl -u clickhouse-server -f
# Reiniciar un servicio
systemctl restart signoz
systemctl restart signoz-otel-collector
# Ver uso de disco en ClickHouse
clickhouse-client --query \
"SELECT database, table, formatReadableSize(sum(bytes)) as size \
FROM system.parts GROUP BY database, table ORDER BY sum(bytes) DESC LIMIT 20"
Actualizar SigNoz
La actualización no usa scripts propios: se hace con las herramientas de community-scripts desde la Proxmox VE Shell. Ver el detalle en Mantenimiento → Actualizar SigNoz.
# Automático: cron que actualiza el SO de todos los LXC (domingos a medianoche)
bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/tools/pve/cron-update-lxcs.sh)"
# Manual: actualiza la app SigNoz dentro del LXC (con opción de backup vzdump)
bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/tools/pve/update-apps.sh)"
Los datos no se tocan
Las actualizaciones no borran ClickHouse ni la base SQLite, así que dashboards, alertas y datos históricos se mantienen. Igual, antes de una actualización grande conviene un backup (update-apps ofrece un vzdump del LXC).
Backup rápido
# Base SQLite (usuarios, dashboards, alertas)
cp /var/lib/signoz/signoz.db /backup/signoz-$(date +%Y%m%d).db
# ClickHouse: para backup completo ver docs oficiales de CH
# En la práctica, los datos son regenerables desde los agentes
# así que backupear signoz.db suele ser suficiente
# A nivel Proxmox: un vzdump del LXC completo es el backup más simple