Hadoop को कैसे स्थापित करें Ubuntuडाउनलोड और सेटअप के चरण
⚡ स्मार्ट सारांश
Apache Hadoop को इंस्टॉल करना Ubuntu इसमें दो चरण लगते हैं: पहले पासवर्ड रहित एसएसएच के साथ एक समर्पित सिस्टम खाते के तहत रिलीज़ को अनपैक करें, फिर एचडीएफएस को फॉर्मेट करने और सिंगल-नोड क्लस्टर शुरू करने से पहले चार एक्सएमएल फाइलों को संपादित करें।

इस ट्यूटोरियल में, हम आपको लिनक्स बॉक्स पर अपाचे हैडूप को स्थापित करने की चरण-दर-चरण प्रक्रिया से अवगत कराएंगे।Ubuntuयह दो चरणों वाली प्रक्रिया है: पहले रिलीज़ को डाउनलोड और इंस्टॉल करें, फिर उसे कॉन्फ़िगर करें।
इसके लिए दो पूर्व शर्तें हैं:
- आपके पास होना चाहिए Ubuntu installed और चल रहा है.
- आपके पास होना चाहिए Java installed.
इस सेटअप के लिए Hadoop 3.x संस्करण संबंधी नोट्स
इस वॉकथ्रू में दिखाए गए स्क्रीनशॉट Hadoop 2.2.0 पर लिए गए हैं। वर्तमान संस्करणों में चरणों का क्रम अपरिवर्तित है, लेकिन कुछ नाम और डिफ़ॉल्ट मान बदल गए हैं। किसी भी कमांड को हूबहू कॉपी करने से पहले नीचे दी गई तालिका को ध्यान से देखें।
| सेटिंग या चरण | इस ट्यूटोरियल में (Hadoop 2.x) | वर्तमान Hadoop 3.x |
|---|---|---|
| रिलीज़ संग्रह | hadoop-2.2.0.tar.gz |
hadoop-3.5.0.tar.gzपहला स्थिर 3.5 संस्करण, 2 अप्रैल 2026 को प्रकाशित हुआ। |
| डिफ़ॉल्ट फ़ाइल सिस्टम प्रॉपर्टी | fs.default.name गद्य में, fs.defaultFS XML में |
fs.defaultFS केवल; fs.default.name बहिष्कृत है |
| मैप रिड्यूस प्रॉपर्टी | mapreduce.jobtracker.address |
mapreduce.framework.name करने के लिए सेट yarn; कामTracYARN द्वारा कार्य को शेड्यूल करने के बाद ker का अस्तित्व समाप्त हो जाता है। |
| mapred-साइट.xml | से कॉपी किया गया mapred-site.xml.template |
में भेजता है etc/hadoop पहले से ही मौजूद है, इसलिए कॉपी करने का चरण अनावश्यक है। |
| NameNode वेब UI पोर्ट | 50070 | 9870 |
| Java | Java 6 या Java 7 | Java 8 या Java 11 |
इस गाइड में बाकी सब कुछ Hadoop 3 पर उसी तरह काम करता है: समर्पित खाता, SSH कुंजी, चार कॉन्फ़िगरेशन फ़ाइलें और स्टार्ट और स्टॉप स्क्रिप्ट।
भाग 1) Hadoop डाउनलोड और इंस्टॉल करें
चरण 1) एक हैडूप सिस्टम उपयोगकर्ता जोड़ें
नीचे दिए गए कमांड का उपयोग करके एक Hadoop सिस्टम उपयोगकर्ता जोड़ें।
sudo addgroup hadoop_
sudo adduser --ingroup hadoop_ hduser_
अपना पासवर्ड, नाम और अन्य विवरण दर्ज करें।
नोट: इस सेटअप और इंस्टॉलेशन प्रक्रिया में नीचे बताई गई त्रुटि होने की संभावना है।
"hduser sudoers फ़ाइल में नहीं है। इस घटना की रिपोर्ट की जाएगी।"
इस त्रुटि को रूट यूजर के रूप में लॉग इन करके हल किया जा सकता है।
आदेश निष्पादित करें
sudo adduser hduser_ sudo
Re-login as hduser_
चरण 2) SSH कॉन्फ़िगर करें
क्लस्टर में नोड्स को प्रबंधित करने के लिए, Hadoop को SSH एक्सेस की आवश्यकता होती है।
सबसे पहले, उपयोगकर्ता स्विच करें, निम्नलिखित कमांड दर्ज करें
su - hduser_
यह आदेश एक नई कुंजी बनाएगा.
ssh-keygen -t rsa -P ""
इस कुंजी का उपयोग करके स्थानीय मशीन पर SSH एक्सेस सक्षम करें।
cat $HOME/.ssh/id_rsa.pub >> $HOME/.ssh/authorized_keys
अब 'hduser_' यूजर के रूप में लोकलहोस्ट से कनेक्ट करके SSH सेटअप का परीक्षण करें।
ssh localhost
नोट: यदि आपको 'ssh localhost' के जवाब में नीचे दी गई त्रुटि दिखाई देती है, तो संभावना है कि इस सिस्टम पर SSH उपलब्ध नहीं है।
इसे हल करने के लिए –
SSH को शुद्ध करें,
sudo apt-get purge openssh-server
स्थापना शुरू करने से पहले सभी आवश्यक डेटा को हटा देना एक अच्छी प्रक्रिया है।
कमांड का उपयोग करके SSH स्थापित करें-
sudo apt-get install openssh-server
चरण 3) Hadoop डाउनलोड करें
अगला चरण Hadoop को डाउनलोड करना है। अपाचे हैडूप रिलीज़ पेज.
स्थिर चुनें
tar.gz फ़ाइल का चयन करें (src में समाप्त होने वाली फ़ाइल का नहीं)।
डाउनलोड पूरा हो जाने के बाद, उस डायरेक्टरी में जाएं जिसमें tar फ़ाइल मौजूद है।
दर्ज करें,
sudo tar xzf hadoop-2.2.0.tar.gz
अब, hadoop-2.2.0 का नाम बदलकर hadoop कर दें।
sudo mv hadoop-2.2.0 hadoop
अंत में, फ़ोल्डर को नए खाते में जमा कर दें।
sudo chown -R hduser_:hadoop_ hadoop
आपने जो संस्करण वास्तव में डाउनलोड किया है, उसे बदलें। hadoop-2.2.0 ऊपर दिए गए तीनों आदेशों में।
भाग 2) Hadoop को कॉन्फ़िगर करें
चरण 1) ~/.bashrc फ़ाइल को संशोधित करें
~/.bashrc फ़ाइल के अंत में निम्नलिखित पंक्तियाँ जोड़ें।
#Set HADOOP_HOME export HADOOP_HOME=<Installation Directory of Hadoop> #Set JAVA_HOME export JAVA_HOME=<Installation Directory of Java> # Add bin/ directory of Hadoop to PATH export PATH=$PATH:$HADOOP_HOME/bin
अब, नीचे दिए गए कमांड का उपयोग करके इस पर्यावरण कॉन्फ़िगरेशन को सोर्स करें।
. ~/.bashrc
चरण 2) एचडीएफएस से संबंधित कॉन्फ़िगरेशन
नीचे दिखाए गए अनुसार, $HADOOP_HOME/etc/hadoop/hadoop-env.sh फ़ाइल के अंदर JAVA_HOME सेट करें।
-
$HADOOP_HOME/etc/hadoop/core-site.xml में दो पैरामीटर हैं जिन्हें सेट करने की आवश्यकता है-
1. 'hadoop.tmp.dir' – इसका उपयोग उस निर्देशिका को निर्दिष्ट करने के लिए किया जाता है जिसका उपयोग Hadoop अपने डेटा फ़ाइलों को संग्रहीत करने के लिए करेगा।
2. 'fs.defaultFS' – यह डिफ़ॉल्ट फ़ाइल सिस्टम निर्दिष्ट करता है। इसी प्रॉपर्टी का पुराना नाम, 'fs.default.name', अब उपयोग में नहीं है।
इन पैरामीटर्स को सेट करने के लिए core-site.xml खोलें
sudo gedit $HADOOP_HOME/etc/hadoop/core-site.xml
नीचे दी गई पंक्तियों को बीच में कॉपी करें टैग।
<property> <name>hadoop.tmp.dir</name> <value>/app/hadoop/tmp</value> <description>Parent directory for other temporary directories.</description> </property> <property> <name>fs.defaultFS </name> <value>hdfs://localhost:54310</value> <description>The name of the default file system. </description> </property>
$HADOOP_HOME/etc/hadoop डायरेक्टरी पर जाएं।
अब, core-site.xml में उल्लिखित निर्देशिका बनाएं।
sudo mkdir -p <Path of Directory used in above setting>
डायरेक्टरी को अनुमतियाँ प्रदान करें।
sudo chown -R hduser_:Hadoop_ <Path of Directory created in above step>
sudo chmod 750 <Path of Directory created in above step>
चरण 3) मैप रिड्यूस कॉन्फ़िगरेशन
इन कॉन्फ़िगरेशन को शुरू करने से पहले, आइए HADOOP_HOME पथ सेट करें।
sudo gedit /etc/profile.d/hadoop.sh
और दर्ज करें
export HADOOP_HOME=/home/guru99/Downloads/Hadoop
अगला दर्ज करें
sudo chmod +x /etc/profile.d/hadoop.sh
टर्मिनल से बाहर निकलें और फिर से शुरू करें।
पथ को सत्यापित करने के लिए echo $HADOOP_HOME टाइप करें।
अब फ़ाइलें कॉपी करें
sudo cp $HADOOP_HOME/etc/hadoop/mapred-site.xml.template $HADOOP_HOME/etc/hadoop/mapred-site.xml
mapred-site.xml फ़ाइल खोलें
sudo gedit $HADOOP_HOME/etc/hadoop/mapred-site.xml
नीचे दी गई सेटिंग्स को बीच में जोड़ें और टैग।
<property> <name>mapreduce.jobtracker.address</name> <value>localhost:54311</value> <description>MapReduce job tracker runs at this host and port. </description> </property>
नीचे दिए गए अनुसार $HADOOP_HOME/etc/hadoop/hdfs-site.xml फ़ाइल खोलें,
sudo gedit $HADOOP_HOME/etc/hadoop/hdfs-site.xml
नीचे दी गई सेटिंग्स को बीच में जोड़ें और टैग।
<property> <name>dfs.replication</name> <value>1</value> <description>Default block replication.</description> </property> <property> <name>dfs.datanode.data.dir</name> <value>/home/hduser_/hdfs</value> </property>
ऊपर दी गई सेटिंग में निर्दिष्ट निर्देशिका बनाएं।
sudo mkdir -p <Path of Directory used in above setting>
sudo mkdir -p /home/hduser_/hdfs
फिर उस पर स्वामित्व और अनुमतियाँ प्रदान करें।
sudo chown -R hduser_:hadoop_ <Path of Directory created in above step>
sudo chown -R hduser_:hadoop_ /home/hduser_/hdfs
sudo chmod 750 <Path of Directory created in above step>
sudo chmod 750 /home/hduser_/hdfs
चरण 4) HDFS को फॉर्मेट करें
Hadoop को पहली बार शुरू करने से पहले, नीचे दिए गए कमांड का उपयोग करके HDFS को फॉर्मेट करें।
$HADOOP_HOME/bin/hdfs namenode -format
चरण 5) हैडूप सिंगल नोड क्लस्टर शुरू करें
नीचे दिए गए कमांड का उपयोग करके हैडूप सिंगल नोड क्लस्टर शुरू करें।
$HADOOP_HOME/sbin/start-dfs.sh
ऊपर दिए गए कमांड का आउटपुट नीचे दिखाया गया है।
फिर YARN डेमन्स को शुरू करें।
$HADOOP_HOME/sbin/start-yarn.sh
'jps' टूल का उपयोग करके, यह सत्यापित करें कि Hadoop से संबंधित सभी प्रक्रियाएं चल रही हैं या नहीं।
यदि Hadoop सफलतापूर्वक शुरू हो गया है, तो jps आउटपुट में NameNode, NodeManager, ResourceManager, SecondaryNameNode और DataNode सूचीबद्ध होने चाहिए।
चरण 6) रुकेंping Hadoop
क्लस्टर को उल्टे क्रम में बंद करें।
$HADOOP_HOME/sbin/stop-dfs.sh
$HADOOP_HOME/sbin/stop-yarn.sh
Hadoop के चलने की पुष्टि कैसे करें और सामान्य त्रुटियों को कैसे ठीक करें
jps आउटपुट से यह पुष्टि होती है कि प्रक्रियाएं शुरू हो गई हैं, लेकिन यह नहीं कि क्लस्टर उपयोग करने योग्य है। चार अतिरिक्त जांचों से इस प्रश्न का समाधान हो जाता है।
- NameNode वेब इंटरफ़ेस खोलें
http://localhost:9870(हैडूप 2.x पर पोर्ट 50070) और पुष्टि करें कि सारांश रिपोर्ट में एक लाइव नोड है। - ResourceManager इंटरफ़ेस को यहां खोलें:
http://localhost:8088यह पुष्टि करने के लिए कि YARN ने NodeManager को स्वीकार कर लिया है। - रन
hdfs dfsadmin -reportक्षमता, लाइव डेटा नोड्स और किसी भी कम प्रतिकृति वाले ब्लॉक के लिए। - कुछ लिखना:
hdfs dfs -mkdir /testद्वारा पीछाhdfs dfs -ls /यह साबित करता है कि नेमस्पेस परिवर्तनों को स्वीकार करता है।
पहली बार असफल होने वाले अधिकांश लोग पांच श्रेणियों में से किसी एक में आते हैं।
| लक्षण | कारण | फिक्स |
|---|---|---|
| JAVA_HOME सेट नहीं है और इसे ढूंढा नहीं जा सका। | यह वेरिएबल .bashrc में एक्सपोर्ट किया गया है, लेकिन hadoop-env.sh में नहीं। | hadoop-env.sh के अंदर JDK का पूर्ण पथ भी सेट करें। |
| ssh localhost पर अनुमति अस्वीकृत (सार्वजनिक कुंजी, पासवर्ड) | authorized_keys या तो गायब है या बहुत अधिक अनुमेय है | id_rsa.pub को पुनः जोड़ें, फिर ~/.ssh/authorized_keys पर chmod 600 कमांड चलाएँ। |
| पोर्ट 22 पर कनेक्शन अस्वीकृत | openssh-server या तो स्थापित नहीं है या चल नहीं रहा है | openssh-server इंस्टॉल करें और ssh सेवा शुरू करें। |
| पुनः स्वरूपित करने के बाद jps से डेटा नोड गायब है | Cluster स्वरूपित NameNode और पुराने DataNode निर्देशिका के बीच ID बेमेल है | dfs.datanode.data.dir फ़ोल्डर को खाली करें, फिर एक बार और फॉर्मेट करें। |
| start-dfs.sh: कमांड नहीं मिली | वर्तमान शेल में HADOOP_HOME और PATH को कभी भी सोर्स नहीं किया गया था। | .~/.bashrc फ़ाइल चलाएँ या एक नया टर्मिनल खोलें |





























