Docs · Reference
clio_run and its environment.
One command manages the runtime and its pools. A second mounts the filesystem. Environment variables override the config file for a single run.
- Binaries
- clio_run (alias clio), clio_cte_fuse
- Config
- ~/.clio/clio.yaml
clio_run
clio_run <command> [options]| Command | What it does |
|---|---|
start | Start the runtime in the foreground, recover persistent state, and compose the pools in the config. |
stop | Stop the runtime. --grace-period <ms> sets the drain budget (default 5000); --force stops immediately. |
status | Print RUNNING, STOPPED (clean) or STOPPED (stale artifacts). The exit code is 0, 1 or 2 to match. |
compose | Manage pools from a YAML file: start, stop, list. |
monitor | Print worker statistics. |
migrate | Move a container to a different node. |
config export --path <file> | Write the node's effective configuration to a file. |
refresh | Regenerate method files for module development. |
start options
| Option | Effect |
|---|---|
--fresh | Discard this node's persistent state instead of recovering it. |
--disk <path> | Storage root for persistent state on this run (default ~/.clio). Same as CLIO_STORAGE_ROOT. |
--ephemeral | Skip the configured compose and start with only the admin pool. |
--induct | Register this node with an existing cluster. |
--viz, --no-viz | Serve or skip the web dashboard (on by default). |
--viz-port <port> | Dashboard port (default 8080; 0 picks a free one). |
--viz-bind <addr> | Dashboard bind address (default 127.0.0.1). |
compose
A compose file has the same compose: list as clio.yaml. This one adds a 256 MB RAM block device:
compose:
- mod_name: clio_bdev
pool_name: "ram::scratch"
pool_query: local
pool_id: "320.0"
bdev_type: ram
capacity: "256MB"
restart: true$ clio_run compose start tiers.yaml # create the pools in the file
$ clio_run compose list # list containers in the local daemon
$ clio_run compose stop tiers.yaml # destroy those poolsPools marked restart: true are recorded in each node's pool log and composed again by the next clio_run start. stop destroys the pools now but keeps them in the log. clio_run compose list --restartable lists the log.
clio_cte_fuse
clio_cte_fuse <mountpoint> [FUSE options]The daemon creates or binds the filesystem pool itself. Every argument after the mountpoint goes to FUSE: -f (foreground), -d (debug trace), -s (single thread), -o allow_other (needs user_allow_other in /etc/fuse.conf). On Windows the mountpoint is a drive letter (Z:) or an empty directory path. On macOS, -o backend=fskit selects FSKit.
| Variable | Default | Effect |
|---|---|---|
CLIO_WITH_RUNTIME | 1 | Set to 0 to attach to a running runtime. Almost always what you want. |
CLIO_FUSE_ATTR_CACHE_S | 1.0 (0 on several nodes) | Kernel attribute cache lifetime, in seconds. 0 gives strict coherence across clients. |
CLIO_FUSE_WRITEBACK | off | Kernel writeback caching. Unsafe with several writers. |
Environment variables
| Variable | Effect |
|---|---|
CLIO_SERVER_CONF | Path of the runtime configuration file (overrides ~/.clio/clio.yaml). |
CLIO_STORAGE_ROOT | Directory for persistent tiers, the metadata log and the index. Expanded as ${CLIO_STORAGE_ROOT} in the config. |
CLIO_PORT | Base RPC port (default 9413). |
CLIO_SERVER_ADDR | Address clients use to reach the runtime. |
CLIO_IPC_MODE | Client transport: SHM (shared memory), IPC (Unix socket) or TCP. When unset, the client picks the fastest one that works: SHM for a runtime on the same machine, otherwise IPC, otherwise TCP. |
CLIO_WITH_RUNTIME | 0 attaches a client to a running runtime; 1 starts one in-process. |
CLIO_CTE_POOL | Bind the CTE client to a chain layer, such as 564.0 for search. |
CLIO_VIZ_ENABLE, CLIO_VIZ_PORT, CLIO_VIZ_BIND | Dashboard settings. |
CTP_LOG_LEVEL | Log verbosity, such as info or debug. |
Configuration file
~/.clio/clio.yaml has a few top-level sections. networking sets ports and, for a cluster, the hostfile with one node address per line. runtime sets worker threads and queue depth. viz configures the dashboard. compose lists the pools to create. The installed clio_default.yaml documents every key in comments. The compose tutorial covers the storage settings.