4 Uporabna orodja za izvajanje ukazov na več strežnikih Linux


V tem članku bomo pokazali, kako hkrati izvajati ukaze na več strežnikih Linux. Pojasnili bomo, kako uporabiti nekatera od splošno znanih orodij, namenjenih za izvajanje ponavljajočih se ukazov hkrati na več strežnikih. Ta priročnik je uporaben za sistemske skrbnike, ki morajo običajno vsak dan preverjati zdravje več strežnikov Linux.

Za namen tega članka predvidevamo, da že imate nastavljeno SSH za dostop do vseh vaših strežnikov, drugič, če hkrati dostopate do več strežnikov, je primerno, da na vseh svojih strežnikih Linux nastavite SSH brez gesel. To predvsem povečuje varnost strežnika in omogoča tudi enostaven dostop.

1. PSSH - Vzporedni SSH

paralelno-scp, vzporedno-rsync, vzporedno-slurp in vzporedno-nuklearno (za več informacij preberite man stran določenega orodja).

Če želite namestiti vzporedni-ssh, morate najprej namestiti PIP v sistem Linux.

$ sudo apt install python-pip python-setuptools 	#Debian/Ubuntu 
# yum install python-pip python-setuptools	        #RHEL/CentOS 
# dnf install python-pip python-setuptools	        #Fedora 22+

Nato namestite vzporedno-ssh z uporabo pipa na naslednji način.

$ sudo pip install parallel-ssh

Nato vnesite imena gostiteljev ali naslove IP oddaljenega strežnika Linux s vrati SSH v datoteko, imenovano gostitelji (poimenujete jo lahko karkoli želite):

$ vim hosts
192.168.0.10:22
192.168.0.11:22
192.168.0.12:22

Shranite datoteko in jo zaprite.

Zdaj zaženite vzporedno-ssh, podajte datoteko hosts z možnostjo -h in ukazi, ki se bodo izvajali na vseh navedenih strežnikih. Zastavica -i pomeni prikaz std izhoda in std napake po zaključku izvajanja ukaza na vsakem strežniku.

$ parallel-ssh -h hosts "uptime; df -h"

Prav tako morate preveriti: Kako izvajati več ukazov na več strežnikih Linux

2. Pdsh - Pripomoček za vzporedne oddaljene lupine

Pdsh je odprtokodno, preprosto vzporedno orodje za oddaljeno lupino za izvajanje ukazov na več strežnikih Linux hkrati. Za izvajanje oddaljenih ukazov uporablja drsno okno niti.

Če želite namestiti Pdsh na računalnike s sistemom Linux, zaženite spodnji ustrezen ukaz.

$ sudo apt install pdsh 	#Debian/Ubuntu 
# yum install pdsh	        #RHEL/CentOS 
# dnf install pdsh              #Fedora 22+

Če želite izvajati ukaze na več strežnikih, dodajte strežnike v datoteko hosts, kot je razloženo prej. Nato zaženite pdsh, kot je prikazano; zastavica -w se uporablja za podajanje gostiteljske datoteke in -R za določitev oddaljenega ukaznega modula (razpoložljivi moduli za oddaljeni ukaz vključujejo ssh, rsh, exec, privzeto je rsh).

Upoštevajte ^ pred datoteko hosts.

$ pdsh -w ^hosts -R ssh "uptime; df -h"

Če v ukazni vrstici ne navedete oddaljenega ukaza, ki ga želite izvesti, kot je prikazano zgoraj, se pdsh zažene interaktivno, od vas zahteva ukaze in jih zažene, ko se konča z vrnitvijo nosilca. Za več informacij si oglejte stran pdsh man:

$ man pdsh 

3. GrozdSSH

ClusterSSH je orodje ukazne vrstice za upravljanje gruč več strežnikov hkrati. Zažene skrbniško konzolo in xterm na vseh določenih strežnikih, kar vam omogoča, da na vseh zaženete isti ukaz.

Če želite uporabiti clusterssh, ga začnite namestiti v lokalni računalnik Linux, kot je prikazano.

$ sudo apt install clusterssh    #Debian/Ubuntu 
# yum install clusterssh         #RHEL/CentOS 
$ sudo dnf install clusterssh    #Fedora 22+

Zdaj, ko ste ga namestili, odprite skrbniško konzolo in xterm na oddaljenih strežnikih hkrati, kot sledi. Če želite zagnati ukaz na vseh strežnikih, kliknite v vnosno vrstico xterm in vnesite ukaz; za upravljanje enega gostitelja uporabite njegovo skrbniško konzolo.

$ clusterssh linode cserver contabo
OR
$ clusterssh [email  [email  [email  

Za več informacij si oglejte stran stran clustersssh:

$ man clusterssh

4. Odgovorno

Ansible je odprtokodno in priljubljeno orodje za avtomatizacijo IT procesov. Uporablja se za konfiguracijo in upravljanje sistemov, uvajanje aplikacij in še veliko več.

Če želite namestiti Ansible v sisteme Linux, zaženite spodnji ustrezen ukaz:

$ sudo apt install ansible       #Debian/Ubuntu 
# yum install ansible            #RHEL/CentOS 
$ sudo dnf install ansible       #Fedora 22+

Ko namestite ansible, lahko v datoteko/etc/anasible/hosts dodate imena gostiteljev ali naslove strežnika.

$ sudo vim /etc/anasible/hosts

Določite jih v skupinah, na primer spletnih strežnikih.

# Ex 2: A collection of hosts belonging to the 'webservers' group
[webservers]
139.10.100.147
139.20.40.90
192.30.152.186

Shranite datoteko in jo zaprite.

Zdaj, da preverite čas delovanja in uporabnike, ki so povezani z vsemi strežniki, navedenimi v spletnem strežniku skupine, v zgornji konfiguracijski datoteki gostiteljev preprosto zaženite orodje za ukazno vrstico ansible, kot sledi.

Možnosti -a se uporabljajo za določanje argumentov za prenos v modul, zastavica -u pa določa privzeto uporabniško ime za povezavo z oddaljenimi strežniki prek SSH.

Upoštevajte, da vam orodje ansible CLI omogoča, da izvedete največ en ukaz.

$ ansible webservers -a "w " -u admin

To je vse! V tem članku smo razložili, kako hkrati izvajati ukaze na več oddaljenih strežnikih Linux z uporabo široko uporabljenih orodij. Če poznate kakšno orodje za isti namen, ki ga v tem članku nismo vključili, nam to sporočite prek spodnjega obrazca za komentar.