Check_MK is a complex addon for Nagios/Icinga and consists of three subprojects. The check and inventory system Check_MK is a general purpose Nagios plugin for retrieving data. It adopts a new approach for collecting data and obsoletes NRPE, check_by_ssh, NSClient, and check_snmp. It features a significant reduction of CPU use on the Nagios host and automatic inventory of items to be checked, and is especially useful with larger Nagios installations. "MK Livestatus" gives immediate and fast access to live and historic Nagios status data. It's a supported backend for many addons including NagVis, NagiosBP, and Thruk. "Check_MK Multisite" is a feature complete replacement for the Nagios GUI, and uses MK Livestatus as a backend. It is very fast, and supports efficient distributed monitoring.
Consh is a set of programs that can turn one or more UNIX hosts on a trusted LAN into a singular Bourne shell multi-computer on which shell scripts are run concurrently. The service abstracts hosts into what appears to be shell process with a fixed number of threads or workers, to which work may be assigned and results received concurrently. It includes utilities that assign commands to workers in parallel and a command that initiates distributed barriers between workers for synchronization purposes. Environment variables can be set on a per-host basis to implement locking mechanisms like semaphores or ticket algorithms. Daemons can delegate work to one another as needed.
Bashinator is a bash shell script framework. It provides flexible and powerful message handling that lets you print to stdout, log (to syslog or a logfile), and mail messages with a single message function. Exhaustive information is included in messages to ease debugging. This information includes timestamps, message severity, source file, line numbers, and function names. A facility for tracing the function call stack is provided. Sub-command output can be logged by capturing the stdout/stderr of external commands to a dedicated temporary logfile. The framework also provides lockfile handling.
Shell Script Loader is a framework (in a helper script) that can be used by shell-script-based applications for easy including or loading of co-shell-scripts or subscripts. With this utility, scripters may now be able to apply multi-file or module-oriented scripting or programming in shells just like the way they are always done in known languages like Perl, PHP, and Ruby. The provided functions are load(), include(), and call() with the extended versions loadx(), includex(), and callx(). The extended versions can accept glob patterns and regular expressions. Shell Script Loader supports many shells including the very old ones like bash, zsh, ksh, pdksh, sh, ash, dsh, and all shells based on the original sh. Scripts made with Shell Script Loader may also be compiled to form a single script. A generic compiler written in awk is already available.
prll is a utility for parallelizing the execution of shell functions. It provides a convenient interface for parallelizing the execution of a single task over multiple data files or any other kind of data that you can pass as a shell function argument. It is meant to make it simple to fully utilize a multicore/multiprocessor machine. prll is designed to be used not just in shell scripts, but also in interactive shells. To make the latter convenient, it is implemented as a shell function. Shells are not very good at automatic job management, so prll uses helper programs, written in C. To prevent race conditions, System V Message Queues are used to signal job completion. Standard output is buffered and Semaphores are used to prevent interleaving.
The KornShell language is an interactive command language that provides access to the Unix system and to many other systems, on the many different computer systems on which it is implemented. The KornShell language is also a complete, powerful, high-level programming language for writing applications, often more easily and quickly than with other high-level languages. This makes it especially suitable for prototyping. There are two other widely used shells, the Bourne shell developed by Steven Bourne at AT&T Bell Laboratories, and the C shell developed by Bill Joy at the University of California. ksh has the best features of both, plus many new features of its own. Thus ksh can do much to enhance your productivity and the quality of your work, both in interacting with the system, and in programming. ksh programs are easier to write, and are more concise and readable than programs written in a lower level language such as C.