hadoop-2.7.1 For CentOS6.5安装

来源:互联网 发布:qt 64位 windows 编辑:程序博客网 时间:2024/05/16 01:58

1、环境解释

系统:centos 6.5 64bit

本次实验包括:1个Master,3个Salve,节点之间局域网连接,可以相互ping通,

节点IP地址分布如下:

192.168.8.141 HD2

192.168.8.142 HD2

192.168.8.143 HD3

192.168.8.144 HD4

修改主机名、修改IP地址,这里不做简述。


2、修改/etc/hosts

在/etc/hosts 下添加如下

cat >>/etc/hosts<<EOF

192.168.8.141HD1

192.168.8.142HD2

192.168.8.143HD3

192.168.8.144HD4

EOF

3、软件下载2.7所需软件

下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html

   JDK版本:jdk-7u40-linux-x64.gz

2)Hadoop软件

    下载地址:http://hadoop.apache.org/common/releases.html

   Hadoop版本:hadoop-2.7.1.tar.gz

软件下载好。上传到HD1 的/soft下


4、ssh互信设置

1)创建用记

useradd hadoop

2)在每台主机上以hadoop用户执行

mkdir~/.ssh

chmod 700~/.ssh

 ssh-keygen -t rsa

3).在主节点以上root用户执行以下操作
ssh HD1  cat ~/.ssh/id_rsa.pub>>~/.ssh/authorized_keys

ssh HD2  cat ~/.ssh/id_rsa.pub >>~/.ssh/authorized_keys    

ssh HD3  cat ~/.ssh/id_rsa.pub>>~/.ssh/authorized_keys

ssh HD4 cat ~/.ssh/id_rsa.pub>>~/.ssh/authorized_keys

 chmod 600~/.ssh/authorized_keys

 4)复制到每台主机

scp  ~/.ssh/authorized_keys HD2:/usr/hadoop/.ssh/authorized_keys

scp  ~/.ssh/authorized_keys HD3:/usr/hadoop/.ssh/authorized_keys

scp  ~/.ssh/authorized_keys  HD4:/usr/hadoop/.ssh/authorized_keys

5)测试 

ssh HD1 date

ssh HD2 date

ssh HD3 date

ssh HD4 date

 

如果不用密码直接登陆就代表已经成功


5、安装Java

在每一台主机上都安装

1)、以root用户执行

mkdir /usr/java

cd /soft/

gunzip jdk-7u40-linux-x64

tar -xvf  jdk-7u40-linux-x64

mv jdk1.7.0_40 /usr/java/.

 

2)、配置环境变量

在/etc/profile结尾处加如下

cat>>/etc/profile<<EOF

------------------------------------------------------------------------

# set java environment
export JAVA_HOME=/usr/java/jdk1.7.0_71/

 exportJRE_HOME=$ JAVA_HOME/jre
export CLASSPATH=.:$CLASSPATH:$JAVA_HOME/lib:$JRE_HOME/lib
export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin

EOF

--------------------------------------------------------------------------

3)、生效变量

source /etc/profile

 

4)、验证安装

java -version

java version "1.7.0_40"
Java(TM) SE Runtime Environment (build1.7.0_40-b43)
Java HotSpot(TM) 64-Bit Server VM (build24.0-b56, mixed mode)

6、安装hadoop准备工作

将下载好的软件上传至/soft

cd /soft

gunzip hadoop-1.2.1.tar.gz

tar -xvf hadoop-1.2.1.tar

将解压好的目录移动到/usr下,并重命名为hadoop

mv  hadoop-1.2.1 /usr/hadoop

cd /usr/hadoop

mkdir -p /usr/hadoop/source

mkdir -p /usr/hadoop/tools

 

创建所需目录

mkdir -p /hadoop/hdfs

mkdir -p /hadoop/tmp

mkdir -p /hadoop/log

 

mkdir -p /usr/java

 

 安装JDK

在以上 连接 下 载linux 64 下的 jdk 的安装文件:  jdk-7u4-linux-x64.bin
1 ,将下 载好的jdk-6u32-linux-x64.bin 通 过 SSH 上 传到/usr/java 下
scp -r ./jdk-6u32-linux-x64.binroot@hadoop1:/usr/java
2 , 进入JDK 安装目 录 cd /usr/java 并且 执行chmod +x jdk-7u4-linux-x64.bin
3 , 执行./jdk-7u4-linux-x64.bin
4 ,配置 环境变量,执行 cd /etc 命令后 执行vi profile ,在行末尾添加
export JAVA_HOME=/usr/java/jdk1.7.0_71
exportCLASSPATH=.:$JAVA_HOME/lib/tools.jar:/lib/dt.jar
export PATH=$JAVA_HOME/bin:$PATH
5 , 执行chmod +x profile 将其 变成可执行文件
6 , 执行source profile 使其配置立即生效
source /etc/profile
7 , 执行java -version 查看是否安装成功

 

 

修改/etc/profile下的hadoop环境量变

 

export HADOOP_DEV_HOME=/usr/hadoop
export PATH=$PATH:$HADOOP_DEV_HOME/bin
export PATH=$PATH:$HADOOP_DEV_HOME/sbin
exportHADOOP_MAPARED_HOME=${HADOOP_DEV_HOME}
exportHADOOP_COMMON_HOME=${HADOOP_DEV_HOME}
export HADOOP_HDFS_HOME=${HADOOP_DEV_HOME}
export YARN_HOME=${HADOOP_DEV_HOME}
exportHADOOP_CONF_DIR=${HADOOP_DEV_HOME}/etc/hadoop
exportHDFS_CONF_DIR=${HADOOP_DEV_HOME}/etc/hadoop
exportYARN_CONF_DIR=${HADOOP_DEV_HOME}/etc/hadoop

export PATH=$PATH:$HADOOP_HOME/bin


7、配置hadoop

4台节点均配置java-home

1)、配置/usr/hadoop/etc/hadoop/hadoop-env.sh

 在文件的末尾添加下面内容。

# set java environment
export JAVA_HOME=/usr/java/jdk1.7.0_71

 

 

 

mkdir –p /usr/hadoop/tmp

mkdir –p /usr/hadoop/hdfs

mkdir –p /usr/hadoop/hdfs/data

mkdir –p /usr/hadoop/hdfs/name

 

配置/usr/hadoop/etc/hadoop目录下的core-site.xml

<configuration>

   <property>

       <name>fs.defaultFS</name>

       <value>hdfs://192.168.8.141:9000</value>

   </property>

   <property>

       <name>hadoop.tmp.dir</name>

       <value>file:/usr/hadoop/tmp</value>

   </property>

   <property>

       <name>io.file.buffer.size</name>

       <value>131702</value>

   </property>

</configuration>

 

 

配置/usr/hadoop/etc/hadoop目录下的hdfs-site.xml

<configuration>

   <property>

       <name>dfs.namenode.name.dir</name>

       <value>file:/usr/hadoop/dfs/name</value>

   </property>

   <property>

       <name>dfs.datanode.data.dir</name>

       <value>file:/usr/hadoop/dfs/data</value>

   </property>

   <property>

       <name>dfs.replication</name>

       <value>2</value>

   </property>

   <property>

       <name>dfs.namenode.secondary.http-address</name>

       <value>192.168.8.141:9001</value>

   </property>

   <property>

   <name>dfs.webhdfs.enabled</name>

   <value>true</value>

   </property>

</configuration>

 

 

配置/usr/hadoop/etc/hadoop目录下的mapred-site.xml

<configuration>

   <property>

        <name>mapreduce.framework.name</name>

       <value>yarn</value>

   </property>

   <property>

       <name>mapreduce.jobhistory.address</name>

       <value>192.168.8.141:10020</value>

   </property>

   <property>

       <name>mapreduce.jobhistory.webapp.address</name>

       <value>192.168.8.141:19888</value>

   </property>

</configuration>

 

 

配置/usr/hadoop/etc/hadoop目录下的yarn-site.xml

<configuration>

   <property>

       <name>yarn.nodemanager.aux-services</name>

       <value>mapreduce_shuffle</value>

   </property>

   <property>

       <name>yarn.nodemanager.auxservices.mapreduce.shuffle.class</name>

       <value>org.apache.hadoop.mapred.ShuffleHandler</value>

   </property>

   <property>

       <name>yarn.resourcemanager.address</name>

       <value>192.168.8.141:8032</value>

   </property>

   <property>

       <name>yarn.resourcemanager.scheduler.address</name>

       <value>192.168.8.141:8030</value>

   </property>

   <property>

       <name>yarn.resourcemanager.resource-tracker.address</name>

       <value>192.168.8.141:8031</value>

   </property>

   <property>

       <name>yarn.resourcemanager.admin.address</name>

       <value>192.168.8.141:8033</value>

   </property>

   <property>

       <name>yarn.resourcemanager.webapp.address</name>

       <value>192.168.8.141:8088</value>

   </property>

   <property>

       <name>yarn.nodemanager.resource.memory-mb</name>

       <value>768</value>

   </property>

</configuration>

 

 

配置/usr/hadoop/etc/hadoop目录下hadoop-env.sh、yarn-env.sh的JAVA_HOME,

不设置的话,启动不了,export JAVA_HOME=/usr/java/jdk1.7.0_71

 

配置/usr/hadoop/etc/hadoop目录下的slaves,

删除默认的localhost,增加2个从节点,

192.168.8.142

192.168.8.143

192.168.8.144

 

 

同步配置

将配置好的Hadoop复制到各个节点对应位置上,通过scp传送,

scp -r /usr/haddop HD2:/usr/.

scp -r /usr/haddop HD3:/usr/.

scp -r /usr/haddop HD4:/usr/.

 

 

7、启动hadoop

在Master服务器启动hadoop,从节点会自动启动,进入/usr/hadoop/hadoop-2.7.0目录

(1)初始化,输入命令,bin/hdfs namenode -format

(2)全部启动sbin/start-all.sh,也可以分开sbin/start-dfs.sh、sbin/start-yarn.sh

(3)停止的话,输入命令,sbin/stop-all.sh

(4)输入命令,jps,可以看到相关信息

 

 

8、测试

Web访问,要先开放端口或者直接关闭防火墙

(1) service iptables stop

 (2)浏览器打开http://192.168.8.141:8088/

(3)浏览器打开http://192.168.8.141:50070/

 

Master验证:hadoop dfsadmin -report





0 0