Overview
The default way to run jaque is the boring one, and that’s deliberate: one binary, no external services, doing everything itself.
-target all is the default
Section titled “-target all is the default”jaque -config jaque.cueWith no -target flag, jaque runs as all — the engine schedules checks
and executes them itself, in the same process. Event log, coordination
store, and (if you want them) perfdata sinks and the archive all default
to embedded, in-process implementations: the event log defaults to
-eventlog memory (in-memory, no durability) and can be pointed at a
local Pebble-backed store instead with -eventlog file://...;
coordination defaults to in-memory too, with -coordination nats://...
as the shared alternative. No CGo anywhere, no separate service to stand
up first.
When you don’t need anything more
Section titled “When you don’t need anything more”If your estate fits on one host’s execution capacity — checks running from
one machine is enough, and one process losing its in-memory state on
restart is an acceptable cost (or you’ve turned on -eventlog file://.../-retain for durability) — -target all is the whole
deployment story. There is no operational tax for staying here: no
cluster to run, no external NATS to keep alive, no coordination store to
provision.
When to look further
Section titled “When to look further”Split roles when you need one of these, and only then:
- Checks from more than one network or machine — a worker in a DMZ, a
worker with local plugins that can’t run centrally. See
Topologies’s
engine/workersplit. - A read-only surface separate from execution — a dashboard reachable
without exposing the process that schedules checks. See
-target uiin Topologies. - Perfdata or notification delivery that needs to scale independently
of check execution. See
-target sink/-target notifier. - High availability for the engine itself — more than one engine sharing ownership of the object set, with automatic failover. See Cluster and coordination.
Every one of those is additive on top of the single-binary default, not a
different product — the same binary, a different -target, and (for
anything beyond all) an external -eventlog nats://... and
-coordination nats://... that every role points at.