cssh: Cluster SSH

cssh.jpg[spanish]

Cluster SSH (cssh) es uno de los mayores inventos de la humanidad. En serio. O al menos para los administradores de sistemas. :-) Es uno de esos programas que una vez que lo conoces y empiezas a usarlo, te preguntas cómo habías podido sobrevivir años sin conocerlo.

A cssh se le indica un usuario y varias máquinas, y abre una sesión SSH con cada una de ellas en una ventana independiente.  Podemos trabajar sobre cada una de ellas de forma individual, o en la consola de cssh que replica lo que escribamos en TODAS las sesiones SSH.

Es super útil cuando se trabaja con granjas de servidores, clusters, etc. Sin ir más lejos estos días estoy haciendo unas tareas de mantenimiento en un ISP sobre una granja de 32 servidoes: uno a uno cada cambio serían horas, con cssh es cuestión de minutos. :) Además como replica cada pulsación de teclas, podemos incluso abrir un vi en todas las sesiones a la vez, movernos por el fichero y editarlo en todos los servidores de golpe, eso si, con mucho cuidado. ;)

[/spanish][english]

Cluster SSH (cssh) is one of mankind’s greatest achievements. Really. Or at least, from a sysadmin point of view. :-) It’s one of those programs that, once you know it and start using it, you wonder how were you able to survive all those dark years without it.

cssh takes a username and several IP addresses on the command line, and opens a SSH session against each of those servers on an independent xterm window. Then, you can click on any of these windows and work independently with that particular server, or go back to the cssh console and write there, and ssh will retransmit each keypress to every SSH session.

This is a very useful tool when working with server farms, clusters, etc. For example lately I’ve been doing some monitoring and maintenance tasks on a 32-server farm on a major ISP: one by one each config modification would have take hours, with cssh it is a matter of minutes. :) Besides, as it replicates every keypress, it even works with text editors like vi: you can edit a file on every server at the same time, navigate through it, modify it… in parallel on every server. You have to be very careful when doing this, though. ;)
[/english]

4 comentarios sobre “cssh: Cluster SSH”

  1. Es como lo que hace AÑOS hace Konsole de KDE. Esta funcionalidad de replicar en varias pestañas la entrada del teclado esta incluida por defecto en la aplicación Konsole de KDE 3+.

  2. No lo sabía. No todo el mundo usa KDE. ;-) De todas formas si replica entre las pestañas, supongo que sólo ves la salida de una de ellas, la que tengas seleccionada, ¿no? Casi que prefiero ver la de todas a la vez, para no ir a ciegas y cagarla. :-)
    En cualquier caso, con Konsole o con cssh, es algo impagable cuando tienes que administrar un cluster de más de 3 ó 4 máquinas. :-)

  3. Ayer tenia el problema de accesar a todos los nodos de un cluster con mi macbook, y necesaitaba una consola que me replicara la entrada de teclado en todas las pestañas. Al bajar el ClusterSSH para Mac vi que era un poco complejo instalarlo. Y segui buscando hasta que encontre una maravilla llamada iTerm. Es una consola mejorada para Mac Os X 10.4+ y tiene las funcionalidades que necesitaba… la recomiendo. Para administrar clusters con Mac es una excelente opcion.
    El link http://iterm.sourceforge.net/

  4. Vaya, no lo conocía y tiene muy buena pinta. Gracias! :-)
    En el trabajo uso Linux así que seguiré con el cssh, pero en casa si que tengo un MacOS X, eso si, de administrar clusters en casa como que no. ;-) Aún así parece merjo que el Terminal que trae el OS X.

Deja un comentario

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.