@Luis Alvarado adlı türeyen cevap , burada Ubuntu 14.04 ve Hadoop'un 2.5.1 benim sürümüdür
Kısaca
- Java'yı yükleyin
- Hadoop için yönetici kullanıcı hazırla
hduser
hduser
Şu andan itibaren geçiş yap
hduser
Parola içermeyen ssh ile uzaktan kumandaya izin ver
- IPv6'yı devre dışı bırak
- Hadoop paketini indirin ve yapılandırın
- $ HADOOP_HOME ve $ JAVA_HOME sistem yolunu hazırla
- Hadoop'un hizmetlerini yapılandırın
- Hadoop'un hizmetlerini başlat
Bitti. İyi şanslar!
Detay adımları
Java'yı yükleyin
İndir ve yükle
$ sudo add-apt-repository ppa:webupd8team/java
$ sudo apt-get update && sudo apt-get upgrade
$ sudo apt-get install oracle-java7-installer
Java7'nin kurulu olduğundan emin olun.
$ which java
$ ls -l /usr/bin/java
$ ls -l /etc/alternatives/java
java
işaret etmeliydik/usr/lib/jvm/java-7-oracle/jre/bin/java
Hadoop için yönetici kullanıcı hazırlahduser
hduser
Grupta kullanıcı oluşturhadoop
$ sudo addgroup hadoop
$ sudo adduser --ingroup hadoop hduser
Grant Sudo ayrıcalığıhduser
Sudo düzenle
$ sudo visudo
Bu satırı sonuna ekle
hduser ALL=(ALL:ALL) ALL
hduser
Şu andan itibaren geçiş yap
$ su - hduser
hduser
Parola içermeyen ssh ile uzaktan kumandaya izin ver
Openssh'ı yükle
$ sudo apt-get install openssh-server
SSH bağlantısı için RSA ortak / özel anahtar oluşturun; parola olarak boşparameter -P ""
$ ssh-keygen -t rsa -P ""
$ cat .ssh/id_rsa.pub >> .ssh/authorized_keys
hduser
Parolanız olmadan yerel olarak uzaktan ssh yapabildiğinizden emin olun.
$ ssh localhost
IPv6'yı devre dışı bırak
Yapılandırma dosyasını düzenleyin
$ sudo nano /etc/sysctl.conf
Sonuna kopyala
#disable ipv6
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
IPv6'nın bir yeniden başlatma veya arama tarafından kapalı olduğundan emin olun
$ sudo sysctl -p
Sonra ara
$ cat /proc/sys/net/ipv6/conf/all/disable_ipv6
1 demek gerekir ki Tamam ^^
Hadoop paketini indirin ve yapılandırın
Apado Hadoop sitesinden Hadoop 2.5.1 paketlerini indirin
Bu paketin doğrudan URL'si bu bağlantıdır
http://www.eu.apache.org/dist/hadoop/core/hadoop-2.5.1/hadoop-2.5.1.tar.gz
Öyleyse hduser
ana klasörünü indirebilir , çıkarabilir ve yenidenhadoop
$ 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
hduser
Evde Hadoop'un bulunduğundan emin olun
$ ls /home/hduser/hadoop
$ HADOOP_HOME ve $ JAVA_HOME sistem yolunu hazırla
Düzen hduser
'ın .bashrc dosyası
$ nano .bashrc
Bitiş değerlerine koyun $HADOOP_HOME
ve$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
klasörlerini sisteme ekleyin$PATH
export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH
Yeni bir terminal aç, olarak giriş hduser
yap ve uygun komutlarla $ HADOOP_HOME'a sahip olduğundan emin ol
$ echo $HADOOP_HOME
$ which start-all.sh
$ which start-dfs.sh
$ which start-yarn.sh
Bu isimlerin tam yolunu görmeliyiz.
Hadoop'un hizmetlerini yapılandırın
Hadoop'taki her bileşen bir XML dosyası kullanılarak yapılandırılmıştır.
Ortak özellikler core-site.xml dosyasındadır.
HDFS özellikleri hdfs-site.xml dosyasındadır.
MapReduce özellikleri mapred-site.xml dosyasına gider
Bu dosyaların tümü $ HADOOP_HOME / etc / hadoop klasöründe bulunur
hadoop-env.sh
Çizgiyi düzenleyerek tekrar, JAVA_HOME içinde tanımlayın
export JAVA_HOME=/usr/lib/jvm/java-7-oracle
Core-site.xml adresindeki Hadoop temp folder
ve file system
adını tanımlayın .
<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>
Bunu temp folder
, yapılandırıldığı şekilde hazırlamamız gerekiyor ./home/hduser/tmp
$ cd /home/hduser
$ mkdir tmp
$ chown hduser:hadoop tmp
$ chmod 755 tmp
Define file system
's block replication
in HDF'ler-site.xml dosyasını
<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>
Define map-reduce job
içinde mapred-site.xml dosyasını
<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>
Biçim name node
$ hdfs namenode -format
Hadoop servisini başlat
Aramak
$ start-dfs.sh && start-yarn.sh
bu iki komut, daha önce $ PATH sistemine eklediğimiz $ HADOOP_HOME / sbin konumunda bulunur.
Hadoop servislerinin doğru şekilde başlatıldığından emin olun.
$ jps
görmeliyiz