Pssh - Ipatuman ang mga Sugo sa Daghang Remote Linux Server Gamit ang Usa ka Terminal


Sa walay duhaduha, kana ang OpenSSH usa sa labing kaylap nga gigamit ug gamhanan nga himan nga magamit alang sa Linux, nga nagtugot kanimo sa pagkonektar nga luwas sa hilit nga mga sistema sa Linux pinaagi sa usa ka kabhang ug nagtugot kanimo sa pagbalhin sa mga file nga luwas ngadto ug gikan sa mga hilit nga sistema.

Apan ang pinakadako nga disbentaha sa OpenSSH mao nga, dili nimo mahimo ang parehas nga mando sa daghang mga host sa usa ka lakaw ug ang OpenSSH wala gihimo aron mahimo ang ingon nga mga buluhaton. Dinhi diin magamit ang Parallel SSH o PSSH nga himan, usa ka aplikasyon nga nakabase sa python, nga nagtugot kanimo sa pagpatuman sa mga mando sa daghang mga host nga managsama sa parehas nga oras.

Ayaw Kalimti: Ipatuman ang mga Sugo sa Daghang Linux Server Gamit ang DSH Tool

Ang PSSH nga himan naglakip sa parallel nga mga bersyon sa OpenSSH ug may kalabutan nga mga himan sama sa:

  1. pssh – usa ka programa para sa pagpadagan sa ssh nga magkaparehas sa daghang hilit nga mga host.
  2. pscp – usa ka programa para sa pagkopya sa mga file nga susama sa daghang host.
    1. Pscp – Kopyaha/Pagbalhin sa mga File Duha o Dugang nga Remote Linux Servers

    Kini nga mga himan maayo alang sa mga System Administrator nga nakit-an ang ilang kaugalingon nga nagtrabaho sa daghang mga koleksyon sa mga node sa usa ka network.

    I-install ang PSSH o Parallel SSH sa Linux

    Niini nga giya, atong tan-awon ang mga lakang sa pag-instalar sa pinakabag-o nga bersyon sa PSSH (ie version 2.3.1) nga programa sa Fedora based distributions sama sa CentOS/RedHat ug Debian derivatives sama sa Ubuntu/Mint gamit ang pip command.

    Ang pip command kay gamay nga programa (kapuli sa easy_install script) para sa pag-install ug pagdumala sa Python software packages index.

    Sa mga distribusyon sa CentOS/RHEL, kinahanglan nimo nga i-install una ang pip (ie python-pip) nga pakete sa ilawom sa imong sistema, aron ma-install ang PSSH nga programa.

    # yum install python-pip
    

    Sa Fedora 21+, kinahanglan nimo nga padaganon ang dnf command imbes yum (dnf gipuli yum).

    # dnf install python-pip
    

    Kung na-install na nimo ang pip tool, mahimo nimong i-install ang pssh package sa tabang sa pip command sama sa gipakita.

    # pip install pssh  
    
    /usr/lib/python2.6/site-packages/pip/_vendor/requests/packages/urllib3/util/ssl_.py:90: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. For more information, see https://urllib3.readthedocs.org/en/latest/security.html#insecureplatformwarning.
      InsecurePlatformWarning
    You are using pip version 7.1.0, however version 7.1.2 is available.
    You should consider upgrading via the 'pip install --upgrade pip' command.
    Collecting pssh
    /usr/lib/python2.6/site-packages/pip/_vendor/requests/packages/urllib3/util/ssl_.py:90: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. For more information, see https://urllib3.readthedocs.org/en/latest/security.html#insecureplatformwarning.
      InsecurePlatformWarning
      Downloading pssh-2.3.1.tar.gz
    Installing collected packages: pssh
      Running setup.py install for pssh
    Successfully installed pssh-2.3.1
    

    Sa mga distribusyon nga nakabase sa Debian nagkinahanglan og usa ka minuto aron ma-install ang pssh gamit ang pip command.

    $ sudo apt-get install python-pip
    $ sudo pip install pssh
    
    Downloading/unpacking pssh
      Downloading pssh-2.3.1.tar.gz
      Running setup.py (path:/tmp/pip_build_root/pssh/setup.py) egg_info for package pssh
        
    Installing collected packages: pssh
      Running setup.py install for pssh
        changing mode of build/scripts-2.7/pssh from 644 to 755
        changing mode of build/scripts-2.7/pnuke from 644 to 755
        changing mode of build/scripts-2.7/prsync from 644 to 755
        changing mode of build/scripts-2.7/pslurp from 644 to 755
        changing mode of build/scripts-2.7/pscp from 644 to 755
        changing mode of build/scripts-2.7/pssh-askpass from 644 to 755
        
        changing mode of /usr/local/bin/pscp to 755
        changing mode of /usr/local/bin/pssh-askpass to 755
        changing mode of /usr/local/bin/pssh to 755
        changing mode of /usr/local/bin/prsync to 755
        changing mode of /usr/local/bin/pnuke to 755
        changing mode of /usr/local/bin/pslurp to 755
    Successfully installed pssh
    Cleaning up...
    

    Sama sa imong makita gikan sa output sa ibabaw, ang pinakabag-o nga bersyon sa pssh na-install na sa sistema.

    Unsaon nako paggamit ang pssh?

    Kung gamiton ang pssh kinahanglan nimo nga maghimo usa ka host file nga adunay gidaghanon sa mga host kauban ang IP address ug numero sa port nga kinahanglan nimo nga makonektar sa mga hilit nga sistema gamit ang pssh.

    Ang mga linya sa host file anaa sa mosunod nga porma ug mahimo usab nga maglakip sa mga blangko nga linya ug mga komentaryo.

    192.168.0.10:22
    192.168.0.11:22
    

    Mahimo nimong ipatuman ang bisan unsang usa ka mando sa lainlain o daghang mga host sa Linux sa usa ka network pinaagi sa pagpadagan sa usa ka pssh nga mando. Adunay daghang mga kapilian nga magamit sa pssh sama sa gihulagway sa ubos:

    Atong tan-awon ang pipila ka mga paagi sa pagpatuman sa mga mando sa daghang mga host gamit ang pssh nga adunay lainlaing mga kapilian.

    1. Aron mabasa ang mga host file, iapil ang -h host_file-name o –hosts host_file_name nga kapilian.
    2. Aron ilakip ang usa ka default nga username sa tanang mga host nga wala magtino sa usa ka piho nga user, gamita ang -l username o –user username nga kapilian.
    3. Mahimo usab nimong ipakita ang standard nga output ug standard error samtang makompleto ang matag host. Pinaagi sa paggamit sa -i o –inline nga opsyon.
    4. Mahimo nimong himoon ang mga koneksyon nga mohunong human sa gihatag nga gidaghanon sa mga segundo pinaagi sa paglakip sa opsyon nga -t number_of_seconds.
    5. Aron i-save ang standard nga output sa gihatag nga direktoryo, mahimo nimong gamiton ang -o /directory/path nga opsyon.
    6. Aron mangayo og password ug ipadala sa ssh, gamita ang -A nga opsyon.

    Atong tan-awon ang pipila ka mga pananglitan ug paggamit sa mga sugo sa pssh:

    1. Aron ipatuman ang echo \Hello TecMint sa terminal sa daghang Linux host pinaagi sa root user ug pag-aghat sa password sa root user, padagana kini nga command sa ubos.

    Importante: Hinumdumi nga ang tanan nga mga host kinahanglan nga ilakip sa host file.

    # 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
    

    Mubo nga sulat: Sa ibabaw nga sugo pssh-hosts mao ang usa ka file uban sa listahan sa mga hilit nga Linux servers IP address ug SSH port numero nga imong gusto sa pagpatuman sa mga sugo.

    2. Aron mahibal-an ang paggamit sa espasyo sa disk sa daghang mga server sa Linux sa imong network, mahimo nimong ipadagan ang usa ka mando sama sa mosunod.

    # 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
    

    3. Kung gusto nimo mahibal-an ang oras sa daghang mga server sa Linux sa usa ka lakaw, mahimo nimong ipadagan ang mosunod nga mando.

    # 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
    

    Mahimo nimong tan-awon ang manual entry page alang sa pssh command aron makakuha og daghang mga kapilian aron mahibal-an ang daghang mga paagi sa paggamit sa pssh.

    # pssh --help
    

    Summary

    Ang Parallel SSH o PSSH usa ka maayong himan nga gamiton alang sa pagpatuman sa mga sugo sa usa ka palibot diin ang usa ka System Administrator kinahanglan nga magtrabaho uban sa daghang mga server sa usa ka network. Kini makapasayon alang sa mga sugo nga ipatuman sa layo sa lain-laing mga host sa usa ka network.

    Hinaot nga imong makit-an nga kini nga giya mapuslanon ug kung adunay bisan unsang dugang nga kasayuran bahin sa pssh o mga sayup samtang nag-install o gigamit kini, ayaw paglangan sa pag-post sa usa ka komento.