之前我们用虚拟机安装了linux,很多书和资料上都提出了可以用伪分布以及采用在windows下用cygwin的方式去搭建hadoop环境。首先伪分布的方式,我觉得完全没有必要去搭建,因为在实际的项目中也不可能用这种方式,另外它也不利于我们的学习。第二cygwin的方式,我强烈建议大家不要用这种方式安装。很多人觉得一开始用虚拟机会比较麻烦,不愿意安装虚拟机。如果你采用cygwin的方式的话,会遇到很多很多莫名其妙的错误。而且有些根本没法解决,在前期搭建环境的时候就会消耗你很多的时间去解决这些莫名奇妙的问题,而且还会打击到你学习的积极性。怎么说呢,时间也算是学习的成本吧,所以还是分享一点个人的经验,以免大家少走弯路。
这里我们采用最快的方式先把hadoop环境搭建起来。其实我觉得学习编程最好的方式就是先把例子跑起来,先写好第一个hello word。具体细节之后才去详细分析。所以,这里我还是采用这种方式。先以最快的速度搭起来,其中具体的细节和知识点,我们以后有机会再做分析。
一 . 安装准备
1 . 下载hadoop,去官网下载。http://www.apache.org/dist/hadoop/core/
hadoop版本更新也非常的快现在已经到了2.0.0的测试版本。但是我们这里还是建议下载0.20.2这个版本的。选择这个版本原因之一是它非常的稳定,其二现在绝大多数企业中都是采用的这个版本,我们公司也不例外,另外就是这个版本的资料相对较多,大家遇到问题的时候也好寻找解决方案。
2 . 下载jdk,我这里选择的版本是 jdk-6u32-linux-i586.bin.还是给比较懒的同学们发一下下载链接 http://www.oracle.com/technetwork/java/javase/downloads/index.html
3 . 操作系统采用32位的 CentOS 这也是企业中用的比较多的。最主要的原因我想是因为他免费吧。前面我们已经安装好了虚拟机。
4 . 物理机。这里我们的条件不具备,因此我们只能通过虚拟机才学习。 效果是一样的。
二 . Cloudera
1 . 本来打算后面的实战篇介绍的,这里还是顺带提一下Cloudera,其实这个公司他的定位其实就是把hadoop标准化,他将hadoop源码进行了修改,让其配置标准化以达到更方便的帮助企业安装,配置,运行hadoop以达到大规模企业数据的处理和分析。Cloudera的Hadoop配置和HBase,Hive,Pig等有良好的接口,使得这些软件的安装,配置和使用的成本降低并且进行了标准化。其实在我们实际的项目中采用的就是Cloudera系列的产品,主要原因就是他可以很方便的和我们的HBase,Hive等进行整合。
官网:https://www.cloudera.com
使用版本:hadoop-0.20.2-cdh3u2.tar.gz
下载地址:http://archive.cloudera.com/cdh/3/
(写半天不小心关掉了。一大版文字又要重新写了。建议iteye还是出个自动保存功能。555.)
三 . jdk的安装和配置
1 . 我们用的jdk的版本是 jdk-6u32-linux-i586.bin ,大家自行去sun的官方现在,当然现在是oracle.然后用filezllia讲安装包上传到我们的linux上。所有的节点都上传,也就是我们安装的linux虚拟机。这里大家可以根据自己的机器情况安装多个slave节点。因为我机器的空间原因只安装了1个master和1个slave,学习的话其实多少个slave都是一样只要了解原理就可以了。我们将jdk上传到/usr目录下。并且赋予执行的权限 chomod 777 jdk-6u32-linux-i586.bin,然后./jdk-6u32-linux-i586.bin执行安装包。
然后我们需要配置我们的java环境变量,同样每台节点都需要配置。export JAVA_HOME=/usr/jdk1.6.0_32
export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
export PATH=$PATH:$JAVA_HOME/lib:$JAVA_HOME/jre/bin:$JAVA_HOME/bin
四 . hadooop的安装和配置
1 . 这里我们还是不要用root用户,另外创建一个hadoop用户来搭建hadoop环境。
useradd hadoop
passwd hadoop
2 . 用root用户登陆,在所有的节点上修改 /etc/hosts文件,添加所有的master和slave的ip
192.168.1.101 master
192.168.1.102 slave1
3 . 在我们的/usr下 创建hadoop目录并且制定好用户组,我们准备吧我们的hadoop安装到这个目录下。chgrp hadoop hadoop
chown hadoop hadoop
linux不熟的朋友可以再网上学习下简单的linux命令。
4 . 进入到hadoop目录用户的目录。su - hadoop
5 . 建立.ssh目录,执行的时候会有提示,直接三个回车。这个命令的意思是命令将为hadoop上的用户hadoop生成其密钥对,询问其保存路径时直接回车采用默认路径,当提示要为生成的密钥输入passphrase的时 候,直接回车,也就是将其设定为空密码。生成的密钥对id_rsa,id_rsa.pub,默认存储在/root/.ssh目录下(注意如果是master和salve的IP有变化的话,需要重新执行此步,如果出现错误可以在/var/log/secure下查看日志文件)ssh-keygen -t rsa
6 . 将.ssh赋予755权限(很关键)chmod 755 .ssh
此时.ssh目录下回有两个文件 id_rsa 和 id_rsa.pub。如果没有请重新执行此步骤。
7 . 这一步只需要再master主节点上执行。cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
这步的意思是把公用密匙添加到authorized_keys 文件中,然后记得把这个文件赋予644权限ssh slave1 cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
上面这条命令是把slave1节点的公钥拷贝到master节点中的authorized_keys中去,如果你有多个slave节点那么就执行多个 slave1是节点的名称。scp ~/.ssh/authorized_keys slave1:~/.ssh/authorized_keys
上面这条命令是指authorized_keys文件拷贝回每一个节点,同样slave1是节点名称,如果有多个则执行多次。
8 . 登陆在master主节点,然后连接所有slave节点。输入如下命令,上有几个slave节点就要输入几次,注意每次输入后,要返回master节点,(exit)重新输入命令。需要选择yesssh slave1
此时查看 ls .ssh目录下有四个文件 authorized_keys id_rsa id_rsa.pub known_hosts
9 . 将我们下载好的 hadoop-0.20.2.tar.gz 上传到我们每台节点的hadoop目录下。tar xvfz hadoop-0.20.2.tar.gz
10 . 配置hadoop环境变量,编辑/etc/profile,增加以下内容export HADOOP_HOME=/usr/hadoop/hadoop-0.20.2
export PATH=$PATH:$HADOOP_HOME/bin
11 . 修改hadoop配置文件,在hadoop的conf目录下编辑master和slave文件。master文件里面添加 master,slave文件里面添加所有slave节点的IP,有多少个加多少个我这里只有一台slave,加上slave1 ,也可以直接加上IP,我这里用的添加主机名的方式。
12 . 修改以下共3个xml配置文件:
a . 首先hadoop-env.sh中添加如下语句:export JAVA_HOME=/usr/jdk1.6.0_32
b . core-site.xml:<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://master:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/hadoop/tmp</value>
</property>
</configuration>
如果没有tmp目录就创建一个.
c . mapred-site.xml:<configuration>
<property>
<name>mapred.job.tracker</name>
<value>master:9001</value>
</property>
</configuration>
d . hdfs-site.xml:(这里如果不写 replication 默认为3,如果不修改,datanode 少于三台就会报错)<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
13 . 配置好的hadoop发送到多个salve节点上,有多少执行多少次scp -r /usr/hadoop/hadoop-0.20.2 slave1:/usr/hadoop/
14 . 在master节点上进入hadoop的bin目录 格式化文件系统,然后启动hadoop,当然要确保9000和9001端口是通的。./hadoop namenode -format
./start-all.sh
15 . 用jps命令查看是否启动正常。如果有4个进程 jps,namenode,second namenode,jobtracker。slave会有3个进程jps,datanode,tasktracker.这样表示启动正常。否则启动不正常。当然也可以通过查看日志的方式。还有就是通过web,通过访问http://master:50070查看namenode,访问http://master:50030查看jobtracker.
OK,到这里我们的hadoop环境就算搭建完成了.
分享到:
相关推荐
- **安装和配置Hadoop 2.x**:详细介绍如何在个人计算机或服务器上安装和配置Hadoop 2.x环境,包括必要的软件包和依赖项。 - **理解YARN的工作原理**:深入讲解YARN作为资源管理器的作用,以及它是如何协调和分配...
20_Hadoop_入门_IP和主机名称配置.mp4 21_Hadoop_入门_Xshell远程访问工具.mp4 24_Hadoop_入门_JDK安装.mp4 28_Hadoop_入门_xsync分发脚本.mp4 29_Hadoop_入门_ssh免密登录.mp4 30_Hadoop_入门_集群配置.mp4 31_...
hadoop 第三版-权威指南-从入门到精通-中文pdf版本。介绍hadoop分布式文件系统,MapReduce的工作原理,并手把手教你如何构建hadoop集群,同时附带介绍了pig,hive,hbase,zookeeper,sqoop等hadoop家族的开源软件。
2. **资源管理**:插件允许用户浏览和管理HDFS(Hadoop Distributed File System)上的文件和目录,进行上传、下载、删除等操作。 3. **作业提交**:开发者可以直接在Eclipse中提交MapReduce作业到Hadoop集群,减少...
【Hadoop入门-01-集群搭建】 Hadoop是一个由Apache基金会所开发的开源分布式计算框架,它旨在处理和存储海量数据。Hadoop的核心组件包括HDFS(分布式文件系统)、YARN(运算资源调度系统)以及MAPREDUCE(分布式...
【大数据课程-Hadoop集群程序设计与开发-1.Hadoop入门_lk_edit.ppt】课程主要围绕大数据技术中的Hadoop集群程序设计与开发展开,旨在帮助教师进行教学,提供全面的教学资源,包括大纲、教案、实训文档等。...
总结来说,Hadoop2x-eclipse-plugin-master是Hadoop开发者的得力助手,它通过与Eclipse的深度集成,提供了一站式的开发解决方案,简化了Hadoop项目的开发流程,降低了入门门槛,提升了开发效率。对于想要涉足Hadoop...
这个对于入门学习Hadoop是非常有帮助的。里面的文字简单易懂。 文档列表: 1)Hadoop集群_第1期_CentOS安装配置_V1.0 2)Hadoop集群_第2期_机器信息分布表_V1.1 3)Hadoop集群_第3期_VSFTP安装配置_V1.0 4...
Hadoop 源起和概论 思考: Hadoop的核心思想 Hadoop 简介:缘起与术语 练习一:Hadoop 单机安装 HDFS 理念与命令解说 练习二:HDFS 操作实务 MapReduce 简介: 练习三:MapReduce 范例操作
5.细细品味Hadoop_Hadoop集群(第5期)_Hadoop安装配置 6.细细品味Hadoop_Hadoop集群(第5期副刊)_JDK和SSH无密码配置 7.细细品味Hadoop_Hadoop集群(第6期)_WordCount运行详解 8.细细品味Hadoop_Hadoop集群(第7...
- 修改`hadoop-env.cmd`,设置Java环境变量`JAVA_HOME`指向已安装的Java JDK路径。 - 修改配置文件,如`hdfs-site.xml`配置HDFS的相关参数,`yarn-site.xml`配置YARN参数,`core-site.xml`设置默认FS等。 3. **...
【Hadoop大数据开发基础-PPT课件】是一个涵盖了Hadoop生态系统入门知识的教育资源,适合初学者和希望深入了解大数据处理技术的IT专业人士。本课件主要围绕Hadoop框架展开,包括其设计原理、核心组件以及实际应用。...
Hadoop 安装 学习 入门教程 Hadoop家族系列文章,主要介绍Hadoop家族产品,常用的项目包括Hadoop, Hive, Pig, HBase, Sqoop, Mahout, Zookeeper, Avro, Ambari, Chukwa,新增加的项目包括,YARN, Hcatalog, Oozie, ...
【IT十八掌徐培成】Hadoop第01天-03.hadoop安装.zip这个压缩包文件,主要聚焦在Hadoop的安装过程上,这是一份关于大数据处理框架Hadoop的入门教程,由知名IT专家徐培成讲解。Hadoop是Apache软件基金会开发的一个开源...
大数据视频学习资料-【课程内容】 01_Linux基础 02_Hadoop 03_Zookeeper 04_Hadoop-HA 05_Hive框架基础 06_Flume 07_Oozie 08_HBase 09_Kafka 09_杂项 10_Storm 11_1离线平台项目测试 11_项目:大数据离线平台 12_...
对于Ubuntu系统的用户,可以通过apt实用程序获取Hadoop发行版,该过程简单且不需要下载和构建源代码。需要对/etc/apt/sources.list.d/cloudera.list添加相应的源信息,并使用curl获取apt-key以验证下载的包。接着,...
根据提供的文件信息,以下是有关Hadoop入门进阶课程中Hive介绍和安装部署的知识点: 1. Hive介绍: - Hive是Facebook开发的数据仓库工具,运行于Hadoop集群之上。 - 提供类SQL的HQL(Hive Query Language)查询...
Hadoop是大数据技术中最重要的框架之一,是学习大数据必备的第一课,在Hadoop平台之上,可以更容易地开发和运行其他处理大规模数据的框架。尚硅谷Hadoop视频教程再次重磅升级!以企业实际生产环境为背景,增加了更...