170 похожих чатов

Подскажите, пожалуйста. Есть у меня csv-файл, там пары значений ip

- hostname. Достаточно много, от пары сотен. Нужно по ssh подключиться к каждому и дать команду "hostname <hostname>". Есть ли какие готовые библиотеки для питона чтобы обрабатывать по несколько хостов одновременно? Смотрел fabric, там есть threadinggoup, но оно может только одну команду на все хосты в группе, а тут получается каждому хосту свою нужно будет сгенерировать.

12 ответов

8 просмотров

а что мешает использовать обычную либу SSH и многопоток тем же threading?

Dmitry-Popovich Автор вопроса
kallibr44
а что мешает использовать обычную либу SSH и много...

можно, конечно, думал, может есть готовое решение уже.

Крайне не рекомендую из скриптов ходить на сервера по ssh и что то делать с высокими привелегиями (hostname будет иметь эффект от рута только). В наборе сисадмина должен быть не только питон. Рассмотри решения ansible или puppet

Dmitry-Popovich Автор вопроса
Alexander
Крайне не рекомендую из скриптов ходить на сервера...

я знаю, но в данной ситуации это единственный вариант, к сожалению

Dmitry Popovich
я знаю, но в данной ситуации это единственный вари...

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

Dmitry-Popovich Автор вопроса
Митя Eremeev
да , лучше оркестраторы юзай. а если уж питон реши...

я 200 уже обходил. Медленно. А мне итого 2000 нужно )) там нельзя оркестраторы использовать. Это суть даже не серверы, одноплатники армовские

Dmitry Popovich
я 200 уже обходил. Медленно. А мне итого 2000 нужн...

почему оркестрировать нельзя ? ансибл вроде агента не требует

Dmitry Popovich
я 200 уже обходил. Медленно. А мне итого 2000 нужн...

Ансибл требует только питон. В конце концов можно на парамико написать скрипт. Он сам облезет Хосты по ссш и выполнит чо надо

Dmitry-Popovich Автор вопроса
Vlad Tikhonov
Ансибл требует только питон. В конце концов можно ...

там нет питона, плюс мне один раз всего это сделать нужно

Звучит как задача для ansible

Похожие вопросы

Обсуждают сегодня

30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
в JclConsole объявлено так: function CtrlHandler(CtrlType: DWORD): BOOL; stdcall; - где ваше объявление с stdcall? у вас на картинке нет stdcall
Karagy
8
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
~ 2m21s  nix shell github:nixos/nixpkgs#stack ~  stack ghc -- --version error: … while calling the 'derivationStrict' builtin at /builtin/derivation.nix:...
Rebuild your mind.
6
Карта сайта