本文的目的:Win7中使用Eclipse連接虛擬機中的Ubuntu中的Hadoop2.7
版本:Hadoop2.7.1
hadoop安裝模式:偽分布式
本文主要解決的問題:檢查點:1. 配置文件是否正確,localhost是否需要替換成hadoop master的IP
2. 集群是否啟動
3. 是否關閉防火牆
4. hosts中主機名和地址是否映射
5. 虛擬機的IP是否設置成橋接模式靜態ip, 檢查虛擬機和主機是否可以互相ping通;
6. eclipse hadoop連接配置是否正確, 端口是否與core-site.xml配置文件一致;
修改hadoop location參數,在advanced parameter選項卡中,hadoop.tmp.dir: /usr/local/hadoop/tmp 與core-site.xml保持一致;
配置:
core-site.xml<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://<hadoop master ip地址>:9000</value> <!--這裡網上有人說localhost會出錯,測試如此,更換為<pre name="code" class="html">hadoop master ip地址-->
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>file:/usr/local/hadoop/tmp</value>
<description>A base for other temporary directories.</description>
</property>
</configuration>
注意fs.defaultFS 的配置
hdfs-site.xml<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/usr/local/hadoop/tmp/dfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/usr/local/hadoop/tmp/dfs/data</value>
</property>
<property>
<name>dfs.webhdfs.enabled</name>
<value>true</value>
</property>
<property>
<name>dfs.permissions</name>
<value>false</value> <!-- 這裡需要增加 -->
</property>
</configuration>
打開conf/hdfs-site.xml,增加dfs.permissions的配置,取消hadoop hdfs的用戶權限檢查
mapred-site.xml<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
hadoop 2.7.1的mapreduce交給yarn管理
yarn-site.xml<configuration>
<!-- Site specific YARN configuration properties -->
<property>
<name>yarn.resourcemanager.hostname</name>
<value>z10</value> <!--記得配置主機名-->
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
<span >更改hadoop集群master的hosts</span>
root@z10:~# cat /etc/hosts
127.0.0.1 localhost z10
127.0.1.1 ubuntu
關閉防火牆(ubuntu)1.關閉ubuntu的防火牆 ufw disable
2.卸載了iptables apt-get remove iptables
3. 查看防火牆狀態 sudo ufw status
4.啟用:
sudo ufw enable
sudo ufw default deny
啟動集群 hadoop
namenode -format
{HADOOP_HOME}/sbin/start-all.sh
jps 查看是否啟動成功18850 DataNode
19362 NodeManager
19045 SecondaryNameNode
19708 Jps
19228 ResourceManager
18717 NameNode
創建hdfs input output文件夾hadoop fs -mkdir /input
hadoop fs -mkdir /onput
可以跑一個wordcount的例子測試hadoop集群是否啟動成功
hadoop fs -mkdir /input
hadoop fs -put README.txt /input
hadoop fs -ls /input
hadoop fs -cat /input/README.txt
hadoop jar hadoop-mapreduce-examples-2.7.1.jar wordcount /input /output
hadoop fs -cat /output/part-r-00000
window7上:關閉防火牆;
下載對應hadoop2.7.1版本的eclipse 插件 hadoop-eclipse-plugin-2.7.1.jar;
將hadoop-eclipse-plugin-2.7.1.jar拷貝到\eclipse\plugins目錄下,重啟eclipse;
在apache hadoop官網上下載對應hadoop2.7.1,解壓置於E:\Hadoop\hadoop-2.7.1
,主要為eclipse上hadoop程序開發提供jar包;
在eclipse Window->preference, 配置hadoop路徑E:\Hadoop\hadoop-2.7.1 ;
顯示Hadoop連接配置窗口:Window--Show
View--Other-MapReduce Tools,如下圖所示:
配置連接Hadoop,如下圖所示:
查看DFS
Location
即可
發現了另一篇不錯的文章,分享:/content/3793965.html