本文为笔者安装配置过程中详细记录的笔记 1. 下载hadoop
hadoop-2.7.1.tar.gz
hadoop-2.7.1-src.tar.gz 64位linux需要重新编译本地库 2. 准备环境
Centos6.4 64位,3台
hadoop0 192.168.1.151namenode
hadoop1 192.168.1.152 datanode1 Hadoop2 192.168.1.153 datanode2
1)安装虚拟机:
vmware WorkStation 10,创建三台虚拟机,创建时,直接建立用户ha,密码111111.同时为root密码。网卡使用桥接方式。
安装盘
、
2). 配置IP.创建完成后,设置IP,可以直接进入桌面,在如下菜单下配置IP,配置好后,PING确认好用。
3)更改三台机器主机名
切换到root用户,更改主机名。 [ha@hadoop0 ~]$ su - root Password:
[root@hadoop0 ~]# hostname hadoop0
[root@hadoop0 ~]# vi /etc/sysconfig/network NETWORKING=yes HOSTNAME=hadoop0
以上两步后重启服务器。三台机器都需要修改。 4)创建hadoop用户
由于在创建虚拟机时,已自动创建,可以省略。否则用命令创建。
5)修改hosts文件
[root@hadoop0 ~]# vi /etc/hosts
127.0.0.1 localhostlocalhost.localdomain localhost4 localhost4.localdomain4 ::1localhostlocalhost.localdomain localhost6 localhost6.localdomain6 192.168.1.151 hadoop0 192.168.1.152 hadoop1 192.168.1.153 hadoop2 此步骤需要三台机器都修改。
3. 建立三台机器间,无密码SSH登录。
1)三台机器生成密钥,使用hadoop用户操作 [root@hadoop0 ~]# su– ha
[ha@hadoop0 ~]$ ssh -keygen -t rsa 所有选项直接回车,完成。 以上步骤三台机器上都做。
2)在namenode机器上,导入公钥到本机认证文件
[ha@hadoop0 ~]$ cat ~/.ssh/id_rsa.pub>>~/.ssh/authorized_keys
3)将hadoop1和hadoop2打开/home/ha/.ssh/ id_rsa.pub文件中的内容都拷贝到hadoop0的/home/ha /.ssh/authorized_keys文件中。如下:
4)将namenode上的/home/ha /.ssh/authorized_keys文件拷贝到hadoop1和hadoop2的/home/ha/.ssh文件夹下。同时在三台机器上将authorized_keys授予600权限。 [ha@hadoop1 .ssh]$ chmod 600 authorized_keys
5)验证任意两台机器是否可以无密码登录,如下状态说明成功,第一次访问时需要输入密码。此后即不再需要。
[ha@hadoop0 ~]$ ssh hadoop1
Last login: Tue Aug 11 00:58:10 2015 from hadoop2
4. 安装JDK1.7
1)下载JDK(32或64位),解压
[ha@hadoop0 tools]$ tar -zxvf jdk-7u67-linux-x64.tar.gz 2)设置环境变量(修改/etx/profile文件), export JAVA_HOME=/usr/jdk1.7.0_67
export CLASSPATH=:$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib export PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/bin 3)使环境变量生效,然后验证JDK是否安装成功。
[ha@hadoop1 ~]$ source /etc/profile [ha@hadoop1 ~]$ java -version java version \
Java(TM) SE Runtime Environment (build 1.7.0_67-b01)
Java HotSpot(TM) 64-Bit Server VM (build 24.65-b04, mixed mode)
5. 关闭防火墙
[root@hadoop0 ~]#chkconfigiptables off //关闭开机启动 [root@hadoop0 ~]# service iptables stop //停止防火墙 关闭selinux
[root@hadoop0 ~]#vi /etc/selinux/config SELINUX=disable
6. 编译hadoop本地库,
如果是64位linux,需要通过hadoop源代码重新编译本地库。32位的不用编译。 1.)编译相关包下载
下载重新编译需要的软件包 apache-ant-1.9.6-bin.tar.gz findbugs-3.0.1.tar.gz protobuf-2.5.0.tar.gz
apache-maven-3.3.3-bin.tar.gz 下载hadoop2.7.1的源码包
hadoop-2.7.1-src.tar.gz
2)安装相关包
[root@hadoop0 ~]#tar -zxvfhadoop-2.7.1-src.tar.gz
[root@hadoop0 ~]#tar -zxvfapache-maven-3.3.3-bin.tar.gz -C /opt/ [root@hadoop0 ~]#tar -zxvfapache-ant-1.9.6-bin.tar.gz -C /opt/ [root@hadoop0 ~]#tar -zxvffindbugs-3.0.1.tar.gz -C /opt/ [root@hadoop0 ~]#tar -zxvf protobuf-2.5.0.tar.gz 3) 修改/etc/profile
[root@hadoop0 ~]#vi/etc/profile
export MAVEN_HOME=/home/ha/maven-3.3.3
export ANT_HOME=/home/ha/ant-1.9.6
export FINDBUGS_HOME=/home/ha/findbugs-3.0.1
export PATH=$PATH:$FINDBUGS_HOME/bin:$MAVEN_HOME/bin:$ANT_HOME/bin [root@hadoop0 ~]#source/etc/profile
4) 安装PROTOBUF
[root@hadoop0 ~]# cd protobuf-2.5.0
[root@hadoop0 ~]# ./configure [root@hadoop0 ~]# make
[root@hadoop0 ~]# make check [root@hadoop0 ~]# make install 5)验证各软件是否安装成功。
[root@hadoop0 ~]#mvn–v
[root@hadoop0 ~]# ant–version
[root@hadoop0 ~]#findbugs–version
[root@hadoop0 ~]#protoc–version 6)安装依赖包
[root@hadoop0 ~]# yum -y install svnncurses-develgcc* [root@hadoop0 ~]# yum -y lzo-develzlib-develautoconfautomakelibtoolcmakeopenssl-devel 7)编译hadoop
[root@hadoop0 hadoop-2.7.1-src]# cd /home/ha/hadoop-2.7.1-src [root@hadoop0 hadoop-2.7.1-src]# mvn clean install –DskipTests
[root@hadoop0 hadoop-2.7.1-src]# mvn package -Pdist,native -DskipTests–Dtar
执行过程中,会从互联网下载许多东西,由于网络原因,可能会失败,多执行几次就会成功。 编译成功后,会出现
/home/ha/hadoop-2.7.1-src/hadoop-dist/target/hadoop-2.7.1/lib/native文件夹。 7. 安装hadoop
1) 解压hadoop
[ha@hadoop0 ~]$tar –zxvfhadoop-2.7.1.tar.gz
并将上一步编译好的native的内容替换/home/ha/hadoop-2.7.1/lib/native内容 2) 修改/home/ha/hadoop-2.7.1/etc/hadoop下配置文件。
hadoop-env.shhdfs-site.xmlcore-site.xmlmapred-site.xmlslavesyarn-env.shyarn-site.xml略,详见配置文件.
需要建立/home/ha/tmp,/home/ha/dfs/name,/home/ha/dfs/data三个文件夹。 在core-site.xml中配置
在hdfs-site.xml中配置
配置mapred-site.xml文件
配置yarn-site.xml