4 कई लिनक्स सर्वर पर कमांड चलाने के लिए उपयोगी उपकरण


इस लेख में, हम एक ही समय में कई लिनक्स सर्वरों पर कमांड चलाने का तरीका बताएंगे। हम एक साथ कई सर्वरों पर दोहराए गए श्रृंखलाओं को निष्पादित करने के लिए डिज़ाइन किए गए कुछ व्यापक रूप से ज्ञात टूल का उपयोग करने का तरीका बताएंगे। यह मार्गदर्शिका सिस्टम प्रशासकों के लिए उपयोगी है, जिन्हें आमतौर पर हर रोज कई लिनक्स सर्वरों के स्वास्थ्य की जांच करनी होती है।

इस लेख के उद्देश्य के लिए, हम मानते हैं कि आपके पास अपने सभी सर्वरों तक पहुँचने के लिए पहले से ही SSH सेटअप है और दूसरी बात, जब एक साथ कई सर्वरों को एक्सेस कर रहे हैं, तो अपने सभी लिनक्स सर्वरों पर कुंजी-आधारित पासवर्ड-कम SSH को सेट करना उचित है। यह सब से ऊपर सर्वर सुरक्षा को बढ़ाता है और उपयोग में आसानी भी सक्षम बनाता है।

1. PSSH - समानांतर एसएसएच

समानांतर-एसएसएच एक खुला स्रोत है, जो कई लिनक्स सिस्टम पर समानांतर में ssh को क्रियान्वित करने के लिए फास्ट एंड टू-यूज़ कमांड लाइन आधारित पायथन टूलकिट है। इसमें कई उद्देश्यों के लिए कई उपकरण शामिल हैं जैसे समानांतर- ssh , समानांतर-एसपीपी, समानांतर- rsync , समानांतर-स्लुर और > समानांतर- nuke (अधिक जानकारी के लिए किसी विशेष टूल का मैन पेज पढ़ें)।

समानांतर-ssh को स्थापित करने के लिए, आपको पहले अपने लिनक्स सिस्टम पर PIP स्थापित करना होगा।

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

फिर पाइप का उपयोग करके समानांतर- ssh स्थापित करें।

$ sudo pip install parallel-ssh

इसके बाद, होस्ट नामक फ़ाइल में SSH पोर्ट के साथ दूरस्थ लिनक्स सर्वर के होस्टनाम या आईपी पते दर्ज करें (आप इसे अपनी इच्छानुसार कुछ भी नाम दे सकते हैं):

$ vim hosts

192.168.0.10:22
192.168.0.11:22
192.168.0.12:22

फ़ाइल को सहेजें और इसे बंद करें।

अब समानांतर-ssh चलाएं, -h विकल्प और एक कमांड (s) का उपयोग करके होस्ट फ़ाइल निर्दिष्ट करें जो सभी निर्दिष्ट सर्वर पर निष्पादित की जाएगी। -i ध्वज का अर्थ है प्रदर्शन std आउटपुट और std त्रुटि जैसा कि प्रत्येक सर्वर पर कमांड का निष्पादन पूरा होता है।

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

आपको यह भी देखना चाहिए: मल्टीपल लिनक्स सर्वर पर मल्टीपल कमांड कैसे चलाएं

2. Pdsh - समानांतर दूरस्थ शैल उपयोगिता

Pdsh एक खुला स्रोत है, एक ही समय में कई लिनक्स सर्वर पर कमांड निष्पादित करने के लिए सरल समानांतर रिमोट शेल टूल। यह दूरस्थ कमांड निष्पादित करने के लिए थ्रेड्स की स्लाइडिंग विंडो को नियोजित करता है।

अपने लिनक्स मशीनों पर Pdsh स्थापित करने के लिए, नीचे उपयुक्त कमांड चलाएँ।

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

कई सर्वरों पर कमांड चलाने के लिए, सर्वरों को पहले बताए अनुसार एक होस्ट फ़ाइल में जोड़ें। फिर दिखाए अनुसार pdsh चलाएं; ध्वज -w का उपयोग होस्ट फ़ाइल को निर्दिष्ट करने के लिए किया जाता है, और -R का उपयोग दूरस्थ कमांड मॉड्यूल (उपलब्ध दूरस्थ कमांड मॉड्यूल ssh, rsh, exec को शामिल करने के लिए किया जाता है) के लिए किया जाता है डिफ़ॉल्ट rsh है)।

मेजबानों फ़ाइल से पहले <कोड> ^ पर ध्यान दें।

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

यदि आप ऊपर दिखाए गए कमांड लाइन पर दूरस्थ कमांड को निष्पादित करने के लिए निर्दिष्ट नहीं करते हैं, तो pdsh अंतःक्रियात्मक रूप से चलता है, आपको कमांड के लिए प्रेरित करता है और गाड़ी वापसी के साथ समाप्त होने पर उन्हें चलाता है। अधिक जानकारी के लिए, pdsh मैन पेज देखें:

$ man pdsh 

3. क्लस्टरस्टरएच

क्लस्टरस्टरएच एक ही समय में कई सर्वरों के समूहों को प्रशासित करने के लिए एक कमांड लाइन उपकरण है। यह एक प्रशासन कंसोल और एक xterm सभी निर्दिष्ट सर्वरों को लॉन्च करता है, जिससे आप उन सभी पर समान कमांड चला सकते हैं।

क्लस्टर्स का उपयोग करने के लिए, इसे अपने स्थानीय लिनक्स कंप्यूटर पर दिखाए अनुसार स्थापित करके शुरू करें।

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

अब जब आप इसे स्थापित कर चुके हैं, तो एक प्रशासक कंसोल खोलें और एक xterm एक बार रिमोट सर्वर पर, निम्नानुसार खोलें। सभी सर्वरों पर कमांड चलाने के लिए, xterm इनपुट बार में क्लिक करें, और अपना कमांड टाइप करें; किसी एकल होस्ट को प्रबंधित करने के लिए, उसके व्यवस्थापक कंसोल का उपयोग करें।

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

अधिक जानकारी के लिए, क्लस्टरश मैन पेज देखें:

$ man clusterssh

4. उत्तर देने योग्य

Ansible एक खुला स्रोत है और आईटी प्रक्रियाओं को स्वचालित करने के लिए लोकप्रिय उपकरण है। इसका उपयोग सिस्टम को कॉन्फ़िगर करने और प्रबंधित करने, अनुप्रयोगों को तैनात करने और बहुत कुछ करने के लिए किया जाता है।

लिनक्स सिस्टम पर Ansible स्थापित करने के लिए, नीचे उपयुक्त कमांड चलाएँ:

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

एक बार जब आप ansible स्थापित कर लेते हैं, तो आप फ़ाइल में अपने सर्वर के होस्टनाम या IP पते जोड़ सकते हैं /etc/anasible/मेजबान

$ sudo vim /etc/anasible/hosts

उन्हें समूहों में निर्दिष्ट करें, उदा webservers

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

फ़ाइल को सहेजें और इसे बंद करें।

अब अपटाइम और समूह में निर्दिष्ट सभी सर्वरों से जुड़े उपयोगकर्ता वेबसर्वर की जाँच करने के लिए, ऊपर दी गई होस्ट्स फ़ाइल में, केवल निम्न के रूप में एक कमांड लाइन टूल चलाएं।

मॉड्यूल को पास करने के लिए तर्कों को निर्दिष्ट करने के लिए -a विकल्पों का उपयोग किया जाता है और -u ध्वज डिफ़ॉल्ट को निर्दिष्ट करता है उपयोगकर्ता नाम दूरस्थ सर्वर से कनेक्ट करने के लिए के माध्यम से एस.एस.एच.

ध्यान दें कि ansible CLI टूल आपको केवल एक ही कमांड पर निष्पादित करने की अनुमति देता है।

$ ansible webservers -a "w " -u admin

बस इतना ही! इस लेख में, हमने बताया है कि व्यापक रूप से उपयोग किए जाने वाले उपकरणों का उपयोग करके एक ही समय में कई दूरस्थ लिनक्स सर्वरों पर कमांड कैसे चलाएं। यदि आप उसी उद्देश्य के लिए किसी भी उपकरण के बारे में जानते हैं, जिसे हमने इस लेख में शामिल नहीं किया है, तो हमें नीचे दिए गए टिप्पणी फ़ॉर्म के माध्यम से बताएं।