4 Awọn Irinṣẹ Wulo lati Ṣiṣe Awọn aṣẹ lori Ọpọlọpọ Awọn olupin Lainos


Ninu nkan yii, a yoo fihan bi a ṣe le ṣiṣe awọn aṣẹ lori ọpọlọpọ awọn olupin Linux ni akoko kanna. A yoo ṣalaye bi a ṣe le lo diẹ ninu awọn irinṣẹ ti a gba kaakiri ti a ṣe apẹrẹ lati ṣe lẹsẹsẹ atunwi ti awọn ofin lori awọn olupin pupọ nigbakanna. Itọsọna yii wulo fun awọn alakoso eto ti o nigbagbogbo ni lati ṣayẹwo ilera ti awọn olupin Linux pupọ lojoojumọ.

Fun idi ti nkan yii, a ro pe o ti ni iṣeto SSH tẹlẹ lati wọle si gbogbo awọn olupin rẹ ati keji, nigbati o ba n wọle si awọn olupin pupọ nigbakanna, o yẹ lati ṣeto SSH ti ko ni ọrọigbaniwọle-kere lori gbogbo awọn olupin Linux rẹ. Eyi ju gbogbo rẹ ṣe aabo aabo olupin ati tun jẹ ki irọrun iraye si.

1. PSSH - Ti o jọra SSH

ni afiwe-scp, ni afiwe-rsync, ni afiwe-slurp ati ni afiwe-nuke (ka oju-iwe eniyan ti irinṣẹ kan pato fun alaye diẹ sii).

Lati fi iru-ssh sori ẹrọ, o nilo lati kọkọ fi PIP sori ẹrọ Linux rẹ.

$ 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+

Lẹhinna fi sori ẹrọ ni afiwe-ssh nipa lilo pip bi atẹle.

$ sudo pip install parallel-ssh

Nigbamii, tẹ awọn orukọ ile-iṣẹ tabi awọn adirẹsi IP ti olupin Linux latọna jijin pẹlu SSH Port ni faili kan ti a pe ni awọn ọmọ-ogun (o le lorukọ rẹ ohunkohun ti o fẹ):

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

Fipamọ faili naa ki o pa.

Bayi ṣiṣe ni afiwe-ssh, ṣafihan faili awọn ọmọ-ogun nipa lilo aṣayan -h ati aṣẹ (s) kan ti yoo ṣe lori gbogbo awọn olupin ti a ṣalaye. Flag -i tumọ si iṣafihan ifihan std ati aṣiṣe std bi ipaniyan ti aṣẹ lori olupin kọọkan pari.

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

O yẹ ki o tun ṣayẹwo: Bii o ṣe le Ṣiṣe Awọn aṣẹ pupọ lori Awọn olupin Lainos pupọ

2. Pdsh - Ibaramu Ikarahun Ikarahun Jijin Ti o jọra

Pdsh jẹ orisun ṣiṣi, ọna asopọ ikarahun latọna jijin ti o rọrun fun ṣiṣe awọn pipaṣẹ lori awọn olupin Linux pupọ ni akoko kanna. O lo window sisẹ ti awọn okun lati ṣe awọn pipaṣẹ latọna jijin.

Lati fi Pdsh sori ẹrọ awọn ẹrọ Linux rẹ, ṣiṣe aṣẹ ti o yẹ ni isalẹ.

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

Lati ṣiṣe awọn aṣẹ lori awọn olupin pupọ, ṣafikun awọn olupin si faili awọn ọmọ-ogun bi a ti ṣalaye ṣaju. Lẹhinna ṣiṣe pdsh bi o ti han; a lo Flag -w lati ṣalaye faili awọn ọmọ-ogun, ati -R ni a lo lati ṣafihan modulu aṣẹ latọna jijin (awọn modulu aṣẹ latọna jijin wa pẹlu ssh, rsh, exec, awọn aiyipada ni rsh).

Ṣe akiyesi ^ ṣaaju faili awọn agbalejo.

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

Ni ọran ti o ko ṣe pato aṣẹ latọna jijin lati ṣe lori laini aṣẹ bi a ti han loke, pdsh nṣiṣẹ ni ibaraenisọrọ, tọ ọ fun awọn aṣẹ ati ṣiṣe wọn nigbati o pari pẹlu ipadabọ gbigbe. Fun alaye diẹ sii, wo oju-iwe eniyan pdsh:

$ man pdsh 

3. Iṣupọ SSH

ClusterSSH jẹ ọpa laini aṣẹ fun sisakoso awọn iṣupọ ti awọn olupin pupọ ni akoko kanna. O ṣe ifilọlẹ console iṣakoso ati xterm si gbogbo awọn olupin ti a ṣalaye ti o fun ọ laaye lati ṣiṣẹ aṣẹ kanna lori gbogbo wọn.

Lati lo awọn iṣupọ, bẹrẹ nipa fifi sori ẹrọ lori kọmputa Linux agbegbe rẹ bi o ti han.

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

Bayi pe o ti fi sii, ṣii console abojuto ati xterm lori awọn olupin latọna jijin ni ẹẹkan, bi atẹle. Lati ṣiṣe aṣẹ lori gbogbo awọn olupin, tẹ ni aaye titẹ sii xterm, ki o tẹ iru aṣẹ rẹ; lati ṣakoso agbalejo kan, lo itọnisọna console rẹ.

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

Fun alaye diẹ sii, wo oju-iwe eniyan iṣupọ:

$ man clusterssh

4. Ti o daju

Ansible jẹ orisun ṣiṣi ati irinṣẹ olokiki lati ṣe adaṣe awọn ilana IT. O ti lo fun tito leto ati ṣiṣakoso awọn eto, ṣiṣiṣẹ awọn ohun elo ati pupọ diẹ sii.

Lati fi Ansible sori ẹrọ lori awọn eto Linux, ṣiṣe aṣẹ ti o yẹ ni isalẹ:

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

Lọgan ti o ba ti fi sori ẹrọ iṣiro, o le ṣafikun awọn orukọ orukọ olupin rẹ tabi awọn adirẹsi IP ninu faili/ati be be lo/anasible/ogun.

$ sudo vim /etc/anasible/hosts

Ṣe apejuwe wọn ni awọn ẹgbẹ, fun apẹẹrẹ awọn alabojuto.

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

Fipamọ faili naa ki o pa.

Nisisiyi lati ṣayẹwo akoko asiko ati awọn olumulo ti o sopọ si gbogbo awọn olupin ti a ṣalaye ninu webserver ẹgbẹ, ninu faili atunto awọn ọmọ ogun loke, ṣaṣe ṣiṣe irinṣẹ laini aṣẹ lasan ni atẹle.

Awọn aṣayan -a ni a lo lati ṣafihan awọn ariyanjiyan lati kọja si modulu naa ati asia -u ṣe afihan orukọ olumulo aiyipada lati sopọ si awọn olupin latọna jijin nipasẹ SSH.

Ṣe akiyesi pe ohun elo CLI ti o ni ẹtọ nikan gba ọ laaye lati ṣe ni pipaṣẹ aṣẹ kan nikan.

$ ansible webservers -a "w " -u admin

Gbogbo ẹ niyẹn! Ninu nkan yii, a ti ṣalaye bi a ṣe le ṣiṣe awọn aṣẹ lori ọpọlọpọ awọn olupin Lainos latọna jijin ni akoko kanna ni lilo awọn irinṣẹ ti a lo ni ibigbogbo. Ti o ba mọ eyikeyi awọn irinṣẹ jade nibẹ fun idi kanna, ti a ko fi sinu nkan yii, jẹ ki a mọ nipasẹ fọọmu asọye ni isalẹ.