Skip to content

Plataformas

Ongrid distribuye dos binarios con historias de plataforma muy distintas.

  • ongrid (el cloud manager) es una carga Linux + Docker. Está pensado para vivir en un contenedor, detrás de nginx, con MySQL debajo. No hay build first-class para Windows o macOS server.
  • ongrid-edge (el agente edge) es un único binario estático que corre en cada host que quieres observar. Cross-compila a cuatro targets de fábrica: Linux en amd64 / arm64 y macOS en amd64 / arm64. Instalación production-grade solo en Linux + systemd; los targets macOS existen para que los desarrolladores puedan correr el agente en su laptop mientras iteran.

Matriz de soporte

Componentelinux/amd64linux/arm64darwin/amd64darwin/arm64Windows
ongrid (imagen del manager)testeado como build targetnonono
ongrid-edge (binario, supervisado)dev-only, manualdev-only, manualno
plugin promtail (logs)no (gap upstream)no (gap upstream)no
plugin node_exporter (host metrics)no (gap upstream)no (gap upstream)no
plugin process-exporter (proc metrics)no (gap upstream)no (gap upstream)no
plugin otelcol-contrib (trazas)no (no bundled)no (no bundled)no

Los cuatro targets de cross-compile del edge vienen directo del Makefile:

text
build-edge-linux-amd64
build-edge-linux-arm64
build-edge-darwin-amd64
build-edge-darwin-arm64

make build-edge-all corre los cuatro; make package produce el tarball de release que bundlea cada target más los binarios de plugin Linux-only.

¿Por qué no edge Windows / BSD?

El propio agente es Go puro y compilaría limpio; el gap es el bundle de plugins. promtail, node_exporter, process-exporter y otelcol-contrib todos distribuyen artefactos Linux-only en sus releases upstream. Sin esos cuatro, los paneles de Logs / Monitor / Trazas quedan vacíos incluso después de que el agente conecta. Preferimos no enviar una instalación a medias que llevar una plataforma half-supported escondida.

Si tienes un caso de uso fuerte para Windows o FreeBSD, abre un issue en github.com/ongridio/ongrid — los bundlers pluggables están trackeados bajo ADR-015.

Requisitos del lado cloud

Cualquier lugar donde puedas correr Docker Engine 24+ y Docker Compose v2 alojará el manager. Testeamos en:

  • Ubuntu 22.04 LTS, 24.04 LTS
  • Debian 12 (bookworm)
  • RHEL 9, Rocky Linux 9, AlmaLinux 9

Piso de memoria: 4 GB. Piso de disco: 20 GB (la mayoría retención de Prometheus + Loki, ver Linux (server)).

Requisitos del lado edge

El installer oficial curl-pipe (deploy/install/edge/install.sh) explícitamente solo maneja Linux:

sh
if [[ "$OS" != "linux" ]]; then
    log_error "only linux is supported by this installer; got: $OS"
    exit 1
fi

Ese installer deja una unit systemd (/etc/systemd/system/ongrid-edge.service), crea un usuario de sistema ongrid-edge y supervisa al agente vía systemd con Restart=always. Los hosts macOS pueden seguir corriendo el binario a mano para desarrollo — ver macOS (edge dev) — pero no obtienes el servicio supervisado, el log source journald, ni el bundle de plugins.

Eligiendo la página correcta

Política de versionado

El manager y el agente comparten un único archivo VERSION (/Users/.../ongrid/VERSION) y se releasean como un tarball. Un agente edge más viejo que su manager seguirá funcionando: cada RPC del túnel está versionado, y el manager trata los campos de reply desconocidos como valores cero. Un agente edge más nuevo que su manager no está soportado — upgradea el manager primero.

Ver Upgrade para el modelo staged-swap-then-rollback (ADR-024).