hadoop-2.0.0-cdh4.7.0伪分布式安装,mapreduce例子执行

centOS 6.5下搭建成功Hadoop伪分布式环境


jdk和hadoop安装包,可以到我的百度云盘下载(http://pan.baidu.com/s/1bn9zkZX)

操作系统:centos 6.5

JDK:jdk-7u45-linux-x64.rpm

HADOOP:hadoop-2.0.0-cdh4.7.0.tar.gz

我是在root用户下配置的


1、JDK

[root@localhost ~]# cd /usr/local/ 进入local目录,mkdir java 创建java目录,将jdk安装包拷贝到/usr/local/java中,

[root@localhost java]# rpm -ivh jdk-7u45-linux-x64.rpm 一路yes或回车至安装完毕。

配置环境变量

[root@localhost java]# vi /etc/profile,插入如下内容并保存

# set java environment
  export JAVA_HOME=/usr/local/java/jdk1.7.0_45
  export JRE_HOME=/usr/local/java/jdk1.7.0_45/jre
  export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
  export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH

使环境变量生效

[root@localhost java]# source  /etc/profile

验证是否安装成功

[root@localhost java]# java,可以看到一堆内容

[root@localhost java]# java -version,可以看到如下内容

java version "1.7.0_45"
Java(TM) SE Runtime Environment (build 1.7.0_45-b18)
Java HotSpot(TM) 64-Bit Server VM (build 24.45-b08, mixed mode)

恭喜你,jdk安装成功!

2、SSH

检查是否安装了ssh

[root@localhost ~]# rpm -qa | grep ssh

openssh-server-5.3p1-94.el6.x86_64
openssh-clients-5.3p1-94.el6.x86_64
libssh2-1.4.2-1.el6.x86_64
openssh-5.3p1-94.el6.x86_64
openssh-askpass-5.3p1-94.el6.x86_64

出现上述内容,说明ssh已经安装。

检查ssh服务状态

[root@localhost ~]# service sshd status

openssh-daemon (pid  2017) is running...

说明正在运行,如果服务关闭状态,则执行如下命令

[root@localhost ~]# service sshd start,启动ssh服务

设置开机自启动

[root@localhost ~]# chkconfig sshd on

检查是否设置成功,执行命令,出现如下内容,说明设置成功

[root@localhost ~]# chkconfig --list sshd
sshd           0:off 1:off2:on3:on4:on5:on6:off

设置免密码登录

[root@localhost ~]# cd  到根目录

[root@localhost ~]# ls -a 查看是否存在.ssh文件夹,不存在则创建一个

[hadoop@localhost ~]$ ssh-keygen -t dsa -P ' ' –f  ~/.ssh/id_dsa

解释一下,ssh-keygen代表生成秘钥; -t(注意区分大小写)表示指定生成的秘钥类型;dsa是dsa密钥认证的意思。即秘钥类型;-P用于提供密语;-f指定生成的秘钥文件。(其中~代表当前用户文件夹,如home/wade ),这条命令会在.ssh文件夹下创建id_dsa及id_dsa.pub两个文件,这是SSH的一对私钥和秘钥,类似于锁和钥匙。

[hadoop@localhost ~]$ cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

这条命令用于把公钥加到用于认证的公钥文件中。这里的authorized_keys是用于认证的公钥文件。

配置完毕,通过ssh 本机IP 测试,如果没有提示输入密码,则无密码登录配置成功!
如果确实配置成功了,但是还是不能免密码登陆,这可能就是authorized_keys文件没有访问权限,执行命令:chmod  600 ~/.ssh/authorized_keys 即可!


3、hadoop

[root@localhost ~]# cd /usr/local/ 进入local目录,mkdir hadoop,创建hadoop目录,将安装包拷贝至此。

[root@localhost hadoop]# tar -zxvf hadoop-2.0.0-cdh4.7.0.tar.gz,解压到当前目录

配置环境变量 /etc/profile,插入如下内容

# set hadoop
 export HADOOP_HOME=/usr/local/hadoop/hadoop-2.0.0-cdh4.7.0
 #export PATH=$HADOOP_HOME/bin:$PATH
 export HADOOP_COMMOM_HOME=${HADOOP_HOME}
 export HADOOP_HDFS_HOME=${HADOOP_HOME}
 export PATH=$PATH:$HADOOP_HOME/bin
 export PATH=$PATH:$HADOOP_HOME/Sbin
 export HADOOP_MAPRED_HOME=${HADOOP_HOME}
 export YARN_HOME=${HADOOP_HOME}
 export HADOOP_CONF_DIR=${HADOOP_HOME}/etc/hadoop
 export HDFS_CONF_DIR=${HADOOP_HOME}/etc/hadoop
 export YARN_CONF_DIR=${HADOOP_HOME}/etc/hadoop

修改hadoop配置文件

[root@localhost hadoop]# cd hadoop-2.0.0-cdh4.7.0/etc/hadoop/,进入目录

core-site.xml



  fs.default.name
  hdfs://localhost:9000

 
  hadoop.tmp.dir 
  /usr/local/hadoop/hadoop-2.0.0-cdh4.7.0/tmp 
 


hadoop-env.sh

export JAVA_HOME=/usr/local/java/jdk1.7.0_45,修改路径

hdfs-site.xml


 
    dfs.replication
   1
 

 
    dfs.name.dir
    /usr/local/hadoop/hadoop-2.0.0-cdh4.7.0/hdfs/name
 

 
    dfs.data.dir
    /usr/local/hadoop/hadoop-2.0.0-cdh4.7.0/hdfs/data
 


mapred-site.xml



mapreduce.framework.name
yarn


mapreduce.job.tracker
localhost:9001
ture


yarn-site.xml





yarn.nodemanager.aux-services
mapreduce.shuffle


yarn.nodemanager.aux-services.mapreduce.shuffle.class
org.apache.hadoop.mapred.ShuffleHandler


slaves

127.0.0.1

格式化

[root@localhost hadoop]# hadoop namenode -format

hadoop配置完毕!

[root@localhost ~]#  vi /etc/hosts,为如下内容

127.0.0.1localhost.localdomain localhost
::1 localhost.localdomain localhost

至此一切配置完毕,重启一下系统。

进入[root@localhost ~]# cd /usr/local/hadoop/hadoop-2.0.0-cdh4.7.0/sbin/ 目录,执行命令

[root@localhost sbin]# ./start-all.sh ,然后检查hadoop启动情况,执行如下命令

[root@localhost sbin]# jps
3035 NameNode
3575 NodeManager
6120 Jps
3158 DataNode
3322 SecondaryNameNode
3469 ResourceManager

看到上述内容,恭喜你成功啦!

查看一下 http://localhost:8088

http://localhost:50070


4、mapreduce例子

这里我就不多说了,推荐个我参见的好文章 http://blog.csdn.net/liuxiaochen123/article/details/8786715

在eclipse中开发mapreduce程序,需要引入以下5个jar包,可在hadoop安装目录中找到

commons-cli-1.2.jar

commons-logging-1.1.1.jar

guava-11.0.2.jar

hadoop-common-2.0.0-cdh4.7.0.jar

hadoop-mapreduce-client-core-2.0.0-cdh4.7.0.jar


你可能感兴趣的:(CentOS,Java,Hadoop)