英文参考文档链接如下:
http://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-common/SingleCluster.html
这篇文章描述了单节点的伪分布式hadoop部署。下面是我根据官方文档进行自我部署测试 。
一、写在前面的话
hadoop包括的东西很多,而且文档上的东西也不一定全都正确 ,再加上运行环境的多样化,学习中途出现各种问题是很常见的,遇到问题的时候,先自己花点时间想想能不能自己解决,如果不能再上网找方法,既然都准备要学习它了,就要有自信,hadoop在牛逼也是一种技术,是技术就没有学不会的。
还有我的个人建议是不要一上来就开始跑hadoop这种hello级别的例子,先自己了解下hadoop是什么,主要包括哪些方面,这些东西又是干什么的。这时候我们不知道具体操作,但是心里有点概念会让自己对后面学习过程中的一些步骤多些理解。
二、说说环境
操作系统:看官网推荐的是ubuntu系统,所以我用的是64bit 的ubuntu12.10这个版本
必要软件:ssh 用 apt-get install ssh
rsync 用 apt-get install rsync
java 用 orache 的 64bit 7u55版本,安装方法见链接
hadoop 上官网下2.6.0的stable版本
三、准备工作
将下载的hadoop 解压到/usr/local/下
cp hadoop-2.6.0.tar /usr/local cd /usr/local tar xf hadoop-2.6.0.tar修改配置文件,我用的是vim,也可以用其他的工具,安装的话也是apt-get install vim
vim /usr/local/hadoop-2.6.0/etc/hadoop/hadoop-env.sh在26行,修改java home的路径
export JAVA_HOME="/usr/local/java/jdk1.7.0_55"我没有找到 HADOOP_PREFIX的内容所有没有加下面的内容
export HADOOP_PREFIX=/usr/local/hadoop运行hadoop应该会有下面的一些命令提示
root@mtang-VirtualBox:/usr/local/hadoop-2.6.0/bin# ./hadoop Usage: hadoop [--config confdir] COMMAND where COMMAND is one of: fs run a generic filesystem user client version print the version jar <jar> run a jar file checknative [-a|-h] check native hadoop and compression libraries availability distcp <srcurl> <desturl> copy file or directories recursively archive -archiveName NAME -p <parent path> <src>* <dest> create a hadoop archive classpath prints the class path needed to get the credential interact with credential providers Hadoop jar and the required libraries daemonlog get/set the log level for each daemon trace view and modify Hadoop tracing settings or CLASSNAME run the class named CLASSNAME
四、独立的hadoop
独立的就是没有配置任何分布式特性的,默认的就是这样,这比较方便调试,下面的命令可以让给你看到点输出信息。
$ mkdir input $ cp etc/hadoop/*.xml input $ bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.6.0.jar grep input output 'dfs[a-z.]+' $ cat output/*
五、伪分布式hadoop
5.1 修改配置文件
将下面的内容拷贝到你的配置文件/usr/local/hadoop-2.6.0/etc/hadoop/core-site.xml ,刚打开的时候应该是自由<configuration>,中间是空的。
<configuration> <property> <name>fs.defaultFS</name> <value>hdfs://localhost:9000</value> </property> </configuration>如上,拷贝下面内容到配置文件/usr/local/hadoop-2.6.0/etc/hadoop/hdfs-site.xml
<configuration> <property> <name>dfs.replication</name> <value>1</value> </property> </configuration>
5.2 设置免密码的ssh
首先试下下面的命令ssh localhost看是否需要密码,如果要那么执行下面的命令,$表示一行的开头,不要拷贝进去了。
$ ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa $ cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys上面的命令是生成一个证书,然后通过这个证书完成免密码ssh连接
5.3 开始执行吧
1. 格式化文件系统,这次我们用到了HDFS了,HDFS是一种分布文件系统,对分布式文件系统不了解的就先把它当作本地的文件系统,FAT32,NTFS之类的,再简单点说就是你的硬盘,这次的任务是格式化你的"硬盘“
/usr/local/hadoop-2.6.0/bin/hdfs namenode -format
2.接下来我们启动我们的namenode,namenode是hdfs的内容
/usr/local/hadoop-2.6.0/sbin/start-dfs.sh
3. 这时候我们可以通过浏览器查看namenode的界面,在浏览器输入下面内容,当然如果不是本机localhost换成机器IP吧。
http://localhost:50070/
4. 在dfs上创建目录吧,用来存放待处理的文件的
/usr/local/hadoop-2.6.0/bin/hdfs dfs -mkdir -p /user/root/input
5. 把本地待处理的文件拷贝到dfs上的
/usr/local/hadoop-2.6.0/bin/hdfs dfs -put /usr/local/hadoop-2.6.0/etc/hadoop/* /user/root/input
6. 接下来我们就可以运行期待的已久的hadoop分析任务了,注意是一行
/usr/local/hadoop-2.6.0/bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.6.0.jar grep input output 'dfs[a-z.]+'如果你多次运行上面的命令碰巧出现下面的错误的话
org.apache.hadoop.mapred.FileAlreadyExistsException: Output directory hdfs://localhost:9000/user/root/output already exists你需要先删除这个文件夹
/usr/local/hadoop-2.6.0/bin/hdfs dfs -rm -r /user/root/output
7. 好了,运行完了,把结果拷贝到本地磁盘看看
/usr/local/hadoop-2.6.0/bin/hdfs dfs -get /user/root/output /root/output
看看结果
cat /root/output/*其实也可以不用拷贝,直接在hfs上看的
/usr/local/hadoop-2.6.0/bin/hdfs dfs -cat /user/root/output/*
相关推荐
基于Hadoop部署实践对网站日志分析 1. 项目概述 本次要实践的数据日志来源于国内某技术学习论坛,该论坛由某培训机构主办,汇聚了众多技术学习者,每天都有人发帖、回帖。至此,我们通过Python网络爬虫手段进行数据...
hadoop作为大数据平台,经常需要部署集群,文档非常详细地介绍了hadoop集群的部署过程,两个节点master和slave
HDFS HA通常由两个NameNode组成,一个处于Active状态,另一个处于Standby状态。Active NameNode对外提供服务,而...Zookeeper的作用是负责HDFS中NameNode主备节点的选举,和YARN框架下ResourceManaer主备节点的选举。
主要介绍了Hadoop在windows上伪分布式的安装过程、在Linux单节点伪分布式的安装过程、Eclipse开发环境介绍
资料目录如下: 1. 制作docker基础镜像-01 2. 制作支持ssh的docker镜像-centos7_ssh-01 ...4. 构建基于docker的单节点的HDFS集群-01 5. docker容器跨物理节点通信-01 ...Docker一键部署hadoop分布式.zip
Hive 部署和安装27#安装Hadoop集群,看EasyHadoop安装文档。27#安装Mysql,启动Mysql,检查gc++包。27#解压Hive包并配置JDBC连接地址。27#启动Hive thrift Server。27#启动内置的Hive UI。274. Hive Cli 的基本用法28#...
hadoop HA 高可用性 本文提供了一个HDFS 的高可用性(HA )功能的概述,以及如何配置和管理HDFS 高可用性(HA) 集群。本文档假定读者具有对HDFS 集群的组件和节点类型具有一定理解
1. 准备一台内存最少8G(建议16G)、cpu i7 4核的电脑 2. 搭建3节点zookeeper集群 3. 完成zookeeper集群安装
3-4节点,集群部署自己确定,比如集群涉及的多种角色namenode,secondary namenode, datanode,resourcemanager等的节点分配,并用表格形式给出。给出可访问的ip,用户名密码。(阿里云直接给公网ip,校园网需给公网和...
由于早期项目的客户服务器重新规划,原来部署应用的员工已离职且部署文档不完整,所以用三个虚机节点搭了简单的Hadoop+Hbase+Solr的环境并形成部署步骤文档给运维人员参考,有兴趣的可以下载一下,以上。
本文档为本人部署hadoop集群过程的总结,该集群有3个节点,分别对应VMware中的三个Linux虚拟机。该过程的每一步本人都截图了,按照此文档部署成功率很高。
基于Ambari部署大数据开发环境的文档,可以部署成单节点的,也可以配置多节点的,Ambari能刚好的监测集群运行的健康状态,
zookeeper是现在大数据领域不可或缺的组件,它用于Hadoop生态圈多个组件的HA配置,协调各个节点有序进行工作,在这里,我将一步一步教你搭建生产使用的zookeeper集群。
Hadoop 是高效的,因为它以并行的方式工作,通过并行处理加快处理速度。所以我们需要部署集群,然而集群之间的通讯每次都要输入密码的话很麻烦,所以我们配置集群免秘钥。
实验报告 项目名称: Hadoop平台部署(两次实验) 课程名称: 云计算技术 班级: 信息工程学院计算机系 linux系统配置(在本实验中,创建了master和slave两个节点) 1主机名的配置 通过语句编辑,将hostname分别改为...
且能够集成已有的分析工具支持实时的Telemetry搜索和跨Telemetry的匹配支持自动生成报告、和异常报警支持原数据包的抓取、存储、重组支持数据驱动的安全模型OpenSOC 官方文档介绍了以下五大优点:由思科全力支持,...
a)SecondaryNameNode b)DataNode c)TaskTracker d)Jobtracker 注:haoop1.X 分析: hadoop 的集群是基于 master/slave 模式,namenode 和 jobtracker 属于 master,datanode 和 tasktracker属于 slave,master 只 ...
a)它是 NameNode 的热备 b)它对内存没有要求 c)它的目的是帮助 NameNode 合并编辑日志,减少 NameNode 启动时间 d)SecondaryNameNode 应与 NameNode 部署到一个节点 多选题 8. 下列哪项可以作为集群的管理工具 a)...
a)它是 NameNode 的热备 b)它对内存没有要求 c)它的目的是帮助 NameNode 合并编辑日志,减少 NameNode 启动时间 d)SecondaryNameNode 应与 NameNode 部署到一个节点 多选题 8. 下列哪项可以作为集群的管理工具 a)...