Let's dance with DSH!
The Problem
You are a developer troubleshooting performance issues on production and you want to look at server logs. The web servers are in a load-balancing cluster that you have no access to, and the incredible folks responsible for the devops of this setup do not have the very basics of centralized logging configured... Not that I've found myself in this situation... Uh, I'm asking for a friend of a friend... ;)
The Solution
Enter the dancer's shell, or DSH for short. This utility, available via most package managers out there, allows you to run the same command on multiple hosts, like so:
dsh -Mm server1.example.com,server2.example.com,server3.example.com uptime server1.example.com: 07:35:21 up 29 days, 19:03, 0 users, load average: 2.56, 3.40, 3.63 server2.example.com: 07:35:22 up 29 days, 6:42, 0 users, load average: 4.96, 5.49, 6.15
"So what?" you say, "Big deal. A simple for-loop can do that!" Well, that is true, but DSH does a bit more for you than that... You can pass commands like tail -f to it as well, and get an aggregated live stream of all remote server logs. "Now you are talking!" you think. I knew you'd come around!
DSH looks for some configuration files on /etc/dsh and /usr/local/dsh for machines and machine groups definitions.
Easy Peasy!
-PCP
- peter's blog
- Login or register to post comments