Installera och konfigurera HADOOP på OsX
Installera Hadoop på OSX
Jag bestämde mig för att jag ville installera ett Hadoop kluster på Mac jag kör, detta beslutades främst på grund av Xgrid inleds inte längre på den nya version os OsX. Jag har setup SGE kluster innan, Xgrid uppenbarligen, och Microsoft Cluster Server så jag ville få det under mitt bälte. Detta är inte den slutgiltiga guiden men det fungerade ganska bra för mig, jag är fortfarande inte säker på några begrepp men det kommer med praktiken.
Det första steget är att kontrollera att du har grunderna.
Xcode kommandoradsverktyg och Javautvecklare för din version os OsX.
https://Developer.Apple.com/downloads/index.Action
Kan skapa en grupp och en användare på varje maskin.
Skapa en grupp med namnet "hadoop" och sedan lägga till en admin-användare 'hadoopadmin' i gruppen.
Kan göra allt som hadoopadmin att göra det enkelt.
Du kan hämta Hadoop och installera det själv men jag tog en genväg och brukade homebrew installera den.
-> brew installera hadoop
Detta anger alla dina env stigar i ordentlig hadoop config filer så detta är en hjälp.
En gång installerat kan ange config filerna i hadoop.
Jag heter mina maskiner
hadoop01 & hadoop02 för de första två.
Konfigurera filen masters och slavar på alla maskiner.
Master:
hadoopadmin
slavar:
hadoopadmin
hadoopadmin
Även konfigurera/etc/hosts på alla maskiner.
#
# localhost används för att konfigurera loopback-gränssnittet
# När systemet startar. Ändra inte detta inlägg.
##
127.0.0.1 localhost
255.255.255.255 broadcasthost
:: 1 localhost
FE80::1% lo0 localhost
#
#
#
# hadoop
132.235.132.67 hadoop01
132.235.132.46 hadoop02
Jag använder 2.4.0 så de ligger i
/usr/local/Cellar/hadoop/2.4.0/libexec/etc/hadoop
Redigera
hadoop-env.sh
Jag har ändrat dessa två rader.
#export JAVA_HOME="$(/usr/libexec/java_home)"
till
exportera JAVA_HOME ='/ usr/libexec/java_home - v 1.6'
och
#export HADOOP_OPTS = "$HADOOP_OPTS-Djava.net.preferIPv4Stack=true"
till
exportera HADOOP_OPTS = "- Djava.security.krb5.realm= - Djava.security.krb5.kdc="
Det sista man stoppat ett fel som jag fick vid start.
Redigera
fläskfilé-site.xml
Infoga denna konfiguration
DFS.Replication
3
DFS.Name.dir
/usr/local/Cellar/hadoop/2.4.0/hdfs/Name
DFS.data.dir
/usr/local/Cellar/hadoop/2.4.0/hdfs/data
Redigera
mapred-site.xml.template
Infoga
mapred.job.tracker
hadoop01:9001
Redigera
Core-site.xml
FS.default.Name
hdfs://hadoop01:9000
hadoop.tmp.dir
/usr/local/Cellar/hadoop/2.4.0/tmp
Nu kan skapa några hadoop kataloger
/usr/local/Cellar/hadroop/2.4.0
-> hadoop - mkdir tmp
-> hadoop - mkdir fläskfilé
-> hadoop - mkdir fläskfilé/namn
-> hadoop - mkdir fläskfilé/data
Jag aktiverade passwordless SSH på alla maskiner.
ssh-keygen - t dsa -P "-f ~/.ssh/id_dsa
katt ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
Jag hittade info om detta på
http://StackOverflow.com/Questions/7134535/setup-passphraseless-SSH-to-localhost-on-OS-x
Jag formaterade sedan noden namn
-> hadoop namenode-format
Sedan började hadoop genom att köra
/usr/local/Cellar/hadoop/2.4.0/libexec/sbin/start-all.sh
Jag gjorde allt det här på alla mina maskiner, även om vissa objekt som jag tror inte behöver vara.
Jag måste tacka
http://StackOverflow.com &
http://dennyglee.com
För handledning och hjälp att få igenom detta.
Tack
Joe Murphy
AKA Grehyton