Directories
¶
| Path | Synopsis |
|---|---|
|
cmd
|
|
|
blackhole-proxy
command
Command blackhole-proxy is a drill tool, never part of a real deployment: it forwards local ports to etcd endpoints so one agent can be cut off from etcd without touching the host firewall.
|
Command blackhole-proxy is a drill tool, never part of a real deployment: it forwards local ports to etcd endpoints so one agent can be cut off from etcd without touching the host firewall. |
|
pagurus
command
Command pagurus runs one incus-compose stack on at most one member of an Incus cluster, failing it over between members.
|
Command pagurus runs one incus-compose stack on at most one member of an Incus cluster, failing it over between members. |
|
internal
|
|
|
agent
Package agent is the per-member daemon.
|
Package agent is the per-member daemon. |
|
backend
Package backend holds what the core knows about a workload without knowing how it runs: an instance, as a member's site reports it.
|
Package backend holds what the core knows about a workload without knowing how it runs: an instance, as a member's site reports it. |
|
backend/incus
Package incus is the runtime driver: it runs the stack with incus-compose in this member's project, and stops (fences) a member's project through the Incus cluster API or, locally, through cgroup.kill.
|
Package incus is the runtime driver: it runs the stack with incus-compose in this member's project, and stops (fences) a member's project through the Incus cluster API or, locally, through cgroup.kill. |
|
backend/incus/provision
Package provision prepares the Incus side of a pagurus service: one cluster group per member holding exactly that member (host-<member>), and one project per member pinned to it (restricted.cluster.groups), and, for a service with a replicate block, each replicated custom volume in every member's project on that member.
|
Package provision prepares the Incus side of a pagurus service: one cluster group per member holding exactly that member (host-<member>), and one project per member pinned to it (restricted.cluster.groups), and, for a service with a replicate block, each replicated custom volume in every member's project on that member. |
|
backend/incus/start
Package start holds the ways a member brings its copy of the workload up in its own pinned project.
|
Package start holds the ways a member brings its copy of the workload up in its own pinned project. |
|
config
Package config loads and validates a pagurus service definition.
|
Package config loads and validates a pagurus service definition. |
|
coord
Package coord holds the etcd schema of one pagurus service.
|
Package coord holds the etcd schema of one pagurus service. |
|
fence
Package fence holds pagurus's fences: the ways one member's copy of the workload is stopped, each a plugin with its own budget, run as an ordered chain that stops at the first fence that confirms.
|
Package fence holds pagurus's fences: the ways one member's copy of the workload is stopped, each a plugin with its own budget, run as an ordered chain that stops at the first fence that confirms. |
|
fence/fencetest
Package fencetest is a fake environment for testing fences without a real Incus, cgroupfs or host: fake binaries on a temp PATH, a fake cgroup2 tree, a real child process with a pidfile, and a contract every fence kind must pass.
|
Package fencetest is a fake environment for testing fences without a real Incus, cgroupfs or host: fake binaries on a temp PATH, a fake cgroup2 tree, a real child process with a pidfile, and a contract every fence kind must pass. |
|
metrics
Package metrics is pagurus's Prometheus exposition: a few gauges and counters, written by hand in the text format (no client library).
|
Package metrics is pagurus's Prometheus exposition: a few gauges and counters, written by hand in the text format (no client library). |
|
replica
Package replica holds the pure rules of volume replication (docs/02_replication.md): how pagurus names its snapshots, which ones it may prune, and rule 4, whether a member's volume holds writes the source lacks.
|
Package replica holds the pure rules of volume replication (docs/02_replication.md): how pagurus names its snapshots, which ones it may prune, and rule 4, whether a member's volume holds writes the source lacks. |
|
testutil
Package testutil runs throwaway etcds (one member, or a cluster) and a TCP proxy that can blackhole traffic to simulate a network partition.
|
Package testutil runs throwaway etcds (one member, or a cluster) and a TCP proxy that can blackhole traffic to simulate a network partition. |
|
versions
Package versions records which Incus and incus-compose an agent drives, and warns when they are outside what pagurus was built and tested against.
|
Package versions records which Incus and incus-compose an agent drives, and warns when they are outside what pagurus was built and tested against. |
|
watchdog
Package watchdog turns "this agent is a fit custodian of the workload" into a watchdog pet (the sbd / Proxmox-LRM pattern, stonith_exploration.md §7).
|
Package watchdog turns "this agent is a fit custodian of the workload" into a watchdog pet (the sbd / Proxmox-LRM pattern, stonith_exploration.md §7). |
Click to show internal directories.
Click to hide internal directories.