CentOS安装配置Hadoop1.2.1

1.下载安装文件

下载2个安装文件

JAVA环境:jdk-6u21-linux-i586.bin

Hadoop环境:hadoop-1.2.1.tar.gz

这里是把jdk安装在/root下,hadoop安装在/etc下面

2.安装jdk

这里jdk-6u21-linux-i586.bin放在/root下

添加执行权限,并解包。

[root@master ~]# cd /root

[root@master 
root]# chmod 777 jdk-6u21-linux-i586.bin

[root@master 
root]# ./ jdk-6u21-linux-i586.bin

接着

2)添加环境变量配置(这里连带hadoop的环境变量一起先设好)

[root@master~]# vi /etc/profile         
(命令行方式较麻烦)

在/etc/profile文件最后加入以下代码,可以直接用文本编辑器打开profile

请注意自己实际的安装路径和名称

exportJAVA_HOME=/root/jdk1.6.0_21

export JRE_HOME=/root/jdk1.6.0_21/jre

export HADOOP_HOME=/etc/hadoop-1.2.1

exportHADOOP_HOME_WARN_SUPPRESS=1

exportCLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$HADOOP_HOME/lib:$CLASSPATH

exportPATH=$JAVA_HOME/bin:$JRE_HOME/bin:$HADOOP_HOME/bin:$PATH

让配置生效:[root@master ~]# source/etc/profile

可以输入下面命令测试下Java环境是否成功

[root@master ~]#java –version

2.1
设置/etc/hosts文件以及/etc/sysconfig/network

进入终端

[root@master ~]# hostname

查看hostname是否为network中的值,如果不是

修改hostname的值

[root@master ~]# hostname master

3
给VM虚拟机建立SSH无密码登录

使用ssh服务,首先得确保机器已经完整安装,否则可能出现port 22 refused

之类的情况,当然出现这种情况也可能是防火墙的原因

搜索并安装(一般是装好的,可以不用)

[root@master ~]#yum search openssh*

[root@master ~]#yum install openssh*

生成签名文件

[root@master~]# ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa

[root@master~]# cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

[root@master~]# service iptables stop

测试本地SSH无密码登录

[root@centos1~]# ssh master

4、Hadoop安装

文件包hadoop-1.2.1.tar.gz放在etc下面

[root@master ~]# cd /etc

解包并安装

[root@master
 etc]# tar -zvxf hadoop-1.2.1.tar.gz

4.1 Hadoop测试

把hadoop下bin下的hadoop拷贝到根目录/bin下,根目录下可测试hadoop

[root@master ~]#hadoopversion

可以看到hadoop版本信息,若有错误,说明安装过程出现了问题

5、Hadoop配置

配置hadoop安装路径在/conf/core-site.xml、hdfs-site.xml和mapred-site.xml三个文件。

[root@master conf]# vicore-site.xml

<property>

        <name>fs.default.name</name>

        <value>hdfs://master:9000</value>

    </property>

    <property>

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

        <value>/usr/local/hadoop/hadooptmp</value>

    </property>

[root@master conf]# vihdfs-site.xml

<property>

<name>fs.default.name</name>

<value>hdfs://master:9000</value>

</property>

<property>

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

<value>/usr/local/hadoop/hadooptmp</value>

</property>

 [root@master conf]# vi mapred-site.xml

<property>

<name>mapred.job.tracker</name>  

<value>master:9001</value>  

</property>

  <property>  

     <name>mapred.local.dir</name>  

     <value>/usr/local/hadoop/mapred/local</value>  

  </property>  

  <property>  

     <name>mapred.system.dir</name>  

     <value>/tmp/hadoop/mapred/system</value>  

  </property>

继续修改一些配置文件

[root@master ~]# vi ~/.bashrc

输入i进入insert模式,移动光标到最后一行,粘贴以下代码(得根据具体的文件名和路径进行修改)

export JAVA_HOME=/root/jdk1.6.0_21

export JRE_HOME=/root/jdk1.6.0_21/jre

export HADOOP_HOME=/etc/hadoop-1.2.1

export HADOOP_DEV_HOME=/etc/hadoop-1.2.1

export HADOOP_COMMON_HOME=/etc/hadoop-1.2.1

export HADOOP_HDFS_HOME=/etc/hadoop-1.2.1

export HADOOP_CONF_DIR=/etc/hadoop-1.2.1/conf

按下esc并输入:wq

 [root@centos1 conf]# vi hadoop-env.sh

打开hadoop下conf文件直接文本编辑加入以下代码更快

export JAVA_HOME=/root/jdk1.6.0_21

export HADOOP_HOME_WARN_SUPPRESS=1

export HADOOP_CLASSPATH=/etc/hadoop-1.2.1:/etc/hadoop-1.2.1/lib

6、配置节点

可以直接用文本编辑器打开那个文件,以下可以直接加入以下代码,

 [root@master conf]# vi masters(命令行方式)

127.0.0.1

[root@master conf]# vi slaves 
(命令行方式)

127.0.0.1

7、SSH登录测试

[root@master ~]# ping master

Ctrl+shift+c终止

[root@master ~]# ssh master

*注意:service iptables stop
每次启动要执行。

每台机器都要能通。

8、运行Hadoop

8、首先执行格式化

先关闭防火墙

[root@masterhadoop-1.2.1]# service iptables stop

再格式化

 [root@master hadoop-1.2.1]# hadoop namenode–format

每次修改xml配置文件都要格式化。格式化过程仔细查看日志

这里注意查看格式化的时候当中一行的信息是否是host=master/127.0.0.1

如果不是那可能将造成:运行wordcount示例时候:

卡在 
map 100% reduce 0%  那里不动。

出现这个问题主要是hostname不一致的原因

 

9、启动hadoop

[root@centos1 hadoop-1.1.1]# start-all.sh

如果出现以下错误

则分别尝试在bin下和hadoop根目录下运行

并尝试service iptables stop后再次开启

10、查看进程

使用jps指令,主机进程,4个。

[root@master hadoop-1.2.1]# jps

4001 Jps

3642 NameNode

3899 JobTracker

3805 SecondaryNameNode

[root@master conf]# jps

3793 Jps

3621 DataNode

3722 TaskTracker

11、查看集群状态

[root@master hadoop-1.1.1]# hadoop dfsadmin 
-report

这里有一个数据节点,可以看到上面是有大小的,如果为0说明一开始hadoop启动失败

 

注意:如果报错“INFOipc.Client: Retrying connect to server”,是因为core-site.xml失效的原因。停止,重启hadoop后,格式化namenode即可。

另外,每次启动VM都要关闭防火墙。

12、列出HDFS文件系统中存在的目录情况

[root@redhat1 conf]# hadoopfs -ls

显示结果:ls: Cannot access .: No such file or directory.

这是这个目录为空所致。

可以改为执行 hadoop fs -ls /

可以看到有一条空结果。

执行hadoop fs -mkdir hello

其中hello为文件夹名字,再执行hadoop fs -ls命令,即可看到结果。

13、测试一下DFS操作

[root@centos1hadoop-1.2.1]# hadoop dfs -mkdir input

[root@centos1hadoop-1.2.1]# hadoop dfs -ls

Found 1 items

drwxr-xr-x  - root supergroup         
02013-01-19 23:24 /user/root/input

14、测试下HDFS文件系统Web浏览器监视

HDFS文件系统状态NameNode,http://master:50070/

15、运行Hadoop自带框架的wordcount示例

15.1、建立数据源文件

/root/test建立2个文本文件,在这两个文本文件输入你想输入的单词

这里随便输入

15.2、发布数据文件至hadoop集群

1、在hdfs中建立一个input目录

[root@master hadoop-1.2.1]#hadoop dfs -mkdir input

2.
将/root/test的文本文件上传到刚建立的input文件夹下

[root@master hadoop-1.2.1]#hadoop dfs –put /root/test/* input

3、执行wordcount程序

执行wordcount程序,并确保hdfs上没有output目录,如果已经有,便会有如下问题:

output目录则执行[root@masterroot]#
hadoop  fs  -rmr putput

[root@master hadoop-1.2.1]#hadoop jar hadoop-examples-1.2.1.jar wordcount input output

14/09/24 17:37:39 INFO input.FileInputFormat: Total input pathsto process : 4

14/09/24 17:37:39 INFO util.NativeCodeLoader: Loaded thenative-hadoop library

14/09/24 17:37:39 WARN snappy.LoadSnappy: Snappy native librarynot loaded

14/09/24 17:37:39 INFO mapred.JobClient: Running job:job_201409241734_0002

14/09/24 17:37:41 INFO mapred.JobClient: 
map 0% reduce 0%

14/09/24 17:37:54 INFO mapred.JobClient: 
map 50% reduce 0%

14/09/24 17:37:59 INFO mapred.JobClient: 
map 75% reduce 0%

14/09/24 17:38:00 INFO mapred.JobClient: 
map 100% reduce 0%

14/09/24 17:38:05 INFO mapred.JobClient:
 map 100% reduce 100%

14/09/24 17:38:06 INFO mapred.JobClient: Job complete:job_201409241734_0002

14/09/24 17:38:06 INFO mapred.JobClient: Counters: 29

14/09/24 17:38:06 INFO mapred.JobClient:  
Job Counters

14/09/24 17:38:06 INFO mapred.JobClient:    
Launched reduce tasks=1

14/09/24 17:38:06 INFO mapred.JobClient:    
SLOTS_MILLIS_MAPS=33257

14/09/24 17:38:06 INFO mapred.JobClient:    
Total time spent by all reduces waitingafter reserving slots (ms)=0

14/09/24 17:38:06 INFO mapred.JobClient:    
Total time spent by all maps waiting afterreserving slots (ms)=0

14/09/24 17:38:06 INFO mapred.JobClient:    
Launched map tasks=4

14/09/24 17:38:06 INFO mapred.JobClient:    
Data-local map tasks=2

14/09/24 17:38:06 INFO mapred.JobClient:    
SLOTS_MILLIS_REDUCES=11496

14/09/24 17:38:06 INFO mapred.JobClient:  
File Output Format Counters

14/09/24 17:38:06 INFO mapred.JobClient:    
Bytes Written=27

14/09/24 17:38:06 INFO mapred.JobClient:  
FileSystemCounters

14/09/24 17:38:06 INFO mapred.JobClient:    
FILE_BYTES_READ=57

14/09/24 17:38:06 INFO mapred.JobClient:    
HDFS_BYTES_READ=442

14/09/24 17:38:06 INFO mapred.JobClient:    
FILE_BYTES_WRITTEN=274717

14/09/24 17:38:06 INFO mapred.JobClient:    
HDFS_BYTES_WRITTEN=27

14/09/24 17:38:06 INFO mapred.JobClient:  
File Input Format Counters

14/09/24 17:38:06 INFO mapred.JobClient:    
Bytes Read=28

14/09/24 17:38:06 INFO mapred.JobClient:  
Map-Reduce Framework

14/09/24 17:38:06 INFO mapred.JobClient:    
Map output materialized bytes=75

14/09/24 17:38:06 INFO mapred.JobClient:    
Map input records=2

14/09/24 17:38:06 INFO mapred.JobClient:    
Reduce shuffle bytes=75

14/09/24 17:38:06 INFO mapred.JobClient:    
Spilled Records=8

14/09/24 17:38:06 INFO mapred.JobClient:    
Map output bytes=43

14/09/24 17:38:06 INFO mapred.JobClient:    
CPU time spent (ms)=6560

14/09/24 17:38:06 INFO mapred.JobClient:    
Total committed heap usage(bytes)=569655296

14/09/24 17:38:06 INFO mapred.JobClient:    
Combine input records=4

14/09/24 17:38:06 INFO mapred.JobClient:    
SPLIT_RAW_BYTES=414

14/09/24 17:38:06 INFO mapred.JobClient:    
Reduce input records=4

14/09/24 17:38:06 INFO mapred.JobClient:    
Reduce input groups=3

14/09/24 17:38:06 INFO mapred.JobClient:    
Combine output records=4

14/09/24 17:38:06 INFO mapred.JobClient:    
Physical memory (bytes) snapshot=617246720

14/09/24 17:38:06 INFO mapred.JobClient:    
Reduce output records=3

14/09/24 17:38:06 INFO mapred.JobClient:    
Virtual memory (bytes) snapshot=1871646720

14/09/24 17:38:06 INFO mapred.JobClient:    
Map output records=4

[root@centos1 hadoop-1.1.1]#hadoop dfs -cat output/part-r-00000

[root@master hadoop-1.2.1]# hadoop dfs -cat output/part-r-00000

guangzhou      
1

hello  
        2

java   
        1

CentOS安装配置Hadoop 1.2.1(伪分布模式)的更多相关文章

  1. 虚拟机Ubuntu(18.04.2)下安装配置Hadoop(2.9.2)(伪分布式+Java8)

    [本文结构] [1]安装Hadoop前的准备工作 [1.1] 创建新用户 [1.2] 更新APT [1.3] 安装SSH [1.4] 安装Java环境 [2]安装和配置hadoop [2.1] Had ...

  2. centos 7下Hadoop 2.7.2 伪分布式安装

    centos 7 下Hadoop 2.7.2 伪分布式安装,安装jdk,免密匙登录,配置mapreduce,配置YARN.详细步骤如下: 1.0 安装JDK 1.1 查看是否安装了openjdk [l ...

  3. 集群安装配置Hadoop具体图解

    集群安装配置Hadoop 集群节点:node4.node5.node6.node7.node8. 详细架构: node4 Namenode,secondnamenode,jobtracker node ...

  4. 阿里云服务器Linux CentOS安装配置(零)目录

    阿里云服务器Linux CentOS安装配置(零)目录 阿里云服务器Linux CentOS安装配置(一)购买阿里云服务器 阿里云服务器Linux CentOS安装配置(二)yum安装svn 阿里云服 ...

  5. 阿里云服务器Linux CentOS安装配置(九)shell编译、打包、部署

    阿里云服务器Linux CentOS安装配置(九)shell编译.打包.部署 1.查询当前目录以及子目录下所有的java文件,并显示查询结果 find . -name *.java -type f - ...

  6. 阿里云服务器Linux CentOS安装配置(八)nginx安装、配置、域名绑定

    阿里云服务器Linux CentOS安装配置(八)nginx安装.配置.域名绑定 1.安装nginx yum -y install nginx 2.启动nginx service nginx star ...

  7. 阿里云服务器Linux CentOS安装配置(七)域名解析

    阿里云服务器Linux CentOS安装配置(七)域名解析 1.购买域名 登录阿里云,左侧菜单点击[域名],然后[域名注册],完成域名购买.(一般首年45元) 2.添加域名解析 在域名列表里点击你的域 ...

  8. 阿里云服务器Linux CentOS安装配置(六)resin多端口配置、安装、部署

    阿里云服务器Linux CentOS安装配置(六)resin多端口配置.安装.部署 1.下载resin包 http://125.39.66.162/files/2183000003E08525/cau ...

  9. 阿里云服务器Linux CentOS安装配置(五)jetty配置、部署

    阿里云服务器Linux CentOS安装配置(五)jetty配置.部署 1.官网下载jetty:wget http://repo1.maven.org/maven2/org/eclipse/jetty ...

随机推荐

  1. the Agiles Scrum Meeting 4

    会议时间:2020.4.12 20:00 1.每个人的工作 今天已完成的工作 yjy:基本完成广播功能,修复bug issues:小组任务1-增量开发组 Bug:冲刺 wjx:继续实现注销功能的后端 ...

  2. netty中使用protobuf实现多协议的消息

    在我们使用 netty 的过程中,有时候为了高效的传输数据,经常使用 protobuf 进行数据的传输,netty默认情况下为我们实现的 protobuf 的编解码,但是默认的只能实现单个对象的编解码 ...

  3. InitSpatialMetaData()速度慢的问题

    解决方法:with sqlite3.connect(dbfile) as con: con.enable_load_extension(True) con.execute("SELECT l ...

  4. 零基础学习Linux必会的60个常用命令

    Linux必学的60个命令Linux提供了大量的命令,利用它可以有效地完成大量的工 作,如磁盘操作.文件存取.目录操作.进程管理.文件权限设定等.所以,在Linux系统上工作离不开使用系统提供的命令. ...

  5. 如何使用原生的Ribbon

    什么是Ribbon 之前分析了如何使用原生的Feign,今天我们来研究 Netflix 团队开发的另外一个类库--Ribbon. Ribbon 和 Feign 有很多相似的地方,首先,它们本质上都是 ...

  6. 从零开始的DIY智能家居 - 基于 ESP32 的土壤湿度传感器

    前言 自从上次做了那个 甲醛传感器 和 水浊度传感器 之后开始尝到智能家居的甜头了,这两东西有没有用我不知道,但是没事的时候掏出手机瞄两眼,看着就让人很安心( ̄︶ ̄). 于是懒惰的我开始琢磨把给植物浇 ...

  7. SPOJ GSS8 - Can you answer these queries VIII | 平衡树

    题目链接 这一道题的修改操作用平衡树都很容易实现,难处理的是询问操作. 要想解决询问操作,只要知道如何在平衡树上快速合并左右两个区间的答案即可. 设$Ans_{[l,r]}^k=\sum\limits ...

  8. java性能优化常用工具jps、jstat、jinfo

    jps:虚拟机进程状况工具 jps可以用来查看虚拟机进程,基本等同于ps -ef|grep java #查看jps的使用文档 [root@localhost script]# jps -help us ...

  9. Oracle 19c 单机

    环境 vm虚拟机 双磁盘 操作系统 Oracle Linux 7.9 操作系统安装带图形 选择中文,注意不要新建用户 关闭防火墙 selinux 配置好IP 挂载系统盘镜像 修改主机名 配置hosts ...

  10. Flink 的运行架构详细剖析

    1. Flink 程序结构 Flink 程序的基本构建块是流和转换(请注意,Flink 的 DataSet API 中使用的 DataSet 也是内部流 ).从概念上讲,流是(可能永无止境的)数据记录 ...