Ask HN: How do you easily manage multiple remote servers?

1 points by thsowers ↗ HN
I manage a lot of VPS servers (Linode, Digital Ocean) for work. At first, it was no problem to just SSH in and do maintenance, package upgrades, manage iptables, etc, but I don't find that this scales well past 10+ or so servers (now have upwards of 20).

I'm aware that there are commercial products available, like Parallels, and Canonical's Landscape. However, only some of my servers are running Ubuntu, so that rules out Landscape, and in my limited understanding, running a command panel like Parallels really increases the attack surface on my servers.

Currently I use terminator with broadcasting to simultaneously type on multiple terminals. Are there better options? What tools would you recommend?

3 comments

[ 3.6 ms ] story [ 19.0 ms ] thread
Much better option: puppet, chef, ansible, or any other configuration management / automated systems administration tool.

Stop logging in to boxes to change them. Instead, make a change in your version-controlled config repository, get a machine to test it, and if it works, roll it out to all the machines with that role. Or do half of them, and wait for things to settle, and then do the other half. Lots of options.

You might want to read The Practice of System Administration -- http://everythingsysadmin.com/

I'll be sure to check those out as well as the link. My knowledge of system administration is lacking, particularly in the Best Practices area, but it's a task that has fallen to me, so I would welcome any other SysAdmin 101 material. Thank you!
Also check out LOPSA, the League of Professional Systems Administrators at www.lopsa.org. Join their irc channels and mailing lists. Very helpful people.