pssh-welcome

Paano gamitin ang parallel ssh (PSSH) para sa pagpapatupad ng ssh kahanay sa isang bilang ng mga server ng Linux / Unix / BSD

Kamakailan lamang dumating ako sa isang gandang maliit na nakakatawang tool na tinatawag na pssh upang magpatakbo ng isang solong utos sa maramihang mga Linux / UNIX / BSD server. Madali mong madaragdagan ang iyong productivy sa tool na ito ng SSH.

Higit pa tungkol sa pssh

pssh ay isang command line tool para sa pagpapatupad ng ssh kahanay sa ilang mga host. Kabilang sa mga specialty na ito ang:

  1. Nagpapadala ng input sa lahat ng mga proseso
  2. Pagpasok ng isang password sa ssh
  3. Pag-save ng output sa mga file
  4. Ang IT / sysadmin ay nagtatanggal ng automation tulad ng mga patching server
  5. Timing out at higit pa

Tingnan natin kung paano i-install at gamitin ang pssh sa sistema ng Linux at Unix.

pssh-welcome

instalasyon

Maaari mong i-install ang pssh ayon sa iyong Linux at Unix variant. Sa sandaling naka-install ang pakete, maaari kang makakuha ng mga parallel na bersyon ng mga openssh na tool. Kasama sa pag-install:

  1. Parallel ssh (pssh command)
  2. Parallel scp (pscp command)
  3. Parallel rsync (prsync command)
  4. Parallel nuke (pnuke command)
  5. Parallel slurp (pslurp command)

I-install ang pssh sa Debian / Ubuntu Linux

I-type ang sumusunod apt-get command/apt command mag-install ng pssh:
$ sudo apt install pssh
OR
$ sudo apt-get install pssh
Mga sample na output:

Fig.01: Pag-install ng pssh sa Debian / Ubuntu Linux

Fig.01: Pag-install ng pssh sa Debian / Ubuntu Linux

I-install ang pssh sa Apple MacOS X

I-type ang sumusunod na command ng serbesa:
$ brew install pssh
Mga sample na output:

Fig.02: Pag-install ng pssh sa MacOS Unix

Fig.02: Pag-install ng pssh sa MacOS Unix

I-install ang pssh sa FreeBSD unix

I-type ang alinman sa mga utos:
# cd / usr / ports / security / pssh / && gumawa mag-install malinis
OR
# pkg install pssh
Mga sample na output:

Fig.03: Pag-install ng pssh sa FreeBSD

Fig.03: Pag-install ng pssh sa FreeBSD

I-install ang pssh sa RHEL / CentOS / Fedora Linux

una i-on EPEL repo at i-type ang sumusunod na utos yum command:
$ sudo yum install pssh
Mga sample na output:

Fig.04: Pag-install ng pssh sa RHEL / CentOS / Red Hat Enterprise Linux

Fig.04: Pag-install ng pssh sa RHEL / CentOS / Red Hat Enterprise Linux

I-install ang pssh sa Fedora Linux

I-type ang sumusunod na command dnf:
$ sudo dnf install pssh
Mga sample na output:

Fig.05: Pag-install ng pssh sa Fedora

Fig.05: Pag-install ng pssh sa Fedora

I-install ang pssh sa Arch Linux

I-type ang sumusunod na command:
$ sudo pacman -S python-pip $ pip install pssh

Paano gamitin ang pssh command

Una kailangan mong lumikha ng isang text file na tinatawag na host file mula sa kung saan binasa ng pssh ang mga pangalan ng host. Ang syntax ay medyo simple. Ang bawat linya sa file ng host ay ng form [user @] host [: port] at maaaring isama ang mga blangko na linya at mga linya ng komento na nagsisimula sa "#". Narito ang aking sample file na pinangalanan ~ / .pssh_hosts_files:
$ cat ~ / .pssh_hosts_files vivek @ dellm6700 ugat @ 192.168.2.30 ugat @ 192.168.2.45 ugat @ 192.168.2.46
Patakbuhin ang petsa ng utos lahat ng mga host:
$ pssh -i -h ~ / .pssh_hosts_files petsa
Mga sample na output:

[1] 18: 10: 10 [SUCCESS] root @ 192.168.2.46 Sun Feb 26 18: 10: 10 IST 2017 [2] 18: 10: 10 [SUCCESS] vivek @ dellm6700 XXXXXX ] 26: 18: 10 [SUCCESS] ugat @ 10 Sun Feb 2017 3: 18: 10 IST 10 [192.168.2.45] 26: 18: 10 [SUCCESS] ugat @ 10 Sun Feb 2017 4: 18

Patakbuhin ang command ng uptime sa bawat host:
$ pssh -i -h ~ / .pssh_hosts_files uptime
Mga sample na output:

[1] 18: 11: 15 [SUCCESS] ugat @ 192.168.2.45 18: 11: 15 up 2: 29, 0 mga gumagamit, average average: 0.00, 0.00, 0.00 [2] 18: 11: 15: 6700: 18: 11: 15 : 19: 06 up 0: 0.13, 0.25 mga gumagamit, average average: 0.27, 3, 18 [11] 15: 192.168.2.46: 18 [SUCCESS] root @ 11 15: 1: 55 up 0: 0.00: 0.00: 0.00 [SUCCESS] root @ 4 18: 11: 15 up 192.168.2.30: 6: 11: 1 [SUCCESS] root @ 21 38: 0: 0.12 up 0.14: 0.09 XNUMX, XNUMX, XNUMX [XNUMX] XNUMX: XNUMX: XNUMX [SUCCESS] ugat @ XNUMX XNUMX: XNUMXPM up XNUMX day, XNUMX: XNUMX, XNUMX mga gumagamit, mag-load ng mga average: XNUMX, XNUMX, XNUMX

Maaari mo na ngayong i-automate ang karaniwang mga gawain ng sysadmin tulad ng patching lahat ng mga server:
$ pssh -h ~ / .pssh_hosts_files - sudo yum -y update
OR
$ pssh -h ~ / .pssh_hosts_files - sudo apt-get -y update $ pssh -h ~ / .pssh_hosts_files - sudo apt-get -y upgrade

Paano ko gagamitin ang pssh upang kopyahin ang file sa lahat ng mga server?

Ang syntax ay:
pscp -h ~ / .pssh_hosts_files src dest
Upang kopyahin ang $ HOME / demo.txt sa / tmp / sa lahat ng mga server, ipasok ang:
$ pscp -h ~ / .pssh_hosts_files $ HOME / demo.txt / tmp /
Mga sample na output:

[1] 18: 17: 35 [SUCCESS] vivek @ dellm6700 [2] 18: 17: 35 [SUCCESS] root @ 192.168.2.45 [3] 18: 17: 35 [SUCCESS] 192.168.2.46: 4: 18 [SUCCESS] ugat @ 17 [35] 192.168.2.30: XNUMX: XNUMX [SUCCESS] [TUNAYAN] ugat @ XNUMX

O gamitin ang prsync command para sa mahusay na pagkopya ng mga file:
$ prsync -h ~ / .pssh_hosts_files / etc / passwd / tmp / $ prsync -h ~ / .pssh_hosts_files * .html / var / www / html /

Paano ko papatayin ang mga proseso ng kahanay sa isang bilang ng mga host?

Gamitin ang command na pnuke para sa pagpatay ng mga proseso nang kahilera sa isang bilang ng mga host. Ang syntax ay:
$ pnuke -h .pssh_hosts_files process_name
### pumatay nginx at firefox sa mga nagho-host:
$ pnuke -h ~ / .pssh_hosts_files firefox $ pnuke -h ~ / .pssh_hosts_files nginx
Tingnan ang pssh / pscp command na mga pahina ng tao para sa karagdagang impormasyon.

Konklusyon

pssh ay isang medyo magandang kasangkapan para sa pagpaparis SSH command pagpapatupad sa maraming mga server. Ito ay lubos na kapaki-pakinabang kung mayroon kang 5 o 10 server. Gayunpaman, kung kailangan mong gumawa ng isang bagay na kumplikado dapat kang tumingin sa Ansible at co.
pinagmulan

Mag-iwan ng komento