Gestionarea mai multor servere Linux cu ClusterSSH

dacă sunteți administrator de sistem Linux, este posibil să aveți mai multe mașini de care sunteți responsabil zilnic. Este posibil să aveți chiar și o bancă de mașini pe care le mențineți similare — o fermă de servere Web, de exemplu. Dacă aveți nevoie să tastați aceeași comandă în mai multe mașini simultan, vă puteți conecta la fiecare cu SSH și o puteți face în serie sau vă puteți economisi mult timp și efort și puteți utiliza un instrument precum ClusterSSH.

ClusterSSH este un înveliș Tk/Perl în jurul instrumentelor Linux standard precum xterm și SSH. Ca atare, va rula pe aproape orice sistem de operare compatibil POSIX unde există bibliotecile-l-am rulat pe Linux, Solaris și Mac OS X. necesită bibliotecile Perl Tk (perl-tk pe Debian sau Ubuntu) și Protocolul X11:: (libx11-protocol-perl pe Debian sau Ubuntu), pe lângă xterm și OpenSSH.

instalare

instalarea ClusterSSH pe un sistem Debian sau Ubuntu este banal — un simplu sudo apt-get install clusterssh se va instala și dependențele sale. De asemenea, este ambalat pentru utilizare cu Fedora și poate fi instalat prin sistemul de porturi de pe FreeBSD. Există, de asemenea, o versiune MacPorts pentru utilizare cu Mac OS X, dacă utilizați o mașină Apple. Desigur, poate fi compilat și din sursă.

configurare

ClusterSSH poate fi configurat fie prin fișierul său de configurare globală — /etc/clusters, fie printr-un fișier din Directorul de acasă al utilizatorului numit .csshrc. Am tendința de a favoriza configurația la nivel de utilizator, deoarece permite mai multor persoane din același sistem să-și configureze Clientul ClusterSSH așa cum aleg. Configurarea este simplă în ambele cazuri, deoarece formatul fișierului este același. ClusterSSH definește un „cluster” ca un grup de mașini pe care doriți să le controlați printr-o singură interfață. Având în vedere acest lucru, enumerați clusterele dvs. în partea de sus a fișierului într-un bloc „clustere” și apoi descrieți fiecare cluster într-o secțiune separată de mai jos.

de exemplu, să presupunem că am două clustere, fiecare format din două mașini. „Cluster1” are mașinile „Test1” și „Test2” în el, iar „Cluster2” are mașinile „Test3” și „Test4” în el. Fișierul de control ~.csshrc (sau /etc/clusters) ar arăta astfel:

clusters = cluster1 cluster2

cluster1 = test1 test2
cluster2 = test3 test4

puteți face, de asemenea, meta-clustere — clustere care se referă la clustere. Dacă ați vrut să faceți un cluster numit „toate” care să cuprindă toate mașinile, l-ați putea defini în două moduri. În primul rând, ai putea crea pur și simplu un cluster care a avut loc toate mașinile, cum ar fi următoarele:

clusters = cluster1 cluster2 all

cluster1 = test1 test2
cluster2 = test3 test4
all = test1 test2 test3 test4

cu toate acestea, metoda mea preferată este să folosesc un meta-cluster care cuprinde celelalte clustere:

clusters = cluster1 cluster2 all

cluster1 = test1 test2
cluster2 = test3 test4
toate = cluster1 cluster2

apelând clusterul ” toate „ca conținând cluster1 și cluster2, dacă oricare dintre aceste clustere se schimbă vreodată, modificarea este capturată automat, astfel încât să nu trebuie să actualizați definiția” toate”. Acest lucru vă va economisi timp și dureri de cap dacă dumneavoastră .fișierul csshrc crește vreodată în dimensiune.

folosind ClusterSSH

folosind ClusterSSH este similar cu lansarea SSH de la sine. Pur și simplu rulează cssh -l <username> <clustername> va lansa ClusterSSH și vă conectați ca utilizator dorit pe acel cluster. În figura de mai jos, puteți vedea că m-am conectat la „cluster1” ca mine. Fereastra mică etichetată „CSSH” este fereastra consolei SSH Cluster. Orice tastez în acea fereastră mică se repetă la toate mașinile din cluster-în acest caz, mașinile „test1” și „test2”. Într-un vârf de cuțit, vă puteți conecta, de asemenea, la mașini care nu sunt în dumneavoastră .fișier csshrc, pur și simplu prin rularea cssh -l <username> <machinename1> <machinename2> <machinename3>.

dacă vreau să trimit ceva la unul dintre terminale, pot schimba pur și simplu focalizarea făcând clic pe XTerm-ul dorit și doar tastați în acea fereastră așa cum aș face de obicei. ClusterSSH are câteva elemente de meniu care ajută cu adevărat atunci când se ocupă de un amestec de mașini. Conform figurii de mai jos, în meniul” gazde ” al consolei ClusterSSH există mai multe opțiuni care vin la îndemână.

„Retile Windows” face doar asta dacă ați redimensionat manual sau ați mutat ceva. „Adăugați gazdă(e) sau Cluster(e)” este mare, dacă doriți să adăugați un alt set de mașini sau un alt cluster la sesiunea ClusterSSH rulează. În cele din urmă, veți vedea fiecare gazdă listată în partea de jos a meniului „gazde”. Bifând sau debifând casetele de lângă fiecare nume de gazdă, puteți selecta care găzduiește ClusterSSH consola va ecou comenzi. Acest lucru este util dacă doriți să excludeți o gazdă sau două pentru un motiv unic sau special. Opțiunea de meniu finală pe care este plăcut să o aveți se află sub meniul „Trimitere”, numit „Nume gazdă”. Acest lucru reflectă pur și simplu numele de gazdă al fiecărei mașini la linia de comandă, care poate fi utilă dacă construiți ceva specific gazdei în clusterul dvs.

avertismente cu ClusterSSH

ca multe instrumente UNIX, ClusterSSH are potențialul de a merge oribil într-o parte, dacă nu sunteți foarte atent cu utilizarea sa. Am văzut Greșeli ClusterSSH scoate un întreg nivel de servere Web pur și simplu prin propagarea o greșeală de scriere într-o configurație Apache. A avea acces la mai multe mașini simultan, posibil ca utilizator privilegiat, înseamnă că greșelile au un cost mare. Aveți grijă și verificați din nou ce faceți înainte de a lovi cu pumnul tasta Enter.

concluzie

ClusterSSH nu este un înlocuitor pentru a avea un sistem de gestionare a configurației sau oricare dintre celelalte bune practici atunci când gestionați un număr de mașini. Cu toate acestea, dacă trebuie să faceți ceva într-un vârf în afara setului de instrumente sau a procesului obișnuit sau dacă faceți lucrări de prototip, ClusterSSH este indispensabil. Poate economisi mult timp atunci când efectuați sarcini care trebuie efectuate pe mai multe mașini, dar, ca orice unealtă electrică, poate provoca multe daune dacă este utilizată la întâmplare.

You might also like

Lasă un răspuns

Adresa ta de email nu va fi publicată.