@Luis अल्वाराडो के जवाब से व्युत्पन्न , यहाँ Ubuntu 14.04 और Hadoop 2.5.1 के लिए मेरा संस्करण है
संक्षेप में
- जावा स्थापित करें
- Hadoop के लिए एक कार्यकारी उपयोगकर्ता तैयार करें
hduser
hduser
अब से स्विच करें
hduser
पास-वाक्यांश-कम के साथ ssh के माध्यम से दूरस्थ करने की अनुमति दें
- IPv6 को अक्षम करें
- Hadoop पैकेज डाउनलोड और कॉन्फ़िगर करें
- सिस्टम पथ $ HADOOP_HOME और $ JAVA_HOME तैयार करें
- Hadoop की सेवाओं को कॉन्फ़िगर करें
- Hadoop की सेवाएँ प्रारंभ करें
किया हुआ। सौभाग्य!
विस्तार कदम
जावा स्थापित करें
डाउनलोड करो और इंस्टॉल करो
$ sudo add-apt-repository ppa:webupd8team/java
$ sudo apt-get update && sudo apt-get upgrade
$ sudo apt-get install oracle-java7-installer
सुनिश्चित करें कि आपके पास जावा 7 स्थापित है
$ which java
$ ls -l /usr/bin/java
$ ls -l /etc/alternatives/java
हमें java
इशारा करना चाहिए/usr/lib/jvm/java-7-oracle/jre/bin/java
Hadoop के लिए एक कार्यकारी उपयोगकर्ता तैयार करेंhduser
hduser
समूह में उपयोगकर्ता बनाएँhadoop
$ sudo addgroup hadoop
$ sudo adduser --ingroup hadoop hduser
अनुदान sudo विशेषाधिकारhduser
सुडोल संपादित करें
$ sudo visudo
इस पंक्ति में अंत तक जोड़ें
hduser ALL=(ALL:ALL) ALL
hduser
अब से स्विच करें
$ su - hduser
hduser
पास-वाक्यांश-कम के साथ ssh के माध्यम से दूरस्थ करने की अनुमति दें
Openshsh स्थापित करें
$ sudo apt-get install openssh-server
SSH कनेक्शन के लिए RSA सार्वजनिक / निजी कुंजी उत्पन्न करें; पासफ़्रेज़ के रूप में खाली हैparameter -P ""
$ ssh-keygen -t rsa -P ""
$ cat .ssh/id_rsa.pub >> .ssh/authorized_keys
सुनिश्चित करें कि hduser
पासवर्ड के बिना स्थानीय रूप से दूरस्थ ssh कर सकते हैं
$ ssh localhost
IPv6 को अक्षम करें
कॉन्फ़िगरेशन फ़ाइल संपादित करें
$ sudo nano /etc/sysctl.conf
अंत तक कॉपी करें
#disable ipv6
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
सुनिश्चित करें कि IPv6 एक रिबूट या कॉल द्वारा बंद है
$ sudo sysctl -p
फिर कॉल करो
$ cat /proc/sys/net/ipv6/conf/all/disable_ipv6
इसे 1 कहना चाहिए जिसका अर्थ ठीक है ^ ^
Hadoop पैकेज डाउनलोड और कॉन्फ़िगर करें
Apache Hadoop साइट से Hadoop 2.5.1 पैकेज डाउनलोड करें
इस पैकेज का सीधा URL यह लिंक है
http://www.eu.apache.org/dist/hadoop/core/hadoop-2.5.1/hadoop-2.5.1.tar.gz
तो चलिए hduser
घर के फोल्डर को डाउनलोड करते हैं , उसे निकालते हैं और उसका नाम बदल देते हैंhadoop
$ wget http://www.eu.apache.org/dist/hadoop/core/hadoop-2.5.1/hadoop-2.5.1.tar.gz
$ tar -xvzf hadoop-2.5.1.tar.gz
$ mv hadoop-2.5.1 hadoop
सुनिश्चित करें कि हमारे पास Hadoop hduser
घर में संग्रहीत है
$ ls /home/hduser/hadoop
सिस्टम पथ $ HADOOP_HOME और $ JAVA_HOME तैयार करें
संपादन hduser
.bashrc फ़ाइल
$ nano .bashrc
के लिए अंत मूल्यों के लिए रखो $HADOOP_HOME
और$JAVA_HOME
# Set Hadoop-related environment variables
export HADOOP_HOME=/home/hduser/hadoop
# Set JAVA_HOME (we will also configure JAVA_HOME directly for Hadoop later on)
export JAVA_HOME=/usr/lib/jvm/java-7-oracle
Hadoop binary
फ़ोल्डरों को सिस्टम में जोड़ें$PATH
export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH
एक नया टर्मिनल खोलें, लॉग इन करें hduser
, और सुनिश्चित करें कि आपके पास उपलब्ध आदेशों के साथ $ HADOOP_HOME है
$ echo $HADOOP_HOME
$ which start-all.sh
$ which start-dfs.sh
$ which start-yarn.sh
हमें उन नामों का पूरा मार्ग देखना चाहिए।
Hadoop की सेवाओं को कॉन्फ़िगर करें
Hadoop में प्रत्येक घटक XML फ़ाइल का उपयोग करके कॉन्फ़िगर किया गया है।
आम गुण कोर- site.xml में जाते हैं
HDFS गुण hdfs-site.xml में जाते हैं
MapReduce गुण mapred-site.xml में जाते हैं
ये फ़ाइलें सभी फ़ोल्डर $ HADOOP_HOME / etc / hadoop में स्थित हैं
परिभाषित करें, फिर से, hadoop-env.sh
लाइन संपादित करके JAVA_HOME
export JAVA_HOME=/usr/lib/jvm/java-7-oracle
Hadoop temp folder
और Core-site.xml में file system
नाम परिभाषित करें
<configuration>
...
<property>
<name>hadoop.tmp.dir</name>
<value>/home/hduser/tmp</value>
<description>A base for other temporary directories.</description>
</property>
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:54310</value>
<description>The name of the default file system. A URI whose
scheme and authority determine the FileSystem implementation. The
uri's scheme determines the config property (fs.SCHEME.impl) naming
the FileSystem implementation class. The uri's authority is used to
determine the host, port, etc. for a filesystem.</description>
</property>
...
</configuration>
हमें इसे temp folder
कॉन्फ़िगर किए गए अनुसार तैयार करना होगा/home/hduser/tmp
$ cd /home/hduser
$ mkdir tmp
$ chown hduser:hadoop tmp
$ chmod 755 tmp
परिभाषित करें file system
's block replication
में HDFS-site.xml
<configuration>
...
<property>
<name>dfs.replication</name>
<value>1</value>
<description>Default block replication.
The actual number of replications can be specified when the file is created.
The default is used if replication is not specified in create time.
</description>
</property>
...
</configuration>
Mapred-site.xmlmap-reduce job
में परिभाषित करें
<configuration>
...
<property>
<name>mapred.job.tracker</name>
<value>localhost:54311</value>
<description>The host and port that the MapReduce job tracker runs
at. If "local", then jobs are run in-process as a single map
and reduce task.
</description>
</property>
...
</configuration>
स्वरूप name node
$ hdfs namenode -format
Hadoop सेवा शुरू करें
कॉल
$ start-dfs.sh && start-yarn.sh
ये दोनों कमांड $ HADOOP_HOME / sbin पर स्थित हैं जिसे हमने पहले $ PATH सिस्टम में जोड़ा है।
सुनिश्चित करें कि Hadoop सेवाएं ठीक से शुरू की गई हैं
$ jps
हमें देखना चाहिए