Systemd (Production)
The install.sh script installs Tundra as two systemd services: tundrad and tundra-agent.
Service overview
Section titled “Service overview”systemctl status tundrad # Control planesystemctl status tundra-agent # Local agentService files
Section titled “Service files”tundrad.service
Section titled “tundrad.service”[Unit]Description=Tundra control planeAfter=network.target postgresql.service
[Service]Type=simpleUser=tundraGroup=tundraExecStart=/usr/local/bin/tundrad serveRestart=on-failureRestartSec=5s
# HardeningNoNewPrivileges=truePrivateTmp=trueProtectSystem=strictProtectHome=trueReadWritePaths=/var/lib/tundraCapabilityBoundingSet=CAP_NET_BIND_SERVICE
[Install]WantedBy=multi-user.targettundra-agent.service
Section titled “tundra-agent.service”[Unit]Description=Tundra agentAfter=network.target
[Service]Type=simpleUser=tundra-agentExecStart=/usr/local/bin/tundra-agent serveRestart=on-failureRuntimeDirectory=tundra-agent
[Install]WantedBy=multi-user.targetCommon operations
Section titled “Common operations”# View logsjournalctl -u tundrad -fjournalctl -u tundra-agent -f
# Restart after config changesystemctl restart tundrad
# Apply migrations manuallysudo -u tundra tundrad migrate
# Check healthcurl -fsS http://localhost:7400/api/v1/healthzcurl -fsS http://localhost:7400/api/v1/readyz # includes DB probeLog rotation
Section titled “Log rotation”Logs go to systemd journal by default. To also write to files:
[telemetry]log_format = "json"Then configure logrotate or use journald’s built-in rotation.