ubuntu安装与测试hadoop1.1.0版本

简介:

最近没什么事,就使用之前测试openstack的机器,测试一下hadoop,看看他到底是干嘛的?

测试环境为ubuntu 12.04 64位系统,hadoop版本是1.1.0

下面是安装过程

1、安装jdk

 
 
  1. apt-get install openjdk-7-jdk 
安装完成后测试一下

 
 
  1. root@openstack:~/hadoop/conf# java -version  
  2. java version "1.6.0_24"  
  3. OpenJDK Runtime Environment (IcedTea6 1.11.5) (6b24-1.11.5-0ubuntu1~12.04.1)  
  4. OpenJDK 64-Bit Server VM (build 20.0-b12, mixed mode)  
可以看到我的jdk是1.6版本的
2、下载hadoop

 
 
  1. wget http://mirror.bit.edu.cn/apache/hadoop/common/hadoop-1.1.0/hadoop-1.1.0.tar.gz 

 

3、安装hadoop
先解压
 

 
 
  1. tart zxvf hadoop-1.1.0.tar.gz 
然后重命名

 
 
  1. mv hadoop-1.1.0 hadoop 
然后对hadoop进行配置
(1)修改conf/core-site.xml

 
 
  1. <configuration> 
  2. <property> 
  3. <name>fs.default.name</name> 
  4. <value>hdfs://localhost:9000</value> 
  5. </property> 
  6. <property> 
  7. <name>hadoop.tmp.dir</name> 
  8. <value>/home/hadoop/tmp</value> 
  9. </property> 
  10. </configuration> 
 注意:hadoop.tmp.dir是hadoop文件系统依赖的基础配置,很多路径都依赖它。它默认的位置是在/tmp/{$user}下面,在local和hdfs都会建有相同的目录,但是在/tmp路径下的存储是不安全的,因为linux一次重启,文件就可能被删除。导致namenode启动不起来。
(2)修改conf/hdfs-site.xml

 
 
  1. <configuration> 
  2. <property> 
  3. <name>dfs.replication</name> 
  4. <value>1</value> 
  5. </property> 
  6. </configuration> 
(3) 修改conf/mapred-site.xml

 
 
  1. <configuration> 
  2. <property> 
  3. <name>mapred.job.tracker</name> 
  4. <value>localhost:9001</value> 
  5. </property> 
  6. </configuration> 
(4)为了是hadoop能找到java,所以在conf/hadoop-env.sh最后一行添加jdk的路径,我的java路径为

 
 
  1. export JAVA_HOME=/usr/lib/jvm/java-1.6.0-openjdk-amd64 
然后再检测一下

 
 
  1. root@openstack:~/hadoop/conf# java -version  
  2. java version "1.6.0_24"  
  3. OpenJDK Runtime Environment (IcedTea6 1.11.5) (6b24-1.11.5-0ubuntu1~12.04.1)  
  4. OpenJDK 64-Bit Server VM (build 20.0-b12, mixed mode)  
可以看到我的jdk是1.6版本的
(5)在namenode端cd到hadoop文件夹下,格式化分布式文件系统:

 
 
  1. bin/hadoop namenode -format 
下面是我的操作结果

 
 
  1. root@openstack:~/hadoop/conf# cd ..  
  2. root@openstack:~/hadoop# bin/hadoop namenode -format  
  3. 12/11/27 14:10:43 INFO namenode.NameNode: STARTUP_MSG:   
  4. /************************************************************  
  5. STARTUP_MSG: Starting NameNode  
  6. STARTUP_MSG:   host = openstack/127.0.1.1  
  7. STARTUP_MSG:   args = [-format]  
  8. STARTUP_MSG:   version = 1.1.0  
  9. STARTUP_MSG:   build = https://svn.apache.org/repos/asf/hadoop/common/branches/branch-1.1 -r 1394289; compiled by 'hortonfo' on Thu Oct  4 22:06:49 UTC 2012  
  10. ************************************************************/  
  11. 12/11/27 14:10:43 INFO util.GSet: VM type       = 64-bit  
  12. 12/11/27 14:10:43 INFO util.GSet: 2% max memory = 17.77875 MB  
  13. 12/11/27 14:10:43 INFO util.GSet: capacity      = 2^21 = 2097152 entries  
  14. 12/11/27 14:10:43 INFO util.GSet: recommended=2097152actual=2097152 
  15. 12/11/27 14:10:44 INFO namenode.FSNamesystem: fsOwner=root 
  16. 12/11/27 14:10:44 INFO namenode.FSNamesystem: supergroupsupergroup=supergroup  
  17. 12/11/27 14:10:44 INFO namenode.FSNamesystem: isPermissionEnabled=true 
  18. 12/11/27 14:10:44 INFO namenode.FSNamesystem: dfs.block.invalidate.limit=100 
  19. 12/11/27 14:10:44 INFO namenode.FSNamesystem: isAccessTokenEnabled=false accessKeyUpdateInterval=0 min(s), accessTokenLifetime=0 min(s)  
  20. 12/11/27 14:10:44 INFO namenode.NameNode: Caching file names occuring more than 10 times   
  21. 12/11/27 14:10:44 INFO common.Storage: Image file of size 110 saved in 0 seconds.  
  22. 12/11/27 14:10:44 INFO namenode.FSEditLog: closing edit log: position=4editlog=/home/hadoop/tmp/dfs/name/current/edits  
  23. 12/11/27 14:10:44 INFO namenode.FSEditLog: close success: truncate to 4, editlog=/home/hadoop/tmp/dfs/name/current/edits  
  24. 12/11/27 14:10:46 INFO common.Storage: Storage directory /home/hadoop/tmp/dfs/name has been successfully formatted.  
  25. 12/11/27 14:10:46 INFO namenode.NameNode: SHUTDOWN_MSG:   
  26. /************************************************************  
  27. SHUTDOWN_MSG: Shutting down NameNode at openstack/127.0.1.1  
  28. ************************************************************/  
(6)然后再启动服务,由于我的单节点安装,所以就全部启动

 
 
  1. bin/start-all.sh 
下面是我的操作

 
 
  1. root@openstack:~/hadoop# bin/start-all.sh   
  2. starting namenode, logging to /root/hadoop/libexec/../logs/hadoop-root-namenode-openstack.out  
  3. localhost: starting datanode, logging to /root/hadoop/libexec/../logs/hadoop-root-datanode-openstack.out  
  4. localhost: starting secondarynamenode, logging to /root/hadoop/libexec/../logs/hadoop-root-secondarynamenode-openstack.out  
  5. starting jobtracker, logging to /root/hadoop/libexec/../logs/hadoop-root-jobtracker-openstack.out  
  6. localhost: starting tasktracker, logging to /root/hadoop/libexec/../logs/hadoop-root-tasktracker-openstack.out  
然后再输入jps查看本机的启动情况

 
 
  1. root@openstack:~/hadoop# jps  
  2. 9340 SecondaryNameNode  
  3. 9665 TaskTracker  
  4. 9426 JobTracker  
  5. 9822 Jps  
  6. 8853 NameNode  
  7. 9091 DataNode  
可以看到namenode与datanode都启动了
如果你不是单机模式,多节点的话,你在namenode看到的就只有namenode而没有datanode,反之在datanode也是一样。
然后再打开http://localhost:50030与http://localhost:50070查看运行情况,由于我的机器的ip是192.168.1.30,所以我如果不在本机查看的话,就可以使用http://192.168.1.30:50030查看
下面是 http://192.168.1.30:50030的界面

下面是http://192.168.1.30:50070的界面

4、测试hadoop
我是使用hadoop自带的wordcount测试
(1)、通过hadoop的命令在HDFS上创建/tmp/test目录,命令如下:bin/hadoop dfs -mkdir /tmp/test
(2)、先在系统里创建test1与test2文件,内容分别为:
test1 "hello world,this is my hadoop test"
test2 "welcome to hadoop world"
创建的命令为

 
 
  1. echo "hello world,this is my hadoop test">/tmp/test1  
  2. echo "welcome to hadoop world">/tmp/test2  
(3)、然后再通过copyFromLocal命令把本地的test1与test2复制到HDFS上,命令如下:bin/hadoop dfs -copyFromLocal /tmp/test[1-2]  /tmp/test
然后再到hds里查看一下

 
 
  1. root@openstack:~/hadoop# bin/hadoop dfs -ls /tmp/test  
  2. Found 2 items  
  3. -rw-r--r--   1 root supergroup         35 2012-11-27 15:01 /tmp/test/test1  
  4. -rw-r--r--   1 root supergroup         24 2012-11-27 15:01 /tmp/test/test2  
可以看到test1与test2已经上传到了hds里
(4)在执行wordcount

 
 
  1. root@openstack:~/hadoop# bin/hadoop jar hadoop-examples-1.1.0.jar wordcount /tmp/test/test* /tmp/test/result  
  2. 12/11/27 15:28:21 INFO input.FileInputFormat: Total input paths to process : 2  
  3. 12/11/27 15:28:21 INFO util.NativeCodeLoader: Loaded the native-hadoop library  
  4. 12/11/27 15:28:21 WARN snappy.LoadSnappy: Snappy native library not loaded  
  5. 12/11/27 15:28:21 INFO mapred.JobClient: Running job: job_201211271500_0002  
  6. 12/11/27 15:28:22 INFO mapred.JobClient:  map 0% reduce 0%  
  7. 12/11/27 15:28:31 INFO mapred.JobClient:  map 100% reduce 0%  
  8. 12/11/27 15:28:40 INFO mapred.JobClient:  map 100% reduce 33%  
  9. 12/11/27 15:28:42 INFO mapred.JobClient:  map 100% reduce 100%  
  10. 12/11/27 15:28:44 INFO mapred.JobClient: Job complete: job_201211271500_0002  
  11. 12/11/27 15:28:44 INFO mapred.JobClient: Counters: 29  
  12. 12/11/27 15:28:44 INFO mapred.JobClient:   Job Counters   
  13. 12/11/27 15:28:44 INFO mapred.JobClient:     Launched reduce tasks=1 
  14. 12/11/27 15:28:44 INFO mapred.JobClient:     SLOTS_MILLIS_MAPS=12789 
  15. 12/11/27 15:28:44 INFO mapred.JobClient:     Total time spent by all reduces waiting after reserving slots (ms)=0  
  16. 12/11/27 15:28:44 INFO mapred.JobClient:     Total time spent by all maps waiting after reserving slots (ms)=0  
  17. 12/11/27 15:28:44 INFO mapred.JobClient:     Launched map tasks=2 
  18. 12/11/27 15:28:44 INFO mapred.JobClient:     Data-local map tasks=2 
  19. 12/11/27 15:28:44 INFO mapred.JobClient:     SLOTS_MILLIS_REDUCES=10558 
  20. 12/11/27 15:28:44 INFO mapred.JobClient:   File Output Format Counters   
  21. 12/11/27 15:28:44 INFO mapred.JobClient:     Bytes Written=70 
  22. 12/11/27 15:28:44 INFO mapred.JobClient:   FileSystemCounters  
  23. 12/11/27 15:28:44 INFO mapred.JobClient:     FILE_BYTES_READ=125 
  24. 12/11/27 15:28:44 INFO mapred.JobClient:     HDFS_BYTES_READ=261 
  25. 12/11/27 15:28:44 INFO mapred.JobClient:     FILE_BYTES_WRITTEN=71664 
  26. 12/11/27 15:28:44 INFO mapred.JobClient:     HDFS_BYTES_WRITTEN=70 
  27. 12/11/27 15:28:44 INFO mapred.JobClient:   File Input Format Counters   
  28. 12/11/27 15:28:44 INFO mapred.JobClient:     Bytes Read=59 
  29. 12/11/27 15:28:44 INFO mapred.JobClient:   Map-Reduce Framework  
  30. 12/11/27 15:28:44 INFO mapred.JobClient:     Map output materialized bytes=131 
  31. 12/11/27 15:28:44 INFO mapred.JobClient:     Map input records=2 
  32. 12/11/27 15:28:44 INFO mapred.JobClient:     Reduce shuffle bytes=131 
  33. 12/11/27 15:28:44 INFO mapred.JobClient:     Spilled Records=20 
  34. 12/11/27 15:28:44 INFO mapred.JobClient:     Map output bytes=99 
  35. 12/11/27 15:28:44 INFO mapred.JobClient:     CPU time spent (ms)=3620  
  36. 12/11/27 15:28:44 INFO mapred.JobClient:     Total committed heap usage (bytes)=302252032  
  37. 12/11/27 15:28:44 INFO mapred.JobClient:     Combine input records=10 
  38. 12/11/27 15:28:44 INFO mapred.JobClient:     SPLIT_RAW_BYTES=202 
  39. 12/11/27 15:28:44 INFO mapred.JobClient:     Reduce input records=10 
  40. 12/11/27 15:28:44 INFO mapred.JobClient:     Reduce input groups=9 
  41. 12/11/27 15:28:44 INFO mapred.JobClient:     Combine output records=10 
  42. 12/11/27 15:28:44 INFO mapred.JobClient:     Physical memory (bytes) snapshot=431722496 
  43. 12/11/27 15:28:44 INFO mapred.JobClient:     Reduce output records=9 
  44. 12/11/27 15:28:44 INFO mapred.JobClient:     Virtual memory (bytes) snapshot=3213344768 
  45. 12/11/27 15:28:44 INFO mapred.JobClient:     Map output records=10 
然后再查看一下

 
 
  1. root@openstack:~/hadoop# bin/hadoop dfs -ls /tmp/test  
  2. Found 3 items  
  3. drwxr-xr-x   - root supergroup          0 2012-11-27 15:28 /tmp/test/result  
  4. -rw-r--r--   1 root supergroup         35 2012-11-27 15:01 /tmp/test/test1  
  5. -rw-r--r--   1 root supergroup         24 2012-11-27 15:01 /tmp/test/test2  
可以看到2个文件一个文件夹
文件夹的内容为

 
 
  1. root@openstack:~/hadoop# bin/hadoop dfs -ls /tmp/test/result  
  2. Found 3 items  
  3. -rw-r--r--   1 root supergroup          0 2012-11-27 15:28 /tmp/test/result/_SUCCESS  
  4. drwxr-xr-x   - root supergroup          0 2012-11-27 15:28 /tmp/test/result/_logs  
  5. -rw-r--r--   1 root supergroup         70 2012-11-27 15:28 /tmp/test/result/part-r-00000  
然后我们在看之前的运行结果,也就是part-r-00000的内容

 
 
  1. root@openstack:~/hadoop# bin/hadoop dfs -cat  /tmp/test/result/part-r-00000  
  2. hadoop  2  
  3. hello   1  
  4. is  1  
  5. my  1  
  6. test    1  
  7. to  1  
  8. welcome 1  
  9. world   1  
  10. world,this  1  
在对比一下test1与test2的内容

 
 
  1. root@openstack:~/hadoop# cat /tmp/test1  
  2. hello world,this is my hadoop test  
  3. root@openstack:~/hadoop# cat /tmp/test2  
  4. welcome to hadoop world  
可以发现hadoop对这2个文本进行了word的统计,左侧是单词,右侧是出现的次数。
然后我们在查看一下web界面的显示

 

可以发现有之前的操作了,为什么有2个job,是因为我又做了其他的操作
查看第一个job

操作都有各自的描述,我就不多说了。
现在我只是使用wordcount简单的测试一下hadoop,了解他的一下简单的概念与作用。

BTW:如果大家认为我写的不错,希望能给我的博客投个票,谢谢!

http://blog.51cto.com/contest2012/2382721




 本文转自 reinxu 51CTO博客,原文链接:http://blog.51cto.com/dl528888/1072963,如需转载请自行联系原作者




相关文章
|
1月前
|
并行计算 Ubuntu Linux
Ubuntu学习笔记(五):18.04安装多版本CUDA
这篇博客文章介绍了在Ubuntu 18.04系统上如何安装和切换不同版本的CUDA,以及如何安装不同版本的cuDNN。
222 2
|
1月前
|
并行计算 PyTorch TensorFlow
Ubuntu安装笔记(一):安装显卡驱动、cuda/cudnn、Anaconda、Pytorch、Tensorflow、Opencv、Visdom、FFMPEG、卸载一些不必要的预装软件
这篇文章是关于如何在Ubuntu操作系统上安装显卡驱动、CUDA、CUDNN、Anaconda、PyTorch、TensorFlow、OpenCV、FFMPEG以及卸载不必要的预装软件的详细指南。
3898 3
|
16天前
|
Ubuntu 开发工具 git
Ubuntu安装homebrew的完整教程
本文介绍了如何在没有公网的情况下安装 Homebrew。首先访问 Homebrew 官网,然后通过阿里云的镜像克隆安装脚本,并创建普通用户进行安装。接着修改 `install.sh` 文件指向国内镜像,执行安装命令。最后配置环境变量并更换 Homebrew 源为国内镜像,确保安装顺利。
134 50
|
1月前
|
Ubuntu Linux 测试技术
Linux系统之Ubuntu安装cockpit管理工具
【10月更文挑战第13天】Linux系统之Ubuntu安装cockpit管理工具
144 4
Linux系统之Ubuntu安装cockpit管理工具
|
1月前
|
Ubuntu 应用服务中间件 nginx
Ubuntu安装笔记(三):ffmpeg(3.2.16)源码编译opencv(3.4.0)
本文是关于Ubuntu系统中使用ffmpeg 3.2.16源码编译OpenCV 3.4.0的安装笔记,包括安装ffmpeg、编译OpenCV、卸载OpenCV以及常见报错处理。
158 2
Ubuntu安装笔记(三):ffmpeg(3.2.16)源码编译opencv(3.4.0)
|
1月前
|
自然语言处理 机器人 Python
ChatGPT使用学习:ChatPaper安装到测试详细教程(一文包会)
ChatPaper是一个基于文本生成技术的智能研究论文工具,能够根据用户输入进行智能回复和互动。它支持快速下载、阅读论文,并通过分析论文的关键信息帮助用户判断是否需要深入了解。用户可以通过命令行或网页界面操作,进行论文搜索、下载、总结等。
51 1
ChatGPT使用学习:ChatPaper安装到测试详细教程(一文包会)
|
1月前
|
Ubuntu Linux C语言
Ubuntu安装笔记(二):ubuntu18.04编译安装opencv 3.4.0 opencv_contrib3.4.0
本文介绍了在Ubuntu 18.04系统上编译安装OpenCV 3.4.0及其扩展包opencv_contrib 3.4.0的详细步骤,包括下载源码、安装依赖、配置CMake和编译安装,以及常见问题的解决方法。
109 1
Ubuntu安装笔记(二):ubuntu18.04编译安装opencv 3.4.0 opencv_contrib3.4.0
|
1月前
|
Ubuntu 虚拟化
软件安装(二):VMware ubuntu20.04 安装步骤
这篇文章是关于如何在VMware Workstation 16 Player上安装Ubuntu 20.04桌面版的详细步骤指南。
181 2
软件安装(二):VMware ubuntu20.04 安装步骤
|
1月前
|
Kubernetes Ubuntu Docker
从0开始搞K8S:使用Ubuntu进行安装(环境安装)
通过上述步骤,你已经在Ubuntu上成功搭建了一个基本的Kubernetes单节点集群。这只是开始,Kubernetes的世界广阔且深邃,接下来你可以尝试部署应用、了解Kubernetes的高级概念如Services、Deployments、Ingress等,以及探索如何利用Helm等工具进行应用管理,逐步提升你的Kubernetes技能树。记住,实践是最好的老师,不断实验与学习,你将逐渐掌握这一强大的容器编排技术。
164 1
|
1月前
|
Ubuntu Linux
软件安装(五):Ubuntu 18.04安装Teamviewer 看一遍就会
这篇文章介绍了在Ubuntu 18.04系统上通过图形界面和命令行两种方法安装TeamViewer远程控制软件的步骤。
35 2
下一篇
无影云桌面