The sys admin's daily grind: parallel SSH
Parallel SSH is the name of an easy-to-configure tool that our resident sys admin, Charly, now routinely deploys whenever he needs to launch the same programs, copy the same files, or kill the same processes simultaneously on multiple computers.
I am writing from a Linux seminar in the Linuxhotel in Essen, Germany. The environment here comprises four Xen virtualized machines. Identical changes to all cluster nodes are a regular requirement, which is a pain, but I have a utility up my sleeve: parallel SSH . Pssh relies on the SSH agent running, so I'll take care of that first:
After I enter the pass phrase for my SSH key, the AAH agent ensures that nobody will ask me for it, at least not during the current session. Next, I need a text file in which I add the IP addresses of the servers for which I need to set up simultaneous connections, so I'll start by adding three addresses to server.txt:
192.168.5.12 192.168.5.52 192.168.5.67
First, I will open an SSH connection to these three computers, run the uname command on them, and redirect the output to my pssh-out directory with the command line:
pssh -h server.txt -l charly -o /home/charly/pssh-out uname
Now I have three files below /home/charly/pssh-out named after the server IP addresses. And lo and behold, the files contain the uname command output (Figure 1). Pssh is thus similar to the Distributed Shell (DSH).
Two Hard-Hitting Tools
PSCP and PNuke, which are also part of the pssh package, work along the same principle.
PSCP copies files simultaneously to multiple target machines. This command adds a new message of the day to my servers:
pscp -h server.txt -l charly /etc/motd /etc/
PNuke sends a kill -9 to identically named processes on three servers
pnuke -l server.txt -l charly wget
and terminates any wget processes running on them. This frees up some bandwidth.
Brilliant. The most difficult thing about the pssh suite is saying its Internet page name, theether.org, without tripping over your own tongue.
- Parallel SSH: http://www.theether.org/pssh/
Richard Stallman calls for the W3C to remain independent of vendor interests.
The new release supports nine architectures, 73 human languages, and zero non-Free components.
Fedora developers release the first alpha version of Fedora 19, known as Schrödinger’s Cat, for general testing. The final release is expected in July 2013.
ack is a grep-like, command-line tool that has been optimized for programmers to search large trees of source code.
New features in SUSE Studio 1.3 include enhanced cloud integration, VM platform support, and lifecycle management.
The Linux Foundation recently announced that the Xen Project is becoming a Linux Foundation Collaborative Project.
Open source version of LiveCode is now available for developing apps, games, and utilities for all major platforms.
OpenDaylight is an open source software-defined networking project committed to furthering adoption of SDN and accelerating innovation in a vendor-neutral and open environment.
The new Gnome release includes privacy and sharing settings, allowing more user control over access to personal information.
Mozilla is collaborating with Samsung on a new web browser engine called Servo.