2016-06-05 28 views
1

Hallo Ich habe versucht, dieses Tutorial zu folgen: http://www.tutorialspoint.com/apache_flume/fetching_twitter_data.htm für eine sehr lange Zeit jetzt und ich bin absolut bei Schritt 3 fest: Erstellen Sie ein Verzeichnis in HDFS. Ich habe lief start-dfs.sh und start-yarn.sh und beide scheinen korrekt gearbeitet zu haben, wie ich die gleiche Ausgabe wie das Tutorial ich immer, aber wenn ich zu laufen versuchen:Hadoop: java.net.ConnectException: Verbindung abgelehnt

hdfs dfs -mkdir hdfs://localhost:9000/user/Hadoop/twitter_data 

Ich halte die Aufnahme des gleichen Fehler:

mkdir: Call From trz-VirtualBox/10.0.2.15 to localhost:9000 failed on connection exception: java.net.ConnectException: Connection refused; For more details see: http://wiki.apache.org/hadoop/ConnectionRefused 

ich nicht herausfinden kann, warum, wie ich überall gesucht habe und eine Reihe von Lösungen ausprobiert, aber kann nicht scheinen, Fortschritte zu machen. Ich werde alle Dateien aufzulisten, die ich denke, könnte dies dazu führen, aber ich könnte falsch sein: Mein core.site.xml ist:

<configuration> 
<property> 
<name>hadoop.tmp.dir</name> 
<value>/Public/hadoop-2.7.1/tmp</value> 
<description>A base for other temporary directories.</description> 
</property> 
<property> 
<name>fs.default.name</name> 
<value>hdfs://localhost:9000</value> 
</property> 

Mein mapred-site.xml ist:

<configuration> 
<property> 
<name>mapred.job.tracker</name> 
<value>hdfs://localhost:9001</value> 
</property> 
</configuration> 

Mein hdfs.site.xml ist:

<configuration> 
<property> 
<name>dfs.replication</name> 
<value>1</value> 
</property> 
<property> 
<name>dfs.permission</name> 
<value>false</value> 
</property> 
</configuration> 

ich auf dem virtuellen Feld Ubuntu 14.04.4 LTS leite. Mein ~/.bashrc sieht aus, als so:

export JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk-amd64 
export HADOOP_HOME=/usr/local/hadoop/bin 
export HADOOP_HOME=/usr/local/hadoop/bin 
export HADOOP_INSTALL=$HADOOP_HOME 
export HADOOP_MAPRED_HOME=$HADOOP_HOME 
export HADOOP_COMMON_HOME=$HADOOP_HOME 
export HADOOP_HDFS_HOME=$HADOOP_HOME 
export YARN_HOME=$HADOOP_HOME 
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native 
export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin 
#flume 
export FLUME_HOME=/usr/local/Flume 
export PATH=$PATH:/FLUME_HOME/apache-flume-1.6.0-bin/bin 
export CLASSPATH=$CLASSPATH:/FLUME_HOME/apache-flume-1.6.0-bin/lib/* 

Und schließlich meine/etc/hosts-Datei als so eingerichtet ist:

127.0.0.1 localhost 
10.0.2.15 trz-VirtualBox 
10.0.2.15 hadoopmaster 


# The following lines are desirable for IPv6 capable hosts 
::1  ip6-localhost ip6-loopback 
fe00::0 ip6-localnet 
ff00::0 ip6-mcastprefix 
ff02::1 ip6-allnodes 
ff02::2 ip6-allrouters 

Die zusätzliche hadoopmaster Ich bin derzeit nicht verwende, war, dass ein Meine Versuche, dies zu beheben, indem ich versuche, den lokalen Host nicht zu verwenden (hat nicht funktioniert). trz-VirtualBox war ursprünglich 127.0.1.1, aber ich habe gelesen, dass Sie Ihre echte IP-Adresse verwenden sollten? Keiner hat funktioniert, also bin ich mir nicht sicher. Ich habe alle diese Dateien gepostet, weil ich nicht weiß, wo der Fehler ist. Ich glaube nicht, dass es ein Wegproblem ist (ich hatte viel, bevor ich zu diesem Schritt kam und in der Lage war, sie selbst zu lösen), also habe ich keine Ideen mehr. Ich bin jetzt schon seit mehreren Stunden hier, also wird jede Hilfe geschätzt. Vielen Dank.

+0

Was die Ausgabe von Schritt 2, gibt es ein Fehlerprotokoll? – andy

+0

Ausgabe des ersten Befehls: trz @ trz-VirtualBox:/usr/local/hadoop/sbin $ sudo ./start-dfs.sh Starten von nomenodes auf [localhost] localhost: start nameode, protokollieren nach/usr/local/hadoop /logs/hadoop-root-namenode-trz-VirtualBox.out localhost: Datanode starten, Protokollierung in /usr/local/hadoop/logs/hadoop-root-datanode-trz-VirtualBox.out Starten sekundärer namenodes [0.0.0.0 ] 0.0.0.0: Start sekundärnameode, Protokollierung in /usr/local/hadoop/logs/hadoop-root-secondarynodenode-trz-VirtualBox.out –

+0

Zweiten Befehl ausgeben: trz @ trz-VirtualBox:/usr/local/hadoop/sbin $ sudo ./start-yarn.sh Start Garn Daemons Start Resourcenmanager, Protokollierung auf/usr/local/hadoop/logs/Garn-Wurzel-resourcemanage r-trz-VirtualBox.out localhost: Starten von nodemanager, Anmelden an /usr/local/hadoop/logs/yarn-root-nodemanager-trz-VirtualBox.out –

Antwort

1

Sie haben

auf die Verzeichnisberechtigungen zu setzen ist hadoop
sudo chown -R user:pass /hadoop_path/hadoop 

dann das Cluster starten und Führen Sie den Befehl jps aus, um den Prozess DataNode und NameNode anzuzeigen.

1

Ich bekam ähnliche Fehler. Bei der Überprüfung stellte ich fest, dass mein Namenknoten im gestoppten Zustand war. sudo status hadoop-hdfs-namenode - Prüfstatus der NameNode

, wenn sein Zustand nicht sudo start hadoop-hdfs-namenode in gestartet/Laufen - Start NameNode Service

Halten Sie daran, dass es Zeit braucht, bevor -Namensknoten Dienst nach dem Neustart voll funktionsfähig wird. Es liest alle hdfs Bearbeitungen im Speicher. Sie können den Fortschritt überprüfen in/var/log/hadoop-hdfs/mit dem Befehl tail -f /var/log/hadoop-hdfs/{Latest log file}

Verwandte Themen