Group machines into @sets
Gather machines into named @sets, by role, function, however you actually run. A set is both your rollout target and your canary boundary.
The technical deep-dive for the team evaluating Syncronis. How a change travels from your console to thousands of machines, where every byte of your data lives, and what it costs to run.
Illustrative. Agents enrol with a one-time token issued from your console. No shared secrets, no public endpoint to attack.
No agents to babysit, no cluster to reconcile. You describe what should happen; Syncronis makes it happen, where and when you said.
Gather machines into named @sets, by role, function, however you actually run. A set is both your rollout target and your canary boundary.
Pick the package and target, then set the schedule window, timeout, on-failure policy and process signals, all in the console, no DSL to learn. Every rollout is plain JSON underneath, so you can script it through the API whenever you want automation.
Pushed over gRPC the moment you commit, not on a poll interval. Agents pull packages from your vault over HTTPS, run your scripts, and stream results back.
Per-machine progress, failures surfaced immediately, and a full attributed history of who changed what.
Arbitrary files — configs, templates, binaries — plus the script the agent runs. The package is the script's path: deploy-nginx/setup.sh and deploy-nginx/rollback.sh are two packages sharing one folder, each with its own deployments, versions, targets and blocked-version tracking.
No .deb or .rpm to build, no manifest schema — and your package is opaque to the platform: Syncronis schedules, distributes and runs it, but never parses or rewrites your files.
The control plane decides where and when. Your vault holds what (packages, logs, credentials) on hardware you own. You (or your auditor) can see exactly where data lives, because the line between the two planes is the whole design.
Self-hosting ships with Enterprise. Same binary in both modes, so moving later is a configuration change, not a migration.
On the wire
Control-plane traffic carries rollout intent, config and machine status — never your payloads. Packages, logs, credentials and rendered secrets stay on your vault.
Identity
Every agent↔server connection is mutually authenticated with client certificates. No shared secrets sprayed across the fleet.
Secrets
Per-machine secrets are rendered on your own infrastructure at build time. They never round-trip through the control plane.
No cluster to stand up, no runtime to keep patched, no platform team to operate it. One small binary you can drop on a Raspberry Pi or a datacenter server. Measured on a live host, not modeled.
The two categories teams weigh Syncronis against. Where each tool sits is a design choice. Read it as positioning, not a verdict.
| Syncronis | Ansible | Puppet | Chef | |
|---|---|---|---|---|
| Language | Bash + JSON | YAML | Puppet DSL | Ruby DSL |
| Agent model | Persistent (push) | Agentless (SSH) | Agent (pull) | Agent (pull) |
| Change reaches fleet | On publish, near-instant | When you run it | Poll interval | Poll interval |
| Package delivery | Built-in, delta transfer | Copy / modules | File-based | File-based |
| Config templating | Yes (vault build) | Yes (Jinja2) | Yes | Yes |
| Desired-state / drift correction | Partial | Partial | Yes | Yes |
| Syncronis | Mender | Balena | qbee | |
|---|---|---|---|---|
| Built for | Linux fleets, any size | Embedded OTA | Container edge | IoT / embedded |
| Your data on your infra | Yes (vault) | Vendor / hosted | Vendor cloud | Vendor hub |
| Self-host | First-class, same binary | On-prem (enterprise) | openBalena (partial) | Enterprise only |
| Delivers | Scripts + packages | A/B image OTA | Containers | Declarative config |
| Package format | Folder + bash entry script | Signed artifact (.mender) | Container image | Declarative bundles |
| Transport | Push (gRPC) | Pull | Pull | Pull (HTTPS) |
| Rollout control | Targeting, windows, canary, version history | Phased rollouts (Ent) | Release pinning | Group config |
| Deploy preview | Simulate targets first | — | — | — |
Syncronis renders per-machine config from templates, inheritance and secrets, but it deploys on publish rather than continuously reconciling state. It is not infrastructure-as-code and not a container orchestrator: it delivers your packages and runs your scripts, where and when you decide.
Create your organization and start free. Your first 5 machines are on us, no card required. Any Linux host with systemd, amd64 or arm64.