Назад | Перейти на главную страницу

Одна и та же команда на нескольких серверах

Мне просто интересно, есть ли какой-нибудь системный администратор, которому нужно выполнить одну команду на нескольких серверах. Если да, то какую технику вы используете?

Я устал использовать ssh-соединение с 3-5 серверами и выполнять одно и то же снова и снова, поэтому я думаю облегчить себе жизнь.
Кроме того, я думаю, что мне нужно создать ключи, чтобы мне больше не приходилось вводить пароли (хотя я использую root). После 2 лет занятий этим у меня как бы появилась лень.

Я погуглил, я знаю о cssh, pssh, tentakel (это кажется крутым) и более про-жанровом - Puppet (о котором я только что слышал, не тратил время на чтение документации).

Кстати, я использую XP + putty, так что, если есть какая-нибудь шпатлевка, это тоже приветствуется. Если нет, я всегда могу подключиться по ssh к одному серверу и оттуда начать свое завоевание остальных серверов :) * evil *

Ударь меня. Спасибо.

Смотреть на:
clusterssh

Если вы рубиновый человек, тогда Capistrano стоит задуматься. Если вам нравится идея Puppet, то вам также стоит взглянуть на cfengine и bcfg2.

Мне действительно нравится Capistrano для обычных задач, хотя я не уверен, что использую его очень хорошо, и, вероятно, мне пригодятся некоторые тренировки. Для большего количества разовых задач я бы рекомендовал clusterssh.

Посмотри на:

http://www.millardsoftware.com/puttycs

Это оболочка вокруг PuTTy, которая выполняет функцию, аналогичную Cluster SSH.

dssh или pssh могут предоставить вам то, что вам нужно.

Если у вас настроены и установлены ключи ssh и вы хотите что-то простое:

#!/bin/bash
SRVLST="server1 server2"

for SRV in $SRVLST
do
    echo Logging into root\@$SRV
    ssh root@$SRV "$1"
done

Однако, если вы действительно хотите все контролировать должным образом, вам следует взглянуть на такую ​​утилиту, как Кукольный

Если вам нужно просто выполнить одни и те же команды на наборе серверов, я бы предложил clusterssh: я использую его регулярно, и он работает очень хорошо.