JCTLD is a process control software designed for managing job clusters across multiple machines.
Not only is jctld a TCP, UDP, or UNIX-socket operation, but it's also fairly lightweight in terms of CPU and memory usage. You can use it to view the jobs currently running on machines, as well as start, kill, suspend, resume, and renice them. Additionally, the system includes basic node monitoring, such as uptime/load, and security features that use trust via private-public key pairs.
The program has been designed with the ability to add more features as needed. Requirements for jctld include expat, Libgcrypt, and libstatgrab 0.14.
Two programs make up the jctld system - 'jctld' and 'jcli'. Clients, servers, and users make up the three categories of machines in this system. Clients are the nodes in a cluster that run jobs and other tasks, including 'jctld'. Servers monitor and control clients via 'jctld', while users control jobs and other tasks via 'jcli'.
The system's configuration is handled with XML files, and clients, servers, and users can share the same config file if needed. Public/private key pairs are used to identify clients and users to servers and vice versa. Both programs take a '--genkeypair' argument that users can use to create their own key-pair, which an administrator can add to the server config.
Access and control are managed via sets of privileges, which can be assigned to single users or groups of users. These privileges specify what the associated user or group is allowed or not allowed to do, with 'deny's taking precedence over 'allow's. A sample configuration is provided to help users understand how to use the system.
Version 0.9.6: N/A