楼主是从Hadoop2.x版本过来的,在工作之余自己搭建了一套3.0的版本来耍一耍,此文章的前置环境准备工作省略。主要介绍一些和Hadoop2.x版本不同的安装之处

Hadoop版本:hadoop-3.0.0-beta1

JDK版本:jdk1.8.0_121

虚拟机版本:Centos6.5

一、前置环境准备

1.1 jdk安装

1.2 免密钥登录

二、 hadoop3.0需要配置的文件有core-site.xml、hdfs-site.xml、yarn-site.xml、mapred-site.xml、hadoop-env.sh、workers

1.core-site.xml配置文件

<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://hadoop3:9000</value>
</property> <property>
<name>hadoop.tmp.dir</name>
<value>file:///hadoopv3/tmp</value> //此目录不配置的话,默认是在/temp目录下。Linux系统重启的话此目录会被清空
</property>
</configuration>

2.hdfs-site.xml配置文件

<configuration>
<property>
<name>dfs.replication</name>
<value></value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:///hadoopv3/hdfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:///hadoopv3/hdfs/data</value>
</property>
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>hadoop2:</value>
</property>
</configuration>

3.workers中设置slave节点,将slave机器的名称写入

hadoop1
hadoop2
hadoop3

4.mapred-site配置

<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property> <property>
<name>mapreduce.application.classpath</name>
<value>
/home/software/hadoop-3.0.-beta1/etc/hadoop,
/home/software/hadoop-3.0.-beta1/share/hadoop/common/*,
/home/software/hadoop-3.0.0-beta1/share/hadoop/common/lib/*,
/home/software/hadoop-3.0.0-beta1/share/hadoop/hdfs/*,
/home/software/hadoop-3.0.0-beta1/share/hadoop/hdfs/lib/*,
/home/software/hadoop-3.0.0-beta1/share/hadoop/mapreduce/*,
/home/software/hadoop-3.0.0-beta1/share/hadoop/mapreduce/lib/*,
/home/software/hadoop-3.0.0-beta1/share/hadoop/yarn/*,
/home/software/hadoop-3.0.0-beta1/share/hadoop/yarn/lib/*
</value>
</property>
</configuration>
上面的mapreduce.application.classpath开始没有配置,导致使用mapreduce时报错
Error: Could not find or load main class org.apache.hadoop.mapreduce.v2.app.MRAppMaster

5.yarn-site.xml配置

<configuration>

<!-- Site specific YARN configuration properties -->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>hadoop3</value>
</property>
</configuration>

6.hadoop-env.sh中配置java_home

export JAVA_HOME=/usr/local/java/jdk1..0_121  

以上配置完成后,将hadoop整个文件夹复制到其他二台机器。

四、启动hadoop

1.格式化namenode
hdfs namenode -format   

注意:格式化的时候只需要在namenode节点执行一次即可

若没有设置路径$HADOOP_HOME/bin为环境变量,则需在$HADOOP_HOME路径下执行

格式化之后三台机器上的目录的结构分别是:

hadoop1:

hadoop2:

hadoop3:

2.启动hdfs及yarn

start-dfs.sh
start-yarn.sh

若没有设置路径$HADOOP_HOME/sbin为环境变量,则需在$HADOOP_HOME路径下执行

现在便可以打开页面http://hadoop3:8088及http://hadoop3:9870;看到下面两个页面时说明安装成功。

注意:启动的时候会遇到一些问题

问题1:Starting namenodes on [hadoop3] 
ERROR: Attempting to launch hdfs namenode as root 
ERROR: but there is no HDFS_NAMENODE_USER defined. Aborting launch.

解决1: 
是因为缺少用户定义造成的,所以分别编辑开始和关闭脚本 
$ vi sbin/start-dfs.sh 
$ vi sbin/stop-dfs.sh 
在顶部空白处添加内容: 
HDFS_DATANODE_USER=root 
HADOOP_SECURE_DN_USER=hdfs 
HDFS_NAMENODE_USER=root 
HDFS_SECONDARYNAMENODE_USER=root

问题2:

Starting resourcemanager 
ERROR: Attempting to launch yarn resourcemanager as root 
ERROR: but there is no YARN_RESOURCEMANAGER_USER defined. Aborting launch. 
Starting nodemanagers 
ERROR: Attempting to launch yarn nodemanager as root 
ERROR: but there is no YARN_NODEMANAGER_USER defined. Aborting launch.

解决2: 
是因为缺少用户定义造成的,所以分别编辑开始和关闭脚本 
$ vi sbin/start-yarn.sh 
$ vi sbin/stop-yarn.sh

hadoop-3.0.0-beta1分布式安装的更多相关文章

  1. CentOS7-64bit 编译 Hadoop-2.5.0,并分布式安装

    摘要 CentOS7-64bit 编译 Hadoop-2.5.0,并分布式安装 目录[-] 1.系统环境说明 2.安装前的准备工作 2.1 关闭防火墙 2.2 检查ssh安装情况,如果没有则安装ssh ...

  2. Hadoop2.2.0多节点分布式安装及测试

    众所周知,hadoop在10月底release了最新版2.2.很多国内的技术同仁都马上在网络上推出了自己对新版hadoop的配置心得.这其中主要分为两类: 1.单节点配置 这个太简单了,简单到只要懂点 ...

  3. Hadoop生态圈-hbase介绍-伪分布式安装

    Hadoop生态圈-hbase介绍-伪分布式安装 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.HBase简介 HBase是一个分布式的,持久的,强一致性的存储系统,具有近似最 ...

  4. centos 7下Hadoop 2.7.2 伪分布式安装

    centos 7 下Hadoop 2.7.2 伪分布式安装,安装jdk,免密匙登录,配置mapreduce,配置YARN.详细步骤如下: 1.0 安装JDK 1.1 查看是否安装了openjdk [l ...

  5. hadoop 2.7.3伪分布式安装

    hadoop 2.7.3伪分布式安装 hadoop集群的伪分布式部署由于只需要一台服务器,在测试,开发过程中还是很方便实用的,有必要将搭建伪分布式的过程记录下来,好记性不如烂笔头. hadoop 2. ...

  6. Linux下Storm2.1.0的伪分布式安装

    官方下载网址:http://storm.apache.org/downloads.html 1.第一步我们先从官网下载解压包  2.然后进行解压 3.配置环境变量 在profile里面插入如下格式语句 ...

  7. Hadoop + Hive + HBase + Kylin伪分布式安装

    问题导读 1. Centos7如何安装配置? 2. linux网络配置如何进行? 3. linux环境下java 如何安装? 4. linux环境下SSH免密码登录如何配置? 5. linux环境下H ...

  8. Hadoop1.0.4伪分布式安装

    前言: 目前,学习hadoop的目的是想配合其它两个开源软件Hbase(一种NoSQL数据库)和Nutch(开源版的搜索引擎)来搭建一个知识问答系统,Nutch从指定网站爬取数据存储在Hbase数据库 ...

  9. arcsde10.0 for oracle11g 分布式安装教程

    [操作系统] oracle :windows server 2008ArcSDE:win7[数据库版本]  Oracle 11g [ArcSDE版本]  ArcSDE 10.0 1.在要安装ArcSD ...

  10. Hadoop开发第4期---分布式安装

    一.复制虚拟机 由于Hadoop的集群安装需要多台机器,由于条件有限,我是用虚拟机通过克隆来模拟多台机器,克隆方式如下图所示

随机推荐

  1. Python之美[从菜鸟到高手]--NotImplemented小析

    今天写代码时无意碰到NotImplemented,我一愣.难道是NotImplementedError的胞弟,所以略微研究了一下. NotImplemented故名思议.就是"未实现&quo ...

  2. BZOJ 3922 - Karin的弹幕

    Karin的弹幕 Problem's Link ---------------------------------------------------------------------------- ...

  3. 【BZOJ】1642: [Usaco2007 Nov]Milking Time 挤奶时间(dp)

    http://www.lydsy.com/JudgeOnline/problem.php?id=1642 果然没能仔细思考是不行的.. 以后要静下心来好好想,不要认为不可做..... 看了题解... ...

  4. ie设置ActiveX控件不提示

    ie设置自动允许activex: 对安全设置-受信任的站点区域-对未标记为可安全执行脚本的ActiveX控件初始化并执形脚本(启用)

  5. iOS自动化测试需求实现(iOS按键精灵类似)

    需求分析: 作为以需求为驱动的IT公司,有再奇怪的需求都不奇怪,所以“24小时循测第三方应用”这样的需求也可以接受.业务需求重点为: 1.24小时循测 2.无人值守,自动完成 3.自动界面操作(点击. ...

  6. hdu 2527:Safe Or Unsafe(数据结构,哈夫曼树,求WPL)

    Safe Or Unsafe Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)To ...

  7. (转)Python中的random模块

    Python中的random模块用于生成随机数.下面介绍一下random模块中最常用的几个函数. random.random random.random()用于生成一个0到1的随机符点数: 0 < ...

  8. HttpModule,HttpContext,HttpHandler

    http://www.cnblogs.com/wujy/tag/ASP.NET%E5%9F%BA%E7%A1%80/ http://www.th7.cn/Program/net/2011/12/26/ ...

  9. hammer.js移动端手势库

    hammer.js 是一个多点触摸手势库,能够为网页加入Tap.Double Tap.Swipe.Hold.Pinch.Drag等多点触摸事件,免去自己监听底层touchstart.touchmove ...

  10. Django学习笔记第五篇--实战练习一--查询数据库并操作cookie

    一.启动项目: django-admin start mysite1 cd mysite1 python manage.py startapp loginapp 根据上文敲命令就可以创建好了一个项目结 ...