PSSH – paleiskite komandas keliose nuotolinėse Linux sistemose


Be jokios abejonės, OpenSSH yra vienas iš plačiausiai naudojamų ir galingiausių Linux įrankių, leidžiančių saugiai prisijungti prie nuotolinių Linux sistemų per apvalkalą ir saugiai perkelti failus į ir iš nuotolinių sistemų.

Tačiau didžiausias OpenSSH trūkumas yra tas, kad negalite vienu metu vykdyti tos pačios komandos keliuose pagrindiniuose kompiuteriuose, o OpenSSH nėra sukurta tokioms užduotims atlikti.

Čia praverčia Parallel SSH arba PSSH įrankis – „Python“ pagrindu sukurta programa, leidžianti vienu metu vykdyti komandas keliuose pagrindiniuose kompiuteriuose lygiagrečiai.

Įrankyje PSSH yra lygiagrečių OpenSSH versijų ir susijusių įrankių, pvz.:

  • pssh – programa, skirta ssh lygiagrečiai paleisti keliuose nuotoliniuose kompiuteriuose.
  • pscp – programa, skirta failams kopijuoti lygiagrečiai į daugybę pagrindinių kompiuterių.
  • prsync – programa, skirta efektyviai kopijuoti failus į kelis pagrindinius kompiuterius lygiagrečiai.
  • pnuke – lygiagrečiai užmuša procesus keliuose nuotoliniuose kompiuteriuose.
  • pslurp – lygiagrečiai kopijuoja failus iš kelių nuotolinių kompiuterių į centrinį pagrindinį kompiuterį.

Šie įrankiai tinka sistemos administratoriams, kurie dirba su didelėmis tinklo mazgų kolekcijomis.

Įdiekite PSSH arba Parallel SSH sistemoje „Linux“.

Šiame vadove apžvelgsime naujausios PSSH programos versijos (t. y. versija 2.3.1) diegimo veiksmus RHEL pagrįstuose platinimuose, tokiuose kaip Fedora, CentOS Stream , „Rocky & AlmaLinux“ ir „Debian“ pagrindu sukurtų platinimų, pvz., Ubuntu ir Linux Mint, naudojant pip komandą.

Komanda pip yra nedidelė programa (pakeičianti easy_install scenarijų), skirta įdiegti ir valdyti Python programinės įrangos paketų indeksą.

Apie RHEL pagrįstą platinimą

Jei naudojate RHEL platinimą, pirmiausia turite įdiegti pip paketą (t. y. python-pip), kad įdiegtumėte PSSH programa naudojant yum arba dnf.

yum install python-pip
OR
dnf install python-pip

Įdiegę pip įrankį, galite įdiegti pssh paketą naudodami komandą pip, kaip parodyta toliau.

pip install pssh  

Debianu pagrįstuose platinimuose

„Debian“ pagrindu sukurtuose platinimuose pssh įdiegimas trunka minutę, naudojant komandą pip.

sudo apt install python-pip
sudo pip install pssh

Kaip naudoti pssh „Linux“?

Kai naudojate pssh, turite sukurti pagrindinio kompiuterio failą su prieglobų skaičiumi kartu su IP adresu ir prievado numeriu, kurių reikia norint prisijungti prie nuotolinių sistemų naudojant pssh.

Pagrindinio failo eilutės yra tokios formos, taip pat gali būti tuščių eilučių ir komentarų.

192.168.0.10:22
192.168.0.11:22

Vykdykite vieną komandą keliuose „Linux“ serveriuose

Galite vykdyti bet kurią komandą skirtinguose arba keliuose tinklo „Linux“ pagrindiniuose kompiuteriuose, vykdydami komandą pssh. Yra daug parinkčių, kurias galima naudoti su pssh, kaip aprašyta toliau:

Išnagrinėsime kelis būdus, kaip vykdyti komandas įvairiuose pagrindiniuose kompiuteriuose naudojant pssh su skirtingomis parinktimis.

  • Norėdami nuskaityti pagrindinio kompiuterio failą, įtraukite parinktį -h host_file-name arba --hosts prieglobos prieglobos failo_pavadinimas.
  • Jei norite įtraukti numatytąjį vartotojo vardą į visus pagrindinius kompiuterius, kurie neapibrėžia konkretaus vartotojo, naudokite parinktį -l vartotojo vardas arba --naudotojo vartotojo vardas.
  • Taip pat galite rodyti standartinę išvestį ir standartinę klaidą, kai kiekviena priegloba baigia. Naudodami parinktį -i arba --inline.
  • Galbūt norėsite, kad prisijungimo laikas pasibaigtų po nurodyto sekundžių skaičiaus, įtraukdami parinktį -t number_of_seconds.
  • Norėdami išsaugoti standartinę išvestį nurodytame kataloge, galite naudoti parinktį -o /katalogas/kelias.
  • Norėdami paprašyti slaptažodžio ir išsiųsti jį į SSH, naudokite parinktį -A.

Pažiūrėkime kelis pssh komandų pavyzdžius ir naudojimą:

Vykdykite komandas keliuose „Linux“ kompiuteriuose

1. Norėdami paleisti aidą „Hello TecMint“ kelių „Linux“ prieglobų terminale, kurį galėtų atlikti pagrindinis naudotojas, ir paraginti įvesti pagrindinio vartotojo slaptažodį, paleiskite šią komandą toliau.

Svarbu: atminkite, kad visos prieglobos turi būti įtrauktos į pagrindinio kompiuterio failą.

pssh -h pssh-hosts -l root -A echo "Hello TecMint"

Warning: do not enter your password if anyone else has superuser
privileges or access to your account.
Password: 
[1] 15:54:55 [SUCCESS] 192.168.0.10:22
[2] 15:54:56 [SUCCESS] 192.168.0.11:22

Pastaba: aukščiau pateiktoje komandoje „pssh-hosts“ yra failas su nuotolinio „Linux“ serverio IP adreso ir SSH prievado numerio sąrašu. kad norite vykdyti komandas.

Raskite kelių „Linux“ pagrindinių kompiuterių disko naudojimą

2. Norėdami sužinoti vietos diske sunaudojimą keliuose tinklo Linux serveriuose, galite paleisti vieną komandą, kaip nurodyta toliau.

pssh -h pssh-hosts -l root -A -i "df -hT"

Warning: do not enter your password if anyone else has superuser
privileges or access to your account.
Password: 
[1] 16:04:18 [SUCCESS] 192.168.0.10:22
Filesystem     Type   Size  Used Avail Use% Mounted on
/dev/sda3      ext4    38G  4.3G   32G  12% /
tmpfs          tmpfs  499M     0  499M   0% /dev/shm
/dev/sda1      ext4   190M   25M  156M  14% /boot

[2] 16:04:18 [SUCCESS] 192.168.0.11:22
Filesystem              Type      Size  Used Avail Use% Mounted on
/dev/mapper/centos-root xfs        30G  9.8G   20G  34% /
devtmpfs                devtmpfs  488M     0  488M   0% /dev
tmpfs                   tmpfs     497M  148K  497M   1% /dev/shm
tmpfs                   tmpfs     497M  7.0M  490M   2% /run
tmpfs                   tmpfs     497M     0  497M   0% /sys/fs/cgroup
/dev/sda1               xfs       497M  166M  332M  34% /boot

Raskite kelių „Linux“ kompiuterių veikimo laiką

3. Jei norite sužinoti kelių „Linux“ serverių veikimo laiką vienu metu, galite paleisti šią komandą.

pssh -h pssh-hosts -l root -A -i "uptime"
Warning: do not enter your password if anyone else has superuser
privileges or access to your account.
Password: 
[1] 16:09:03 [SUCCESS] 192.168.0.10:22
 16:09:01 up  1:00,  2 users,  load average: 0.07, 0.02, 0.00

[2] 16:09:03 [SUCCESS] 192.168.0.11:22
 06:39:03 up  1:00,  2 users,  load average: 0.00, 0.06, 0.09

Galite peržiūrėti rankinio įvedimo puslapį pssh komandai, kad gautumėte daug kitų parinkčių ir sužinotumėte daugiau pssh naudojimo būdų.

pssh --help

Santrauka

Lygiagretusis SSH arba PSSH yra geras įrankis komandoms vykdyti aplinkoje, kurioje sistemos administratorius turi dirbti su daugeliu tinklo serverių. . Taip bus lengviau nuotoliniu būdu vykdyti komandas skirtinguose tinklo pagrindiniuose kompiuteriuose.

Tikimės, kad šis vadovas jums bus naudingas, o jei turite papildomos informacijos apie pssh arba įdiegiant ar naudojant klaidas, nedvejodami parašykite komentarą.