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. JVM:Java内存区域与内存溢出异常

    Java 虚拟机在执行 Java 程序的过程中会把它所管理的内存划分为若干个不同的数据区域.这些区域都有各自的用途,以及创建和销毁时间,有些区域随着虚拟机进程的启动而存在,有些区域依赖用户线程的启动和 ...

  2. Codeforces Round #741 (Div. 2)部分题题解

    我果然还是太菜了,就写了两道题....真是水死了.... A The Miracle and the Sleeper 简化题意:给定\(l,r\),求\(a\)%\(b\)的最大值,其中\(r> ...

  3. 在Ubuntu下的C语言编程

    以运行在虚拟机下的Ubuntu为例: mkdir fenchen 来创建一个文件夹 cd fenchen 切换到这个文件夹下面 vi test.c 创建并编辑一个test.c文件 按 i 编辑,之后把 ...

  4. shell 中小括号,中括号,大括号的区别

    一.小括号,圆括号() 1.单小括号 () ①命令组.括号中的命令将会新开一个子shell顺序执行,所以括号中的变量不能够被脚本余下的部分使用.括号中多个命令之间用分号隔开,最后一个命令可以没有分号, ...

  5. linux 关于 环境变量

    有关环境变量的文件 系统级环境变量:每一个登录到系统的用户都能够读取到系统级的环境变量       用户级环境变量:每一个登录到系统的用户只能够读取属于自己的用户级的环境变量  文件加载顺序: ==& ...

  6. zabbix 报警发送qq邮件

    1.开启QQ邮箱的IMAP/SMTP服务,获取授权码 获取授权码:点击[开启]按钮,编辑短信发送,即可获得授权码 2.配置 /etc/mail.rc 添加下列配置: [ set from=XXX@qq ...

  7. 这一篇 K8S(Kubernetes)集群部署 我觉得还可以!!!

    点赞再看,养成习惯,微信搜索[牧小农]关注我获取更多资讯,风里雨里,小农等你,很高兴能够成为你的朋友. 国内安装K8S的四种途径 Kubernetes 的安装其实并不复杂,因为Kubernetes 属 ...

  8. APP 自动化之appium元素定位(三)

    APP自动化测试关键环节--元素定位,以下我们来了解appium提供的元素定位方法! 1. id定位,id一个控件的唯一标识,由开发人员在项目中指定,如果一个元素有对应的resource-id,我们就 ...

  9. Intellij Idea显示回退和前进按钮的方法

    方法1:使用快捷键: 回到上一步  ctrl + alt + <-(左方向键) 回到下一步 ctrl + alt + ->(右方向键) 方法2:在界面显示: View -> 勾选To ...

  10. 【JAVA】笔记(1)---JVM内存图;方法重载条件;输入方法;转义字符;强制类型转换;变量分类及区别;Java命名规范;

    Java命名规范: 1.包:全部字母小写: 2.类+接口:所有单词的首字母大写: 3.变量+方法:第一个单词的首字母小写,其余单词首字母大写: 3.常量名:所有字母均大写,且用下划线" _ ...