skillfed

ClusterShell

ClusterShell library and tools

clustershell v1.10.1 260.8K downloads/30d#8,391 on PyPI473
Copyleft license LGPLv2+ Active released

What it is and what it does

ClusterShell is a production-stable Python framework for event-driven parallel command execution across server farms and HPC clusters. It abstracts away the complexity of coordinating distributed work by handling node grouping, optimized execution algorithms, result gathering, and output deduplication. The package includes three command-line tools: clush for issuing commands to cluster nodes with formatted output, clubak for aggregating and sorting distributed outputs, and nodeset for computing advanced node group operations (expansion, intersection, exclusion, etc.).

The framework is designed for system administrators managing large Linux clusters. It leverages existing remote shell infrastructure like SSH rather than requiring new deployment mechanisms. With a single runtime dependency (PyYAML) and low install friction, it integrates into existing cluster management workflows. The project is actively maintained, has been in use since 2010, and carries no known security vulnerabilities.

Use it for:

  • Run a command across a range of cluster nodes and collect results in a compact, deduplicated format.
  • Compute node group operations like expanding ranges (node[1-10]) or finding intersections of node sets.
  • Gather and sort outputs from distributed shell commands using clubak, replacing or improving on dshbak.
  • Automate cluster administration tasks that require parallel execution across many nodes with SSH.
  • Build cluster management scripts that need to parse, filter, and manipulate node group specifications.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

ClusterShell is a Python framework for running commands in parallel across many nodes in a cluster, with tools to manage node groups, aggregate results, and handle distributed execution.

Yes. ClusterShell is production-stable, actively maintained, carries no known vulnerabilities, and has minimal dependencies. Install it if you manage or script operations on Linux clusters or HPC systems and need parallel command execution with node group abstractions. The copyleft license is standard for system tools; verify compatibility with your deployment model if you plan to redistribute.

Install

clustershell on PyPI

pip

pip install clustershell

uv

uv add clustershell

poetry

poetry add clustershell

Installing ClusterShell

Before you install

Low install friction with a single runtime dependency (PyYAML). Actively maintained with a recent release; last commit was 2026-08-04 and the project has 473 stars.

License in practice

Licensed under LGPLv2+, a copyleft license. You may use and modify the package freely, but any derivative work must also be distributed under the same or compatible license terms.

Quickstart

pip install clustershell

from clustershell.task import Task
from clustershell.group import NodeSet

task = Task()
task.run_command('uname -r', nodes='node[1-10]')

Requires SSH or other remote shell facilities already installed on target systems; designed for Linux/POSIX environments.

Verify before relying

  • Whether the package supports modern Python versions beyond what classifiers indicate (2.7 and 3.x are listed but no specific 3.x version floor is stated).
  • Performance characteristics and scalability limits for very large clusters.

Package facts

License LGPLv2+ (copyleft)
Python support not specified
Install friction low — pure-Python wheel
Runtime dependencies 1 — PyYAML
Maintenance actively maintained — 29 days since the last release
Last repo commit
First released
Downloads 260,808/month — #8,391 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: clustershell-1.10.1-py3-none-any.whl

Keywords: clustershell, clush, clubak, nodeset

Development Status :: 5 - Production/StableEnvironment :: ConsoleIntended Audience :: System AdministratorsLicense :: OSI Approved :: GNU Lesser General Public License v2 or later (LGPLv2+)Operating System :: MacOS :: MacOS XOperating System :: POSIX :: BSDOperating System :: POSIX :: LinuxProgramming Language :: PythonProgramming Language :: Python :: 2.7Programming Language :: Python :: 3Topic :: Software Development :: Libraries :: Python ModulesTopic :: System :: ClusteringTopic :: System :: Distributed Computing

Tags

parallel command execution clustersdistributed task runner nodescluster node managementHPC command executionnodeset operationsclush parallel shellcluster result aggregation
cluster-managementparallel-executionhpc

More Python Modules packages