Есть ли альтернатива Clusterssh, pssh и т. Д. Для управления несколькими серверами на основе ssh через один интерфейс?
Одним из недостатков Clusterssh является то, что мои серверы используют аутентификацию на основе ключей с парольной фразой для входа в систему, и нет возможности войти на серверы с помощью закрытого ключа.
Есть ли альтернатива, которая поддерживает аутентификацию с закрытыми ключами?
linux
ssh
cluster
remote-access
Фархан
источник
источник
pssh
? Вам нужна параллельная или просто программа для управления несколькими SSH серверами?pssh
«S-P
вариант.Ответы:
Взгляните на Rundeck - http://rundeck.org/
источник
ткань
Сначала определите ваши задачи:
Затем выполняется через
fab
инструмент командной строки:источник
Вы можете сделать все возможное и установить систему управления конфигурацией, такую как Puppet или Chef . Вы не упомянули, сколько узлов вы на самом деле пытаетесь управлять, так что это может быть излишним, но, конечно, вы можете централизованно управлять многими машинами таким образом. Если вы сейчас маленький, но растете, возможно, вы захотите настроить, скажем, Chef, прежде чем вы станете намного больше.
Если вам нужно выполнить специальные команды для определенного набора узлов, вы можете сделать что-то вроде
knife ssh 'roles:webserver' 'hostname'
(нож - это инструмент командной строки для chef), чтобы запуститьhostname
команду для всех узлов, имеющих роль веб-сервера.источник
Я использую ожидаю сценарии для автоматизации входов в систему (особенно потому, что мне нужно пройти через пустое поле и войти в chroot, и нужно ввести много паролей), и я внес некоторые «изменения» в конфигурацию cssh. Итак, у меня есть этот «основной сценарий» в папке bin, которому присвоено «имя сервера / псевдоним», он переводит меня на сервер, который я хочу и где я хочу.
В ~ / .clusterssh / config я установил параметр "ssh", чтобы он указывал на мой скрипт, также для "ssh_args" должно быть установлено какое-то безобидное / поддельное аргумент, потому что cssh имеет свой список аргументов по умолчанию, если на самом деле оставить его пустым список по умолчанию окажется в сценарии.
Таким образом, сценарий (в каждом окне / терминале) будет получать эти аргументы и 1 из аргументов, переданных cssh, сценарий, который он восстанавливает из файла для данного сервера, набор учетных данных и шаги, которые он должен выполнить, чтобы получить Я хочу, тогда он вызывает «код ожидания» со всеми этими данными.
~ / .Clusterssh / конфигурации
qs.sh
поэтому я обычно называю это чем-то вроде этого
это работает также с "псевдонимами кластера", имеющими кластер "qAll q4 q5 q6 q7", который я могу вызвать с помощью cssh qAll
Надежды это помогает кому-то еще.
источник
Я предпочитаю shmux для выполнения одной и той же команды на многих хостах параллельно.
источник
Вам также следует обратить внимание на MCollective , который, вероятно, является лучшим и наиболее гибким способом взаимодействия с несколькими серверами в режиме реального времени. Это немного сложная задача для правильной настройки и может быть слишком много для ваших нужд, но это, безусловно, лучше, чем pssh, Clusterssh и все другие решения на основе SSH. И как только вы это сделаете, вы, вероятно, ничего не сможете с этим поделать, при условии, что вы немного знаете Ruby.
источник
Я задавал себе тот же вопрос, так как я обнаружил, что зависимость clusterssh от X11 или XQuartz от Mac OS X раздражает, и, кроме того, окна терминала, открываемые clusterssh, выглядят более страшными, чем в Terminal.app
Вот как я наткнулся на сценарий на основе tmux от Joerg Jaspert в его блоге: http://blog.ganneff.de/blog/2013/03/tmux---like-screen-just-nicer.html.
источник
Приглашение bash работает для простых вещей:
составьте список серверов в файле Servers.txt, по одной строке на сервер.
затем сделайте:
источник