写这篇文章是为了防止自己忘记,还有一些简单问题的解释。
ubuntu的版本是:14.10
java version 是1.7
hadoop version 是2.6.0
1: 建立3个ubuntu虚拟机,这个网上有很多大家可以很容易的去查到。
2:安装ssh,这个大家也可以去查到,其中的虚拟机必须可以互相免密码登录
3:修改虚拟机的用户名,还有修改虚拟机的IP以确保可以互相连接。直接上图大家看。
打开后如下图:配上三个IP地址
hadoop 作为master, hadoop1跟hadoop2作为datanode
然后保存。
接下来修改用户当前主机的用户名:命令如下
打开后里面就保留一个用户名hadoop就可以了
另外两个虚拟机同样此操作改用户名,加上IP 然后都要重启才可以。
修改IP如下图:
只修改修改里面的IPV4,变成手动修改,写上自己的IP然后保存就好,然后重启一下虚拟机的网络就可以了,虚拟机hadoop1,hadoop2也是如此改IP
4.接下来就是下载hadoop 网址http://hadoop.apache.org/releases.html
4.1 解压 tar -zxvf hadoop-2.6.0,
4.2 然后改名字为hadoop: mv hadoop-2..6.0 hadoop
4.3 在移动到自己想要的文件夹下: sudo mv hadoop 目标文件夹
5.修改配置文件:
5.1 用命令打开 : sudo vim /etc/profile 然后修改 如下图 然后保存 不要忘记 source一下这个文件
5.2 修改配置文件
Configuration file : hadoop-env.sh
## Update JAVA_HOME variable,
JAVA_HOME=/home/hadoop/hadoop/jdk
Configuration file : core-site.xml<configuration> <property> <name>hadoop.tmp.dir</name> <value>/home/hadoop/hadoop/tmp</value> <description>Abase for other temporary directories.</description> </property> <property> <name>fs.defaultFS</name> <value>hdfs://hadoop:9000</value> </property> <property> <name>io.file.buffer.size</name> <value>131072</value> </property> </configuration>
Configuration file : hdfs-site.xml
<configuration>
<property>
<name>dfs.namenode.dir</name>
<value>/home/hadoop/hadoop/dfs/name</value>
<description>Path on the local filesystem where the NameNode stores the namespace and transactions logs persistently.</description>
</property>
<property>
<name>dfs.datanode.dir</name>
<value>/home/hadoop/hadoop/dfs/data</value>
<description>Comma separated list of paths on the local filesystem of a DataNode where it should store its blocks.</description>
</property>
<property>
<name>dfs.replication</name>
<value>2</value>
</property>
<property>
<name>dfs.permissions</name>
<value>false</value>
</property>
</configuration>
Configuration file : yarn-site.xml
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.resourcemanager.address</name>
<value>hadoop:8032</value>
</property>
<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>hadoop:8030</value>
</property>
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>hadoop:8035</value>
</property>
<property>
<name>yarn.resourcemanager.admin.address</name>
<value>hadoop:8033</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>hadoop:8088</value>
</property>
<property>
<name>Yarn.nodemanager.local-dirs</name>
<value>/home/hadoop/hadoop/mynode/my</value>
</property>
Configuration file : mapred-site.xml
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<property>
<name>mapreduce.jobhistory.address</name>
<value>hadoop:10020</value>
</property>
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>hadoop:19888</value>
</property>
6 :然后把这个配置好hadoop拷贝到其他的两个虚拟机中,这样配置的结 果都一样了。
命令: scp -r ~/hadoop hadoop1:~/
scp -r ~/hadoop hadoop2:~/
7. 然后格式化 namenode 启动hadoop
出现的问题 :
Unable to load native-hadoop library 这个问题困扰我好久
最后是按照这个才实现的 我只给个链接,大家自己去看吧:
http://www.ercoppa.org/Linux-
Compile-Hadoop-220-fix-Unable-to-load-native-hadoop-library.htm