Hadoop 分布式集群搭建 & 配置

一. 安装Java

Java下载

官网下载合适的jdk,本人使用的是jdk-7u79-linux-x64.tar.gz,接下来就以该版本的jdk为例,进行Java环境变量配置

创建Java目录

在/usr/local目录下创建java目录,用于存放解压的jdk

cd /usr/local
mkdir java

解压jdk

进入java目录

cd java
tar zxvf jdk-7u79-linux-x64.tar.gz

配置环境变量

  1. 编辑profile文件

    cd /etc
    vim profile
    
  2. 在文件末尾追加以下配置
    export JAVA_HOME=/usr/local/java/jdk1.7.0_79
    export JRE_HOME=/usr/local/java/jdk1.7.0_79/jre
    export PATH=$PATH:/usr/local/java/jdk1.7.0_79/bin
    export CLASSPATH=./:/usr/local/java/jdk1.7.0_79/lib:/usr/local/jdk7/jdk1.7.0_79/jre/lib
    
  3. 刷新profile文件
    source /etc/profile
    

二. 安装Hadoop

下载Hadoop

Hadoop Down Page
根据需求选择合适的版本进行下载,本人下载的是hadoop-2.7.3.tar.gz,接下来就以该版本的hadoop为例,进行安装&配置

创建Hadoop目录

在用户目录下创建hadoop目录,用于存放解压的hadoop

cd /home/username
mkdir hadoop

[注]
username为用户名,需要根据实际情况决定

配置Hadoop Env

  1. 编辑hadoop-env.sh文件
cd /home/username/hadoop/hadoop-2.7.3/etc/hadoop/
chmod +x hadoop-env.sh
vim hadoop-env.sh
  1. 修改其中的export JAVA_HOME=${JAVA_HOME}export JAVA_HOME=/usr/local/java/jdk1.7.0_79
  2. 执行hadoop-env.sh
./hadoop-env.sh

配置 core-site.xml

vim core-site.xml

指定HDFS的NameNode地址,以及指定Hadoop运行时产生文件的存储目录

<configuration>

  <property>
    <name>fs.default.name</name>
    <value>hdfs://hadoop-0:9000</value>
  </property>

  <property>
    <name>io.file.buffer.size</name>
    <value>131072</value>
  </property>

  <property>
    <name>hadoop.tmp.dir</name>
    <value>file:/usr/local/hadoop/tmp</value>
  </property> 

</configuration>

配置 hdfs-site.xml

vim hdfs-site.xml

指定HDFS副本的数量

<configuration>

  <property>
    <name>dfs.replication</name>
    <value>2</value>
  </property>

  <property>
    <name>dfs.name.dir</name>
    <value>file:/usr/local/hadoop/hdfs/name</value>
  </property>

 <property>
    <name>dfs.data.dir</name>
    <value>file:/usr/local/hadoop/hdfs/data</value>
  </property>

  <property>
    <name>dfs.namenode.secondary.http-address</name>
    <value>hadoop-0:9001</value>
  </property>

  <property>
    <name>dfs.webhdfs.enabled</name>
    <value>true</value>
  </property>

</configuration>

配置 mapred-site.xml

1.重命名

mv mapred-site.xml.template mapred-site.xml
vim mapred-site.xml

2.配置如下

<configuration>

  <property>
  <name>mapreduce.framework.name</name>
    <value>yarn</value>
  </property>         

  <property>
    <name>mapreduce.jobhistory.address</name>
    <value>hadoop-0:10020</value>
  </property>        

  <property>
    <name>mapreduce.jobhistory.webapp.address</name>
    <value>hadoop-0:19888</value>
  </property>     

</configuration>

配置 yarn-site.xml

<configuration>

  <property>
    <name>yarn.nodemanager.aux-services</name>
    <value>mapreduce_shuffle</value>
  </property>      

  <property>
    <name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
    <value>org.apache.hadoop.mapred.ShuffleHandler</value>
  </property>        

  <property>
    <name>yarn.resourcemanager.address</name>
    <value>hadoop-0:8032</value>
  </property>       

  <property>
    <name>yarn.resourcemanager.scheduler.address</name>
    <value>hadoop-0:8030</value>
  </property>       

  <property>
    <name>yarn.resourcemanager.resource-tracker.address</name>
    <value>hadoop-0:8031</value>
  </property>      

  <property>
    <name>yarn.resourcemanager.admin.address</name>
    <value>hadoop-0:8033</value>
  </property>     

  <property>
     <name>yarn.resourcemanager.webapp.address</name>
     <value>hadoop-0:8088</value>
  </property>     

</configuration>

配置masters

vim masters

#内容填写
hadoop-0

配置masters

vim slaves

#内容填写
hadoop-1
hadoop-2
hadoop-3
hadoop-4
hadoop-5

将以上配置完的hadoop复制到每台机器上,然后进行接下来的操作

格式化namenode,只格式一次就行

hadoop namenode -format
cd /hadoop/hadoop-2.7.3/sbin
./start-all.sh
#根据提示输入密码,如果提示Java_Home,表示没修改hadoop-env.sh中的JAVA_HOME路径,修改完后需要再次执行hadoop-env.sh

#console
This script is Deprecated. Instead use start-dfs.sh and start-yarn.sh
Starting namenodes on [hadoop-0]
[email protected]'s password:
hadoop-0: starting namenode, logging to /usr/local/hadoop/hadoop-2.7.3/logs/hadoop-intel-namenode-hadoop-0.out
hadoop-4: starting datanode, logging to /usr/local/hadoop/hadoop-2.7.3/logs/hadoop-intel-datanode-hadoop-4.out
hadoop-1: starting datanode, logging to /usr/local/hadoop/hadoop-2.7.3/logs/hadoop-intel-datanode-hadoop-1.out
hadoop-2: starting datanode, logging to /usr/local/hadoop/hadoop-2.7.3/logs/hadoop-intel-datanode-hadoop-2.out
hadoop-5: starting datanode, logging to /usr/local/hadoop/hadoop-2.7.3/logs/hadoop-intel-datanode-hadoop-5.out
hadoop-3: starting datanode, logging to /usr/local/hadoop/hadoop-2.7.3/logs/hadoop-intel-datanode-hadoop-3.out
Starting secondary namenodes [hadoop-0]
[email protected]'s password:
hadoop-0: starting secondarynamenode, logging to /usr/local/hadoop/hadoop-2.7.3/logs/hadoop-intel-secondarynamenode-hadoop-0.out
starting yarn daemons
starting resourcemanager, logging to /usr/local/hadoop/hadoop-2.7.3/logs/yarn-intel-resourcemanager-hadoop-0.out
hadoop-4: starting nodemanager, logging to /usr/local/hadoop/hadoop-2.7.3/logs/yarn-intel-nodemanager-hadoop-4.out
hadoop-5: starting nodemanager, logging to /usr/local/hadoop/hadoop-2.7.3/logs/yarn-intel-nodemanager-hadoop-5.out
hadoop-1: starting nodemanager, logging to /usr/local/hadoop/hadoop-2.7.3/logs/yarn-intel-nodemanager-hadoop-1.out
hadoop-2: starting nodemanager, logging to /usr/local/hadoop/hadoop-2.7.3/logs/yarn-intel-nodemanager-hadoop-2.out
hadoop-3: starting nodemanager, logging to /usr/local/hadoop/hadoop-2.7.3/logs/yarn-intel-nodemanager-hadoop-3.out

Test

1.命令jps

    jps

2.控制台输出一下内容表示安装配置成功

# Master上打印输出
7398 NameNode
6898 ResourceManager
7732 SecondaryNameNode
8336 Jps

#Slave上打印输出
5505 Jps
5121 NodeManager
4992 DataNode

测试

打开网页http://localhost:8088/cluster可以正常查看,hostaname根据实际情况决定,比如我的是172.16.1.23

向hadoop集群系统提交第一个mapreduce任务(wordcount)

hdfs dfs -mkdir -p /data/input    #在虚拟分布式文件系统上创建一个测试目录/data/input
hdfs dfs -put README.txt  /data/input   #将当前目录下的README.txt 文件复制到虚拟分布式文件系统中
hdfs dfs -ls /data/input    #查看文件系统中是否存在我们所复制的文件

#console
Found 1 items
-rw-r--r--   2 intel supergroup         44 2017-03-27 16:24 /data/input/readme.txt

向hadoop提交单词统计任务

hadoop jar hadoop-2.7.3/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.3.jar wordcount /data/input /data/output/result

#console
17/03/27 16:30:06 INFO client.RMProxy: Connecting to ResourceManager at hadoop-0/172.16.1.23:8032
17/03/27 16:30:07 INFO input.FileInputFormat: Total input paths to process : 1
.
.
.

#查看result
hdfs dfs -cat /data/output/result/part-r-00000 

#console
!	1
Hi!	1
I	1
a	1
am	1
file	1
for	1
hadoop	1
mapreduce	1
test	1

主要事项!!

需要将Hadoop进行用户授权

sudo chown -R group:username hadoop/
sudo chown -R 用户名@用户组 目录名

原文:大专栏  Hadoop 分布式集群搭建 & 配置

原文地址:https://www.cnblogs.com/chinatrump/p/11584799.html

时间: 2024-12-18 15:38:21

Hadoop 分布式集群搭建 & 配置的相关文章

Hadoop分布式集群搭建完全详细教程

Hadoop分布式集群环境搭建步骤如下 实验环境: 系统:win7 内存:8G(因要开虚拟机,内存建议不低于8G) 硬盘:建议固态 虚拟机:VMware 12 Linux:Centos 7 jdk1.7.0_67 hadoop-2.5.0.tar.gz 1.安装VMware虚拟机环境2.安装Centos操作系统3.修改主机名配置网络4.配置ssh无密码登录5.上传jdk配置环境变量6.上传hadoop配置环境变量7.修改hadoop配置文件8.格式化namenode9.启动hadoop并测试1安

Hadoop分布式集群搭建

Linux安装,环境搭建: 1.安装VM 2.安装CentOS_6.5虚拟机,硬盘空间设置为10G 3.设置网络连接:选择VM-编辑-虚拟网络编辑器-更改设置,选择名称VMnet8移除网络,再添加VMnet8网络,选择NAT模式,点击应用 4.设置虚拟机网络连接:右击虚拟机右下角网络适配器-设置-网络适配器,先选择桥接模式,再选择NAT模式,对IP网段进行自动获取 5.设置虚拟机IP地址,用root用户:cd /etc/sysconfig/network-scripts/,vim ifcfg-e

教你玩转Hadoop分布式集群搭建,进击大数据

yuuuqw淌靠拘心重瞻伊米志顺http://blog.sina.com.cn/s/blog_17bd9025e0102x97r.htmlm2g4qb晕刚颇即蒲乘啬捞泌窒http://blog.sina.com.cn/s/blog_170e51b9a0102y3tz.htmla6wasu颖掀痘悦匝抑道磺焉卸http://blog.sina.com.cn/s/blog_170e508f20102x363.htmlwsyswm滩丈绞液勾赘曝胁汗兄http://blog.sina.com.cn/s/b

Hadoop分布式集群搭建(三台虚拟机实践)

由于之前都在有道云笔记中记录:分享链接: http://note.youdao.com/noteshare?id=2b32a9edab38f6262354d1f8e4b0e748&sub=9D561AD084E449AB8A96B273DEF07CCC 原文地址:https://www.cnblogs.com/ailsa-mei/p/8734477.html

使用Docker在本地搭建Hadoop分布式集群

学习Hadoop集群环境搭建是Hadoop入门必经之路.搭建分布式集群通常有两个办法: 要么找多台机器来部署(常常找不到机器) 或者在本地开多个虚拟机(开销很大,对宿主机器性能要求高,光是安装多个虚拟机系统就得搞半天……). 那么,问题来了! 有没有更有可行性的办法? 提到虚拟化,Docker最近很是火热!不妨拿来在本地做虚拟化,搭建Hadoop的伪分布式集群环境.虽然有点大材小用,但是学习学习,练练手也是极好的. 文章比较长,建议先倒杯水,听我慢慢到来…… 先说一下我的思路吧: 先使用Dock

Hadoop全分布式集群搭建(详细)

一.准备物理集群.1.物理集群搭建方式.采用搭建3台虚拟机的方式来部署3个节点的物理集群.2.虚拟机准备.准备一个已近建好的虚拟机进行克隆.(建议为没进行过任何操作的)在要选择克隆的虚拟机上右击鼠标,管理,克隆.在弹出对话框中进行以下操作.(1).下一步.(2).选择虚拟机中的当前状态,下一步. (3).选择创建完整克隆,下一步.(4).输入虚拟机名称,下一步.(5).克隆完成.(6).按照上述步骤再创建一个虚拟机名称为slave02的.3.虚拟机网络配置.由于slave01和slave02虚拟

大数据系列之Hadoop分布式集群部署

本节目的:搭建Hadoop分布式集群环境 环境准备 LZ用OS X系统 ,安装两台Linux虚拟机,Linux系统用的是CentOS6.5:Master Ip:10.211.55.3 ,Slave Ip:10.211.55.4 各虚拟机环境配置好Jdk1.8(1.7+即可) 资料准备 hadoop-2.7.3.tar.gz 虚拟机配置步骤 以下操作都在两台虚拟机 root用户下操作,切换至root用户命令 配置Master hostname 为Master ; vi /etc/sysconfi

基于Hadoop的数据分析综合管理平台之Hadoop、HBase完全分布式集群搭建

能够将热爱的技术应用于实际生活生产中,是做技术人员向往和乐之不疲的事. 现将前期手里面的一个项目做一个大致的总结,与大家一起分享.交流.进步.项目现在正在线上运行,项目名--基于Hadoop的数据分析综合管理平台. 项目流程整体比较清晰,爬取数据(txt文本)-->数据清洗-->文本模型训练-->文本分类-->热点话题发现-->报表"实时"展示,使用到的技术也是当今互联网公司常用的技术:Hadoop.Mahout.HBase.Spring Data Had

Spark入门 - 1 搭建Hadoop分布式集群

安装Ubuntu系统 不论是通过虚拟机方式还是直接在物理机上安装Ubuntu系统,网上都有丰富的教程,此处不再赘述. 为了方便起见,此处设置的机器名最好与书本的设置一致:Master.Slave1和Slave2. 配置root用户登录 这里有一步与普通教程不同.在安装好系统,重启之后,完成了相关配置.可以进行这一步,设置使用root用户登录,方便以后多个服务器相互操作.如下所示. 为了简化权限问题,需要以root用户的身份登录使用Ubuntu系统.而在默认情况下,Ubuntu没有开启root用户