英文参考文档链接如下:
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 2.0 部署详解】 在大数据处理领域,Apache Hadoop 是一个不可或缺的开源框架,尤其在大规模数据存储和处理方面表现出强大的能力。Hadoop 2.0 引入了高可用性(HA)特性,极大地提高了系统的稳定性。本文将...
【Hadoop与HBase部署文档】 Hadoop是一个开源的分布式计算框架,主要由Apache基金会维护。它被设计成能够处理和存储大量数据,是大数据处理领域的重要工具。Hadoop的核心组件包括HDFS(Hadoop Distributed File ...
- **Hadoop 官网地址**:官方网站提供了详细的文档和技术支持,是学习 Hadoop 的最佳起点。 - **Hadoop 1.2.1 下载地址**:具体下载地址可以从官方网站获取,确保下载的是官方发布的稳定版本。 #### 二、HDFS...
Hadoop伪分布式部署文档是指在单台机器上模拟分布式Hadoop集群的部署文档,包括服务器伪分布式部署、本地Hadoop开发环境部署、Eclipse远程连接Hadoop服务器等内容。下面是该文档的详细解释: 首先,需要安装JDK,...
- Apache Hadoop官方文档提供了不同Java版本的兼容性测试结果:[https://wiki.apache.org/hadoop/HadoopJavaVersions](https://wiki.apache.org/hadoop/HadoopJavaVersions)。 - **配置环境变量:** - 追加Java...
本文档提供了Hadoop 2.0在Linux系统上安装部署的详细步骤和方法。 一、准备工作 首先,需要准备足够的硬件资源和软件包。硬件方面,测试环境通常需要一台配置较高(建议内存不小于4GB)的PC或服务器,而生产环境则...
本文将详细介绍如何在Linux环境下安装和部署Hadoop,包括硬件环境准备、目录结构规划、SSH设置、环境变量配置、Hadoop配置文件的编辑以及Hadoop的启动和基本操作。 首先,下载Hadoop安装文件。Apache官方提供了不同...
通过阅读这份“Hadoop官方文档中文版”,开发者和管理员可以深入了解Hadoop的工作原理、配置方法、最佳实践以及如何解决常见问题,从而更好地利用Hadoop处理大数据挑战。这份文档对于学习和掌握Hadoop技术至关重要,...
本文档旨在为初学者提供一个清晰、详尽的Hadoop部署流程,包括单机伪分布模式和多节点集群的安装与配置,帮助读者快速理解Hadoop的核心概念和实际操作。 1.2 背景 在Linux环境下部署Hadoop,需要对操作系统有基本的...
本文档旨在详细介绍如何在单节点环境下安装、配置并运行Hadoop集群的过程。通过本教程的学习,读者将能够掌握在Ubuntu Linux系统上搭建单机Hadoop集群的基本步骤,包括环境准备、软件安装与配置、启动及测试等环节。...
Hadoop官方文档是学习和使用Hadoop的重要资源,不仅提供了详细的安装和配置指南,还深入解析了Hadoop的核心组件和高级功能。无论是初学者还是经验丰富的开发者,都能从中获得有价值的信息,帮助他们在大数据领域取得...
该文档旨在帮助读者了解 Hadoop 的基本架构、HDFS 和 MapReduce 的原理,并掌握 Hadoop 的多节点部署过程和 MapReduce 应用程序的实践。 一、Hadoop 概念 1. Hadoop 是一个能够对海量数据进行分布式处理的系统架构...
本教程涵盖了Hadoop的安装部署及教学,旨在帮助初学者和进阶者全面理解并掌握这一分布式计算框架。以下将详细阐述Hadoop的相关知识点,包括其概念、架构、安装步骤、配置优化以及实际应用。 一、Hadoop概述 Hadoop...
【Hadoop集群部署文档】 Hadoop是一个开源的分布式计算框架,允许在大规模集群上处理大量数据。本文档基于作者的实际部署经验,详细介绍了在多台机器上构建Hadoop集群的步骤,特别适合初学者和寻求深入理解Hadoop...
5. **Hadoop集群设置**:部署Hadoop集群涉及配置多个节点,包括设置HDFS和MapReduce的配置参数,如副本数量、内存分配等。集群中的节点可以通过Hadoop的ResourceManager和NodeManager进行管理和监控。 6. **Hadoop...
本文档将详细介绍如何利用Hadoop进行网站日志分析的实践过程,涵盖了从数据获取、Hadoop环境搭建到数据处理和存储的全过程。 1. 项目概述: 该项目主要针对一个由技术培训机构主办的技术学习论坛的日志数据进行分析...
总的来说,Hadoop2.7.1中文文档是一个宝贵的资源,涵盖了Hadoop的基本概念、架构、配置、使用和最佳实践。无论你是初学者还是经验丰富的开发者,都能从中获取有价值的信息,提升自己在大数据领域的技能。通过深入...
大数据平台搭建之 ...大数据平台搭建需要经过多个步骤,包括环境准备、Hadoop 安装和配置、Zookeeper 部署、Hbase 部署和 Hive 部署。通过本文档,我们可以了解大数据平台搭建的整个过程,并掌握相关的技术和经验。