1、 搭建linux环境
我准备的环境是VM RedHat Linux 6.5 64bit
设置固定IP
vim /etc/sysconfig/network-scripts/ifcfg-eth0
将IP地址设定为192.168.38.128
修改主机名: vim /etc/hosts
将主机名改为 itbuilder1
2、安装JDK
配置好JDK的环境变量
3、安装hadoop环境
从Apache官网下载2.7.1版本的hadoop核心包
地址:http://archive.apache.org/dist/hadoop/core/stable2/hadoop-2.7.1.tar.gz
3.1 将安装包解压到制定目录下
首先创建一个目录: mkdir /usr/local/hadoop
将文件解压到/usr/local/hadoop目录下:tar -zxvf hadoop-2.7.1.tar.gz -C /usr/local/hadoop
3.2 修改配置文件
hadoop2.7.1版本需要修改5个配置文件,如下
1、hadoop-env.sh
2、core-site.xml
3、hdfs-site.xml
4、mapred-site.xml(mapred-site.xml.template)
5、yarn-site.xml
这5个文件都在hadoop木下的etc中,具体目录为: /usr/local/hadoop/hadoop-2.7.1/etc/hadoop/
3.2.1 修改环境变量(hadoop-env.sh)
使用vim命令打开 hadoop-env.sh文件
在指定JavaHome的地方设置好JDK的根目录,如下图:
export JAVA_HOME=/usr/java/jdk1.8.0_20
3.2.2 core-site.xml 配置,指定HDFS的namenode以及临时文件地址
<configuration>
<!--指定HDFS的老大 (NameNode)的地址-->
<property>
<name>fs.defaultFS</name>
<value>hdfs://itbuilder1:9000</value>
</property>
<!--指定hadoop运行时产生文件的存放目录-->
<property>
<name>hadoop.tmp.dir</name>
<value>/usr/local/hadoop/hadoop-2.7.1/tmp</value>
</property>
</configuration>
3.2.3 hdfs-site.xml (指定副本数量)
<!--制定HDFS保存数据副本的数量-->
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
3.2.4 mapred-site.xml 告诉hadoop以后MR运行在yarn上
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
3.2.5 yarn-site.xml
<configuration>
<!--告诉 nodemanager 获取数据的方式是shuffle的方式 -->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<!--制定yarn的老大(ResourceManager)的地址 -->
<property>
<name>yarn.resourcemanager.hostname</name>
<value>itbuilder1</value>
</property>
</configuration>
4、将hadoop添加到环境变量中
vim /etc/profile
export JAVA_HOME=/usr/java/jdk1.8.0_20
export HADOOP_HOME=/usr/local/hadoop/hadoop-2.7.1
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin
#刷新一下/etc/profile
source /etc/profile
5、初始化(格式化)文件系统(HDFS)
#hadoop namenode -format (已经过时了)
hdfs namenode -format (最新的 等待时间较长)
6、启动hadoop (hdfs yarn)
./start-all.sh(过时了,需要多次确认并且输入linux密码) 以后改用一下两个命令
./start-hdfs.sh
./start-yarn.sh
通过jps 命令查看当前打开的进程
[root@itbuilder1 ~]# jps
3461 ResourceManager
3142 DataNode
3751 NodeManager
3016 NameNode
5034 Jps
3307 SecondaryNameNode
访问管理界面:
http://192.168.38.128:50070 (hdfs管理界面)
http://192.168.38.128:8088 (mr管理界面)
这两个界面打开,说明安装成功
7、测试hdfs
上传文件
hadoop fs -put /usr/jdk-8u20-linux-x64.tar.gz hdfs://itbuilder1:9000/itbuilder1
下载文件
hadoop fs -get hdfs://itbuilder1:9000/itbuilder1 /usr/jdk
8、 运行一个例子
创建一个文本,上传到hdfs
vi words
hadoop fs -put words hdfs://itbuilder1:9000/words
hadoop jar hadoop-mapreduce-examples-2.7.1.jar wordcount hdfs://itbuilder1:9000/words hdfs://itbuilder1:9000/wcount
9、 设置SSH个免登陆 (hadoop启动时免登陆密码)
进入/root/.ssh里
使用ssh-keygen -t rsa 创建一个秘钥 (生成一个私钥与一个公钥)
将公钥保存到authorized_kes中 cp id_rsa.pub authorized_keys
相关推荐
hadoop-eclipse-plugin-2.7.1.jar插件,直接放在eclipse插件目录中
hadoop-mapreduce-examples-2.7.1.jar
hadoop-eclipse-plugin-2.7.1的jar包,在eclipse中使用hadoop插件。
hadoop-mapreduce-client-core-2.7.1.jar,java开发的jar包需要的直接下载
hadoop-eclipse-plugin-2.7.1.jar提取密码,可凭借此密码在百度网盘中提取资源
hadoop-mapreduce-client-hs-2.7.1.jar
在Eclipse下开发Hadoop可能会用的一个插件。该插件适用于Hadoop2.7.1版本,其他版本也用,但可能会有一点小问题,不过不影响使用
hadoop-common-2.7.1需要的工具包,其中包括hadoop.dll,winutils.exe
hadoop中的demo,wordcount列子用到的JAR包 用法: # 在容器里运行WordCount程序,该程序需要2个参数...hadoop jar hadoop-mapreduce-examples-2.7.1-sources.jar org.apache.hadoop.examples.WordCount input output
hadoop-mapreduce-client-common-2.7.1,java开发的jar包需要的直接下载
自己使用的,32位版本的hadoop2.7.1,window下的主要插件都有包括hadoop-eclipse-plugin-2.7.1.jar、hadoop.dll和winutils.exe等等。hadoop2.7.2应该可以用,自己没试过,如果报UnsatisfiedLinkError: org.apache....
Hadoop-ecplise-plugin-2.7.1.jar和hadoop.dll、winutls.exe 等文件
hadoop-eclipse2.7.1、hadoop-eclipse2.7.2、hadoop-eclipse2.7.3
在Windows下执行时遇到的UnsatisfiedLinkError以及java.io.IOException: Could not locate executable null\bin\winutils.exe in the Hadoop binaries问题,解决:把插件里面的文件解压缩至%HADOOP_HOME%\bin目录下
hadoop-common-2.7.1-bin-master-master.zip, 用于Hadoop的bin目录下没有winutils.exe文件时