नोड संचार और सेटअप
एकाधिक Erlang नोड स्थापित करना और उन्हें जोड़ना सीखें तथा अंतर्निहित वितरण प्रोटोकॉल और सुरक्षा तंत्र समझें
नोड संचार और सेटअप, CoddyKit पर वितरित और विफलता-सहिष्णु प्रणालियों की Erlang OTP प्रोग्रामिंग का एक निःशुल्क पाठ है। यह 4 में से 1वाँ पाठ है। इस अध्ययन पथ के 3 तक कोई भी पाठ पूरा पढ़ना निःशुल्क है — इसके बाद CoddyKit PRO हर पाठ अनलॉक करता है, साथ ही अंतर्निर्मित कोड संपादक और चौबीसों घंटे एआई शिक्षक के साथ व्यावहारिक अभ्यास भी उपलब्ध कराता है। यह वितरित और विफलता-सहिष्णु प्रणालियों की Erlang OTP प्रोग्रामिंग सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। वितरित और विफलता-सहिष्णु प्रणालियों की Erlang OTP प्रोग्रामिंग पाठ्यक्रम में कुल 4 पाठ शामिल हैं।
वितरित Erlang में आपका स्वागत है
Erlang वितरित प्रणालियाँ बनाने में बेहद प्रभावशाली है! यह कई Erlang आभासी मशीनों (VMs), जिन्हें नोड कहा जाता है, को सहज रूप से संचार करने की सुविधा देता है।
यह पाठ इन नोड को स्थापित और कनेक्ट करने का तरीका बताता है, जो दोष-सहिष्णु और विस्तार योग्य अनुप्रयोगों की नींव बनाते हैं।
Erlang नोड नामों को समझना
वितरित प्रणाली में स्वयं की पहचान के लिए प्रत्येक Erlang नोड का एक विशिष्ट नाम होना आवश्यक है। नाम दो प्रकार के होते हैं:
- छोटे नाम (जैसे,
mynode): एक ही स्थानीय मशीन या नेटवर्क खंड पर मौजूद नोड के लिए उपयोग किए जाते हैं। इन्हें-snameसे शुरू किया जाता है। - लंबे नाम (जैसे,
node1@example.com): अलग-अलग होस्ट और नेटवर्क पर वितरित नोड के लिए आवश्यक होते हैं। इनके लिए पूर्णतः योग्य डोमेन नाम (FQDN) आवश्यक होता है और इन्हें-nameसे शुरू किया जाता है।
स्थानीय उदाहरणों के लिए हम मुख्य रूप से छोटे नामों का उपयोग करेंगे।
Erlang कुकी: साझा गुप्त कुंजी
दो Erlang नोड के बीच संचार के लिए उनमें एक सामान्य गुप्त कुंजी साझा होना आवश्यक है, जिसे Erlang कुकी कहा जाता है। इसे नोड से नोड प्रमाणीकरण के लिए पासवर्ड जैसा समझिए।
- यदि नोड की कुकी अलग-अलग हों, तो वे कनेक्ट नहीं हो सकते।
- कुकी एक स्ट्रिंग होती है (जैसे,
mysecretcookie)। - यह सुरक्षा के लिए अत्यंत महत्वपूर्ण है: अपनी कुकी गुप्त रखें और मजबूत कुकी बनाएँ!
अपना पहला नोड शुरू करना
आइए, एक छोटे नाम और कुकी के साथ Erlang नोड शुरू करते हैं। अपना टर्मिनल खोलकर यह चलाएँ:
erl -sname alpha -setcookie myappsecretErlang शेल लोड हो जाने पर आप अपने नोड का नाम और कुकी जाँच सकते हैं:
node().(नोड का पूरा नाम दिखाता है)erlang:get_cookie().(कुकी दिखाता है)
EPMD: पोर्ट मैपर डेमन
जब कोई Erlang नोड शुरू होता है, तो वह स्वयं को EPMD (Erlang पोर्ट मैपर डेमन) नामक स्थानीय प्रक्रिया के साथ पंजीकृत करता है।
EPMD का काम यह पता रखना है कि स्थानीय होस्ट पर कौन-कौन से Erlang नोड चल रहे हैं और वे किन TCP पोर्ट पर सुन रहे हैं। जब एक नोड उसी मशीन पर मौजूद दूसरे नोड से कनेक्ट होना चाहता है, तो वह लक्ष्य नोड का पोर्ट नंबर जानने के लिए EPMD से पूछता है।
आप अलग टर्मिनल में epmd -names चलाकर पंजीकृत नोड देख सकते हैं।
दो स्थानीय नोड कनेक्ट करना
अब किसी दूसरे टर्मिनल में दूसरा नोड शुरू करें। सुनिश्चित करें कि आप वही कुकी उपयोग कर रहे हैं:
erl -sname beta -setcookie myappsecretalpha नोड के शेल से beta को पिंग करने का प्रयास करें:
net_adm:ping(beta@~s).~s को अपनी मशीन के होस्टनाम से बदलें (जैसे, net_adm:ping(beta@localhost).)। यदि परिणाम pong आता है, तो दोनों कनेक्ट हो गए हैं! कनेक्ट किए गए नोड देखने के लिए आप nodes(). का भी उपयोग कर सकते हैं।
नोड की पहचान प्रदर्शित करना
यह सरल Erlang मॉड्यूल वर्तमान नोड की पहचान करने में सहायता करता है। यह एक पूरा प्रोग्राम है, जो अपने नोड का नाम बताता है।
इसे node_id.erl नाम से सहेजें, अपने Erlang शेल में इसे संकलित करें (c(node_id).), फिर परिणाम देखने के लिए node_id:print_name(). चलाएँ।
-module(node_id).
-export([print_name/0]).
print_name() ->
io:format("Current node name: ~p~n", [node()]).दूरस्थ होस्ट के लिए लंबे नोड नाम
अलग-अलग भौतिक मशीनों या नेटवर्क के नोड को कनेक्ट करने के लिए आपको -name ध्वज के साथ लंबे नोड नाम उपयोग करने होंगे। इसके लिए नोड के पूर्णतः योग्य डोमेन नाम (FQDN) या IP पते का उपयोग करना आवश्यक है।
उदाहरण: erl -name node1@server.example.com -setcookie myappsecret
लंबे नाम यह सुनिश्चित करते हैं कि नोड की विशिष्ट रूप से पहचान की जा सके और व्यापक नेटवर्क पर उन तक पहुँचा जा सके।
बुनियादी सुरक्षा संबंधी विचार
हालाँकि Erlang कुकी बुनियादी प्रमाणीकरण प्रदान करती है, फिर भी इन बातों पर ध्यान दें:
- मजबूत कुकी: उत्पादन परिवेशों के लिए लंबी, यादृच्छिक स्ट्रिंग का उपयोग करें।
- फ़ायरवॉल नियम: फ़ायरवॉल को इस तरह कॉन्फ़िगर करें कि EPMD (पोर्ट 4369) और गतिशील Erlang नोड पोर्ट केवल विश्वसनीय होस्ट के बीच संचार कर सकें।
- TLS: संवेदनशील डेटा या अविश्वसनीय नेटवर्क के लिए एन्क्रिप्टेड संचार हेतु Transport Layer Security (TLS) का उपयोग करें (जिसे बाद के पाठ में बताया जाएगा)।
नोड सेटअप की त्वरित जाँच
आपने Erlang नोड, नामकरण, कुकी और EPMD के बारे में सीखा है। आइए, अपनी समझ की जाँच करें!
पुनरावलोकन: नोड संचार की मूल बातें
आपने वितरित Erlang की दिशा में पहला कदम उठा लिया है! हमने इन विषयों को शामिल किया:
- Erlang नोड: अलग-अलग Erlang VMs, जो आपस में संचार कर सकते हैं।
- नोड नाम: स्थानीय नोड के लिए
-snameऔर दूरस्थ नोड के लिए-name(FQDN)। - Erlang कुकी: नोड प्रमाणीकरण के लिए साझा गुप्त कुंजी।
- EPMD: स्थानीय नोड खोजने वाला डेमन।
- नोड कनेक्ट करना: संचार स्थापित करने के लिए
net_adm:ping/1का उपयोग।
अब हम देखेंगे कि ये कनेक्ट किए गए नोड वास्तव में एक-दूसरे से कैसे बात कर सकते हैं!
एआई शिक्षक के साथ Erlang सीखें — निःशुल्क
अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।
- पाठ्यक्रम
- 12
- पाठ
- 48
अक्सर पूछे जाने वाले प्रश्न
क्या “नोड संचार और सेटअप” पाठ निःशुल्क है?
हाँ — वितरित और विफलता-सहिष्णु प्रणालियों की Erlang OTP प्रोग्रामिंग अध्ययन पथ के 3 तक कोई भी पाठ, जिसमें “नोड संचार और सेटअप” भी शामिल है, यहाँ वेब पर पूरा पढ़ना निःशुल्क है। इसके बाद CoddyKit PRO हर पाठ अनलॉक करता है, साथ ही अंतर्निर्मित कोड संपादक और चौबीसों घंटे एआई शिक्षक के साथ इंटरैक्टिव अभ्यास भी उपलब्ध कराता है। वितरित और विफलता-सहिष्णु प्रणालियों की Erlang OTP प्रोग्रामिंग पाठ्यक्रम में कुल 4 पाठ शामिल हैं।
“नोड संचार और सेटअप” में मैं क्या सीखूँगा?
एकाधिक Erlang नोड स्थापित करना और उन्हें जोड़ना सीखें तथा अंतर्निहित वितरण प्रोटोकॉल और सुरक्षा तंत्र समझें आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ वितरित और विफलता-सहिष्णु प्रणालियों की Erlang OTP प्रोग्रामिंग का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।
क्या वितरित और विफलता-सहिष्णु प्रणालियों की Erlang OTP प्रोग्रामिंग शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?
पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर वितरित और विफलता-सहिष्णु प्रणालियों की Erlang OTP प्रोग्रामिंग शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 1वाँ पाठ है।
“नोड संचार और सेटअप” पाठ पूरा करने में कितना समय लगता है?
CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।
क्या मैं इस वितरित और विफलता-सहिष्णु प्रणालियों की Erlang OTP प्रोग्रामिंग पाठ में कोड लिख और चला सकता हूँ?
हाँ। हर वितरित और विफलता-सहिष्णु प्रणालियों की Erlang OTP प्रोग्रामिंग पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।
इस पाठ्यक्रम के सभी पाठ
- नोड संचार और सेटअप
- रिमोट प्रक्रिया कॉल (RPC)
- वैश्विक प्रक्रिया पंजीकरण
- वितरण सुरक्षा और कुकी