文档章节

CentOS6.5安装Hadoop2.7.1

Johnny_feng
 Johnny_feng
发布于 2015/11/16 14:09
字数 1306
阅读 870
收藏 3
点赞 1
评论 0

一、软件准备

下载Hadoop  http://apache.fayea.com/hadoop/common/hadoop-2.7.1/hadoop-2.7.1.tar.gz

下载JDK http://download.oracle.com/otn-pub/java/jdk/8u66-b17/jdk-8u66-linux-x64.tar.gz


二、服务器准备(三台服务器,最好4台)

最好4台服务器,1台namenode,3台datanode(hadoop默认副本数为3),如果空余的话可以加一个secondnode(namenode的备用节点,据说已经通过zookper实现了热备,这个有待考证。)

准备三台服务器:

    角色                              IP               主机名

    Namenode     192.168.63.227     NameNode

    Datanode       192.168.63.202          node1

    Datanode        192.168.63.203         node2

三、服务器环境准备(每台服务器都执行)

1、每台机器都同步时间

 ntpdate time.windows.com

2、每台机器都关闭iptables、关闭selinux    

service iptables stop;chkconfig iptables off
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/sysconfig/selinux; setenforce 0

3、每台服务器都修改/etc/hosts文件

    增加如下内容:

192.168.63.227     NameNode
192.168.63.202     node1
192.168.63.203     node2

4、每台服务器增加一个运行hadoop的用户(可选,测试环境可用root用户启动)

    

useradd hduser && echo "123456" | passwd --stdin hduser

5、每台服务器都配置java环境(这里用的是jdk-8.66,需jdk7以上)

tar xf jdk-8u66-linux-x64.tar.gz -C /usr/local/
vim /etc/profile.d/java.sh

        输入:            

JAVA_HOME=/usr/local/jdk1.8.0_66
PATH=$JAVA_HOME/bin:$PATH
export JAVA_HOME PATH
执行:
source /etc/profile.d/java.sh


    执行:java -version 查看java版本是否已经变成最新的。

6、每台服务器都配置Hadoop环境(这里使用的是Hadoop2.7.1,先不用安装Hadoop。)

   

vim /etc/profile.d/hadoop.sh

输入:            

HADOOP_HOME=/usr/local/hadoop
PATH=$HADOOP_HOME/bin:$PATH
PATH=$HADOOP_HOME/sbin:$PATH
export HADOOP_HOME PATH
执行:
source /etc/profile.d/hadoop.sh


四、配置NameNode到其他节点ssh免密登陆

    如果是非root用户启动Hadoop,这里配置指定用户的ssh免密登陆(例如上面增加了用户hduser,这里要配置hduser的免密登陆,需要先su - hduser)

ssh-keygen -t rsa -P ''(一路回车,不要输入密码)
ssh-copy-id -i ~/.ssh/id_rsa.pub root@namenode(这里要特别注意,也要配置到本机的ssh免密登陆)
ssh-copy-id -i ~/.ssh/id_rsa.pub root@node1
ssh-copy-id -i ~/.ssh/id_rsa.pub root@node2


五、配置Hadoop(在NameNode服务器上进行操作)

1、安装Hadoop

tar xf hadoop-2.7.1.tar.gz -C /usr/local/
ln -sv /usr/local/hadoop-2.7.1 /usr/local/hadoop
(如果以非root用户启动Hadoop,执行:chown -R hduser. /usr/local/hadoop-2.7.1/)


2、配置Hadoop

    创建目录:

cd /usr/local/hadoop
mkdir tmp && mkdir -p hdfs/data && mkdir -p hdfs/name

    修改配置文件:      

cd /usr/local/hadoop
vim etc/hadoop/core-site.xml

        在<configuration>中间插入:

<property>
<name>fs.defaultFS</name>
<value>hdfs://NameNode:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>file:///usr/local/hadoop/tmp</value>
</property>
<property>
<name>io.file.buffer.size</name>
<value>131702</value>
</property>


vim etc/hadoop/hdfs-site.xml

        在<configuration>中间插入:

<property>
<name>dfs.namenode.name.dir</name>
<value>file:///usr/local/hadoop/hdfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:///usr/local/hadoop/hdfs/data</value>
</property>
<property>
<name>dfs.replication</name>
<value>2</value>
</property>
<property>
<name>dfs.webhdfs.enabled</name>
<value>true</value>
</property>


        

cp etc/hadoop/mapred-site.xml.template etc/hadoop/mapred-site.xml
vim etc/hadoop/mapred-site.xml

        在<configuration>中间插入:

<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
<final>true</final>
</property>
<property>
      <name>mapreduce.jobtracker.http.address</name>
      <value>NameNode:50030</value>
</property>
<property>
<name>mapreduce.jobhistory.address</name>
<value>NameNode:10020</value>
</property>
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>NameNode:19888</value>
</property>
<property>
<name>mapred.job.tracker</name>
<value>http://NameNode:9001</value>
</property>

        

vim etc/hadoop/yarn-site.xml

        在<configuration>中间插入:

<property>
<name>yarn.resourcemanager.hostname</name>
<value>NameNode</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.nodemanager.auxservices.mapreduce.shuffle.class</name>
<value>org.apache.hadoop.mapred.ShuffleHandler</value>
</property>
<property>
<name>yarn.resourcemanager.address</name>
<value>NameNode:8032</value>
</property>
<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>NameNode:8030</value>
</property>
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>NameNode:8031</value>
</property>
<property>
<name>yarn.resourcemanager.admin.address</name>
<value>NameNode:8033</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>NameNode:8088</value>
</property>
<property>
<name>yarn.nodemanager.resource.memory-mb</name>
<value>2048</value>
</property>
<property>
<name>yarn.nodemanager.resource.cpu-vcores</name>
<value>1</value>
</property>


    修改etc/hadoop/slaves   

        删除localhost,把所有的datanode添加到这个文件中。

        增加:

            node1

            node2

六、复制haoop到其他节点

将NameNode服务器上的hadoop整个copy到另外2个节点上(NameNode节点执行)

scp -r hadoop-2.7.1 root@node1:/usr/local/
scp -r hadoop-2.7.1 root@node2:/usr/local/

在所有节点上执行:

 ln -sv /usr/local/hadoop-2.7.1 /usr/local/hadoop


七、格式化(namenode节点执行)

cd /usr/local/hadoop

#格式化namenode

hdfs namenode -format

 

八、启动Hadoop(namenode节点执行)

登陆到NameNode节点: 执行:start-all.sh(之前已经配置过hadoop的环境变量了,所以直接执行就可以。)

如果是非root用户启动,需要su - hduser,然后再执行 start-all.sh

停止:stop-all.sh

九、验证

在所有节点上执行:

    hadoop dfsadmin -report

出现类似下图结果:

[root@node1 ~]# hadoop dfsadmin -report
DEPRECATED: Use of this script to execute hdfs command is deprecated.
Instead use the hdfs command for it.

15/11/13 22:39:22 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
Configured Capacity: 37139136512 (34.59 GB)
Present Capacity: 27834056704 (25.92 GB)
DFS Remaining: 27833999360 (25.92 GB)
DFS Used: 57344 (56 KB)
DFS Used%: 0.00%
Under replicated blocks: 0
Blocks with corrupt replicas: 0
Missing blocks: 0
Missing blocks (with replication factor 1): 0

-------------------------------------------------
Live datanodes (2):

Name: 192.168.63.202:50010 (node1)
Hostname: node1
Decommission Status : Normal
Configured Capacity: 18569568256 (17.29 GB)
DFS Used: 28672 (28 KB)
Non DFS Used: 4652568576 (4.33 GB)
DFS Remaining: 13916971008 (12.96 GB)
DFS Used%: 0.00%
DFS Remaining%: 74.95%
Configured Cache Capacity: 0 (0 B)
Cache Used: 0 (0 B)
Cache Remaining: 0 (0 B)
Cache Used%: 100.00%
Cache Remaining%: 0.00%
Xceivers: 1
Last contact: Fri Nov 13 22:39:28 CST 2015


Name: 192.168.63.203:50010 (node2)
Hostname: node2
Decommission Status : Normal
Configured Capacity: 18569568256 (17.29 GB)
DFS Used: 28672 (28 KB)
Non DFS Used: 4652511232 (4.33 GB)
DFS Remaining: 13917028352 (12.96 GB)
DFS Used%: 0.00%
DFS Remaining%: 74.95%
Configured Cache Capacity: 0 (0 B)
Cache Used: 0 (0 B)
Cache Remaining: 0 (0 B)
Cache Used%: 100.00%
Cache Remaining%: 0.00%
Xceivers: 1
Last contact: Fri Nov 13 22:39:27 CST 2015

在namenode节点上执行命令:jps

[root@NameNode ~]# jps
7187 Jps
3493 NameNode
3991 SecondaryNameNode
4136 ResourceManager

在datanode节点上执行jps

[root@node1 ~]# jps
2801 NodeManager
3970 Jps
2698 DataNode

访问hadoop的web页面:

    http://namenode:8088
    http://namenode:50070


© 著作权归作者所有

共有 人打赏支持
Johnny_feng
粉丝 27
博文 52
码字总数 21459
作品 0
西城
部门经理
centos搭建hadoop2

第二篇隔了这么久,一个是因为有工作任务,第二个也是因为为了编译64位的hadoop2.7.1耽误了。到现在也不确定64位系统到底需不需要自己编译hadoop2,反正我编译了才安装成功的。 首先:先介绍...

任杰LL ⋅ 2016/04/19 ⋅ 0

windows系统通过eclipse远程MapReduce服务器

windows中安装hadoop 将hadoop-2.7.1.tar.gz文件解压到windows硬盘中(如:C:Program Fileshadoop-2.7.1)。 将hadoop2.7.1winbin文件夹中hadoop.dll和winutils.exe复制到上述安装目录的bin...

psp0001060 ⋅ 2017/08/09 ⋅ 0

一次bug死磕经历之Hbase堆内存小导致regionserver频繁挂掉

环境如下: Centos6.5 Apache Hadoop2.7.1 Apache Hbase0.98.12 Apache Zookeeper3.4.6 JDK1.7 Ant1.9.5 Maven3.0.5 最近在测Hbase的压缩,Hadoop安装了lzo和snappy,插入50条文本数据,每条......

九劫散仙 ⋅ 2016/01/06 ⋅ 0

Linux下安装Hadoop(2.7.1)详解及WordCount运行

一、引言   在完成了Storm的环境配置之后,想着鼓捣一下Hadoop的安装,网上面的教程好多,但是没有一个特别切合的,所以在安装的过程中还是遇到了很多的麻烦,并且最后不断的查阅资料,终于...

oO维尼熊Oo ⋅ 05/03 ⋅ 0

本地yum源搭建(包括httpd安装)

本地yum源搭建(包括httpd安装) 适用于服务器与外网隔离,或与外网连接速度慢,要使用yum安装某些包的情况。 CentOS本地源安装 1、下载CentOS的安装文件 从 http://vault.centos.org/ 下载与...

OttoWu ⋅ 2016/12/23 ⋅ 0

Hadoop2.7.1单机版安装教程

访问hadoop官网下载hadoop-2.7.1-src.tar.gz tar -zxvf hadoop-2.7.1-src.tar.gzcd hadoop-2.7.1-srcvi BUILDING.txt Requirements: * Unix System* JDK 1.7+* Maven 3.0 or later* Findbugs......

ordinance ⋅ 2015/10/26 ⋅ 0

CentOS6.5 64bit如何安装DNS服务dnsmasq加速网站访问

CentOS6.5 64bit如何安装DNS服务dnsmasq加速网站访问 技术奇客|ITGeeker2017-02-2037 阅读 DNS dnsmasq是个非常小巧的dns服务器,可以解决小范围的dns查询问题,建议内网终端不要超过50台主机...

技术奇客|ITGeeker ⋅ 2017/02/20 ⋅ 0

CentOS6.5环境下搭建Apache httpd服务器

CentOS6.5环境下搭建Apache httpd服务器 前期准备: 1、CentOS6.5虚拟系统; 2、CentOS6.5 IP地址:192.168.2.99 3、虚拟系统能上外网 下面我们就开始配置: 第一步:安装 首先我们需要把Apa...

推荐码发放 ⋅ 05/06 ⋅ 0

Docker虚拟化技术系列之-Docker安装配置

如何在Centos6.x系列服务器安装,默认docker只有在centos6.5以上机器才能使用yum直接安装,如果其他版本需要安装centos扩展源epel。 docker官方文档说要求Linux kernel至少3.8以上,一般为c...

wgkgood ⋅ 2017/02/21 ⋅ 0

redis分片存储集群的搭建

环境说明: twemproxy安装: [root@localhost src]# tar -zxf nutcracker-0.4.0.tar.gz [root@localhost src]# cd nutcracker-0.4.0[root@localhost nutcracker-0.4.0]# ./configure --prefi......

yacai1990 ⋅ 2016/07/11 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Nginx服务架构初探(四):nginx服务器的rewrite功能

nginx服务器的rewrite功能 1.nginx后端服务器组的配置 1>upstream name {…} name是给服务器组限的组名 2>server address [parameters]; address为服务器地址 parame......

余温灬未存 ⋅ 今天 ⋅ 0

layer.prompt使文本框为空的情况下也能点击确定

最近一直在使用layui,但是用到弹出层layer.prompt时,如果文本框是空的话点击确定没有反应,不能向下执行。 但是我又需要空值,看看我原来的代码。 123456789 layer.prompt...

孟飞阳 ⋅ 今天 ⋅ 0

Linux普通文件压缩工具gzip、Bzip2、xz

第六章 文件压缩和打包 6.1 压缩打包介绍 Linux环境常见压缩文件类型: .zip,.gz,.bz2,.xz, .tar.gz,.tar.bz2,.tar.xz 压缩打包的目的 方便文件传输 节省磁盘空间 减少传输花费的时间 ...

弓正 ⋅ 今天 ⋅ 0

移动弹窗基础知识浅析——IOS弹窗体系

摘要: 最为常见的【弹窗】反而是最“捉摸不定”的东西。各种类型的弹窗傻傻分不清楚,不知道在什么场景下应该用哪种弹窗。尤其是遇到“二次确认”等场景…… 因此,打算从头整理移动弹窗的基...

阿里云云栖社区 ⋅ 今天 ⋅ 0

zabbix短信报警统计以及报表展示

一、需求 由于我们的业务报警比较频繁,之前是针对每个报警进行具体处理,但是有时还会重复出现,或者后续处理有时忘记跟进等,因此进行报警短信的统计,可以针对一些问题与业务跟进,明确后...

o翡翠谷o ⋅ 今天 ⋅ 0

JNI 输出LOG

1、导入log头文件。在你使用的 .c/ .cpp 文件中,导入 log.h 头文件。 #include<android/log.h> 2、在android.mk 加上 LOCAL_LDLIBS := -llog 或 LOCAL_SHARED_LIBRARIES := liblog 3、定义L......

国仔饼 ⋅ 今天 ⋅ 0

主线程pthread_exit 作用

#include <iostream>#include <pthread.h>#include <unistd.h>using namespace std;#define NUM_THREADS 10void* say_hello(void* args){ int i = *((int*)args);/......

xxdd ⋅ 今天 ⋅ 0

崛起于Springboot2.X之Mybatis-xml方式操作mysql数据库(3)

序言:当第一篇讲道Mybatis的时候,只要使用过mybatis的java程序员100%都会知道这种方式,因为这是最广泛最全面的编写sql操作mysql数据库的方式,高级sql的编写往往通过xml方式,接下来进入正...

木九天 ⋅ 今天 ⋅ 2

移动弹窗基础知识浅析——IOS弹窗体系

摘要: 最为常见的【弹窗】反而是最“捉摸不定”的东西。各种类型的弹窗傻傻分不清楚,不知道在什么场景下应该用哪种弹窗。尤其是遇到“二次确认”等场景…… 因此,打算从头整理移动弹窗的基...

猫耳m ⋅ 今天 ⋅ 0

spring elasticsearch 2.4 date 日期

1.mappingPUT user_behavior { "mappings": { "user_behavior": { "properties": { "date": { "type": "createDate", ......

xiaomin0322 ⋅ 今天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部