Cylc-7 System Architecture

Cylc-7 (and earlier) has a local client/server architecture in which everything runs as the user, all clients are treated equally (user GUI and CLI, and job CLI), clients get server information via the filesystem and port scanning, and automatic owner-only authentication uses a suite-specific passphrase file.

Distributed client/server Architecture (No Central Server)

Cylc is a distributed system in the sense that:

Cylc client programs connect to suite daemons for monitoring and control:

In contrast to monolithic central-server systems, Cylc:

At a large site we may therefore have:

Suite Discovery: cylc (g)scan

To manage multiple suites, we must be able discover running suite daemons,

The multi-suite monitoring clients cylc scan (CLI) and cylc gscan (GUI):


Because Cylc has no central server to manage suites for all users, and everything (suite daemons and jobs) run as the user, there is no absolute requirement for multi-user authentication and authorization.

The current authentication model is therefore designed to automatically (with no need to manually enter credentials at any point) reject, by default, everyone but the suite owner.