Absortio

Email → Summary → Bookmark → Email

ClusterShell

Extracto

ClusterShell library and tools

Resumen

Resumen Principal

ClusterShell se presenta como una solución fundamental para la gestión eficiente de comandos paralelos en entornos de Computación de Alto Rendimiento (HPC), abarcando desde granjas de servidores hasta grandes clústeres Linux. Su propósito principal es mitigar los desafíos inherentes a la administración de estas infraestructuras distribuidas, como la orquestación de comandos a grupos de nodos, la implementación de algoritmos de ejecución optimizados, y la recopilación y consolidación inteligente de resultados, incluyendo la fusión de salidas idénticas y la recuperación de códigos de retorno. Esta biblioteca está hábilmente diseñada para integrarse con las facilidades de shell remoto existentes, como SSH, lo que asegura una adopción sencilla y robusta. Al abstraer la complejidad de la ejecución distribuida, ClusterShell permite a los administradores de sistemas enfocarse en tareas de mayor nivel, mejorando drásticamente la eficiencia operativa y la consistencia en el manejo de clústeres a gran escala, y facilitando el diagnóstico y la automatización.

Elementos Clave

  • Ejecución Paralela y Gestión de Resultados Avanzada: ClusterShell se distingue por su capacidad para ejecutar comandos locales o distantes en paralelo en clústeres, enfrentando proactivamente los desafíos de HPC. Esto incluye la operación en grupos de nodos, el uso de algoritmos de ejecución optimizados para maximizar el rendimiento, y una gestión sofisticada de resultados que abarca la recopilación, la fusión de salidas idénticas y la recuperación precisa de códigos de retorno, lo que simplifica la administración y el análisis post-ejecución.
  • **Integración Transparente

Contenido

local or distant commands in parallel on server farms or on large Linux clusters. It will take care of common issues encountered on HPC clusters, such as operating on groups of nodes, running distributed commands using optimized execution algorithms, as well as gathering results and merging identical outputs, or retrieving return codes. ClusterShell takes advantage of existing remote shell facilities already installed on your systems, like SSH.

ClusterShell provides clush, clubak and cluset/nodeset, convenient command-line tools that allow traditional shell scripts to benefit from some of the library’s features:

  • clush: issue commands to cluster nodes and format output

Example of use:

$ clush -abL uname -r
node[32-49,51-71,80,82-150,156-159]: 2.6.18-164.11.1.el5
node[3-7,72-79]: 2.6.18-164.11.1.el5_lustre1.10.0.36
node[2,151-155]: 2.6.31.6-145.fc11.2.x86_64

See man clush for more details.

  • clubak: improved dshbak to gather and sort dsh-like outputs

See man clubak for more details.

  • nodeset (or cluset): compute advanced nodeset/nodegroup operations

Examples of use:

$ echo node160 node161 node162 node163 | nodeset -f
node[160-163]

$ nodeset -f node[0-7,32-159] node[160-163]
node[0-7,32-163]

$ nodeset -e node[160-163]
node160 node161 node162 node163

$ nodeset -f node[32-159] -x node33
node[32,34-159]

$ nodeset -f node[32-159] -i node[0-7,20-21,32,156-159]
node[32,156-159]

$ nodeset -f node[33-159] --xor node[32-33,156-159]
node[32,34-155]

$ nodeset -l
@oss
@mds
@io
@compute

$ nodeset -e @mds
node6 node7

See man nodeset (or man cluset) for more details.

Please visit the ClusterShell website.

Fuente: PyPI