Hadoop分布式安装

2019-03-28 14:23|来源: 网络

一、安装准备

1、下载Hadoop 0.20.2,地址:http://www.apache.org/dist/hadoop/core/hadoop-0.20.2/

2、JDK版本:jdk-6u20-linux-i586.bin (必须是1.6)

3、操作系统:Linux s132 2.6.9-78.8AXS2smp #1 SMP Tue Dec 16 02:42:55 EST 2008 x86_64 x86_64 x86_64 GNU/Linux

4、三台机器,192.168.3.131(master),192.168.3.132(slave),192.168.3.133(slave)

二、安装操作

1、拷贝以上文件到Linux的“/root”目录下。同时新建目录“/jz”。

2、安装JDK,此步省略...

3、解压hdaoop到/jz目录下。tar -zxvf hbase-0.20.5.tar.gz -C /jz

4、配置131机器可以通过SSH直接访问132和133。

在131上执行以下操作:
$ ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa ,
直接回车,完成后会在~/.ssh/生成两个文件:id_dsa 和id_dsa.pub。这两个是成对出现,类似钥匙和锁。再把id_dsa.pub 追加到授权key 里面(当前并没有authorized_keys文件):
$ cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys。
完成后可以实现无密码登录本机:
$ ssh localhost。把131上的id_dsa.pub 文件追加到132和133的authorized_keys 内( 以192.168.3.132节点为例):
a. 拷贝131的id_dsa.pub文件:
$ scp id_dsa.pub s132@192.168.3.132:/root/
b. 登录192.168.3.132,进入/root目录执行:
$ cat id_dsa.pub >> .ssh/authorized_keys
之后可以在131上不输入密码直接访问1325、修改/jz/hadoop-0.20.2/conf/目录下的master文件,内容如下:

192.168.3.1316、修改/jz/hadoop-0.20.2/conf/目录下的slaves文件,内容如下:192.168.3.132
192.168.3.1337、修改/jz/hadoop-0.20.2/conf/hadoop-env.sh文件的环境变量:# The java implementation to use.  Required.
export JAVA_HOME=/usr/java/jdk1.6.0_208、修改/jz/hadoop-0.20.2/conf/core-site.xml配置文件,内容如下:<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<!-- Put site-specific property overrides in this file. -->
<configuration>
<property>
  <name>hadoop.tmp.dir</name>
  <value>/hadoopdata</value>
  <description>A base for other temporary directories.</description>
</property>

<property>
  <name>fs.default.name</name>
  <value>hdfs://m131:9000</value>
  <description>The name of the default file system.  A URI whose
  scheme and authority determine the FileSystem implementation.  The
  uri's scheme determines the config property (fs.SCHEME.impl) naming
  the FileSystem implementation class.  The uri's authority is used to
  determine the host, port, etc. for a filesystem.</description>
</property>

<property>
  <name>dfs.hosts.exclude</name>
  <value>excludes</value>
</property>
</configuration>9、修改/jz/hadoop-0.20.2/conf/hdfs-site.xml配置文件,内容如下:<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<!-- Put site-specific property overrides in this file. --><configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>10、修改/jz/hadoop-0.20.2/conf/mapred-site.xml配置文件,内容如下:<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<!-- Put site-specific property overrides in this file. -->
<configuration>
<property>
  <name>mapred.job.tracker</name>
  <value>m131:9001</value>
  <description>The host and port that the MapReduce job tracker runs
  at.  If "local", then jobs are run in-process as a single map
  and reduce task.
  </description>
</property>
</configuration>11、修改ect/hosts配置文件,内容如下:# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1 localhost
192.168.3.131 m131
192.168.3.132 s132
192.168.3.133 s13312、修改/ect/profile配置文件,在末尾追加以下内容,并输入source/etc/profile使之生效:export JAVA_HOME=/usr/java/jdk1.6.0_20

export JRE_HOME=/usr/java/jdk1.6.0_20/jre

export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH

export PATH=$JAVA_HOME/bin:$PATH

export HADOOP_HOME=/jz/hadoop-0.20.2

export PATH=$HADOOP_HOME/bin:$PATH

export PATH=$PATH:$HIVE_HOME/bin13、将/jz/hadoop-0.20.2拷贝到192.168.3.132和192.168.3.133对应的目录下。将/ect/profile和/etc/hosts也拷贝到132和133机器上。注意profile需要做生效操作。三、启动/停止hadoop1、通过shell脚本启动hadoop。sh /jz/hadoop-0.20.2/bin/start-all.sh2、停止hadoopsh /jz/hadoop-0.20.2/bin/stop-all.sh四、初始配置

1、格式化HDFS文件系统。进入/jz/hadoop-0.20.2/bin目录。执行:

hadoop namenode –format2、在/jz/hadoop-0.20.2/bin目录下,执行:hadoop fs -ls /如果控制台返回结果,表示初始化成功。可以向里面录入数据。3、通过WEB查看hadoop查看集群状态 http://192.168.3.131:50070/dfshealth.jsp
查看JOB状态 http://192.168.3.131:50030/jobtracker.jsp

五、注意事项

1、hadoop的安装千万计的修改/etc/hosts文件。修改之后最好是重启机器。

2、master和slaves这2个配置文件可以不拷贝到s132和s133机器上,只在master上保存即可。

3、通过web查看hadoop的时候,如果使用IE一些图形工具显示不出来,建议使用opera或是chrome。

4、如果有些错的地方或是不清楚的地方可以发邮件交流:dajuezhao@gmail.com

相关问答

更多
  • 1、能搭好环境说明水平还不错。 2、下边应该分以下几步走: 一,依据示例程序,自己手写wordcount之类的示例程序,以此充分了解m/r和hdfs的简单原理。 二,针对某些知识点,如hadoop应用场景、hadoop的简单应用等,去百度一下搞定,这样的问题最关键、最需要做的。 三,深入阅读hadoop的源码,把框架的数据流或说工作流搞个大致清楚。 四,试着用hadoop解决一些实际问题和项目应用。 参考下吧。
  • Slave填写Master和Slave的IP地址,Master可以同时做Master和Slave
  • 先回答你标题的提问:hadoop完全分布式:3个及以上的实体机或者虚拟机组件的机群。hadoop伪分布式:一个节点看了以上两点相信你已经明白了,“用vm多装几个unbuntu配置完全分布式,然后做实验”这是完全可行的。实际上我们通常也是这么做的,当然可能要求你的电脑cpu和内存足够支撑你这一计划。一点建议:如果你要开发基于Hadoop的分布式程序,伪分布式足够你实验了。如果你要做很多其他事情,比如玩玩cm,玩玩oozie,玩玩hbase,建议装多个虚拟机。
  • 常见的分布式文件系统有,GFS、HDFS、Lustre 、Ceph 、GridFS 、mogileFS、TFS、FastDFS等。各自适用于不同的领域。它们都不是系统级的分布式文件系统,而是应用级的分布式文件存储服务。 GFS(Google File System) -------------------------------------- Google公司为了满足本公司需求而开发的基于Linux的专有分布式文件系统。。尽管Google公布了该系统的一些技术细节,但Google并没有将该系统的软件部分作为 ...
  • 若在windows的Eclipse工程中直接启动mapreduc程序,需要先把hadoop集群的配置目录下的xml都拷贝到src目录下,让程序自动读取集群的地址后去进行分布式运行(您也可以自己写java代码去设置job的configuration属性)。   若不拷贝,工程中bin目录没有完整的xml配置文件,则windows执行的mapreduce程序全部通过本机的jvm执行,作业名也是带有“local"字眼的作业,如 job_local2062122004_0001。 这不是真正的分布式运行mapred ...
  • 搭建的文本,很久了,现在更新的最新版本搭建更加简单,建议你去看看黑马里边的教程,免费的
  • hadoop集群指的是一群机器在一起提供一个hadoop的集群的服务。 hadoop分布式指的是hadoop支持任务分布式运行,因为有hadoop集群提供服务,所以hadoop将任务分发到集群的多台机器运行,所以叫做分布式。 一个是服务器架构,一个是任务运行架构。
  • 一、DFS为何物? DFS 即微软分布式文件系统的简称,系统管理员可以利用它来有效的整合网络资源,并把这些资源以单一的层次结构呈现给网络用户。管理员利用它可以把资源发布成一 个树形结构,这样大大简化了为用户进行资源配置和对资源管理的工作量。我们可以在不同的机器上调整和移动文件,这不会影响到用户的访问。 二、为什么要使用DES? 1、DFS使用了现有网络中的Share权限,管理员不必进行新的配置 2、通过一个DFS树形结构用户就可以访问多个网络资源,而不用再把远程驱动器映射到本地共享资源中。 3、DFS可以配 ...
  • 分布式系统(distributed system)是建立在网络之上的软件系统。正是因为软件的特性,所以分布式系统具有高度的内聚性和透明性。因此,网络和分布式系统之间的区别更多的在于高层软件(特别是操作系统),而不是硬件。内聚性是指每一个数据库分布节点高度自治,有本地的数据库管理系统。透明性是指每一个数据库分布节点对用户的应用来说都是透明的,看不出是本地还是远程。在分布式数据库系统中,用户感觉不到数据是分布的,即用户不须知道关系是否分割、有无复本、数据存于哪个站点以及事务在哪个站点上执行等。 故名思义,分布式 ...
  • 要知道您是以独立还是伪分布模式运行hadoop,请验证您的配置文件。 以下信息可能有帮助。 To know if you are running hadoop in Standalone or Pseudo distributed mode, verify your configuration files. Below information might help.