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