Hadoop系列之(二):Hadoop集群部署

摘要:
1.Hadoop集群介绍Hadoop集群部署,就是以Clustermode方式进行部署。
1. Hadoop集群介绍

Hadoop集群部署,就是以Cluster mode方式进行部署。

Hadoop的节点构成如下:

HDFS daemon: NameNode, SecondaryNameNode, DataNode

YARN damones: ResourceManager, NodeManager, WebAppProxy

MapReduce Job History Server

2. 集群部署

本次测试的分布式环境为:Master 1台 (test166),Slave 1台(test167)

2.1 首先在各节点上安装Hadoop

安装方法参照Hadoop系列之(一):Hadoop单机部署

2.2 在各节点上设置主机名

# cat /etc/hosts
10.86.255.166 test166
10.86.255.167 test167

2.3 在各节点上设置SSH无密码登录

详细参照Hadoop系列之(一):Hadoop单机部署

2.4 设置Hadoop的环境变量

# vi /etc/profile
export HADOOP_HOME=/usr/local/hadoop-2.7.0
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_HDFS_HOME=$HADOOP_HOME
export YARN_HOME=$HADOOP_HOME
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
export YARN_CONF_DIR=$HADOOP_HOME/etc/Hadoop

让设置生效

# source /etc/profile

2.5 Hadoop设定

2.5.1 在Master节点的设定文件中指定Slave节点

# vi etc/hadoop/slaves
test167

2.5.2 Master,Slave所有节点共同设定

# vi etc/hadoop/core-site.xml
<configuration>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://test166:9000</value>
    </property>
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/usr/local/hadoop-2.7.0/tmp</value>
    </property>
</configuration>
# vi etc/hadoop/hdfs-site.xml
<configuration>
    <property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
</configuration>
# vi etc/hadoop/mapred-site.xml
<configuration>
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>
</configuration>

2.5.3 在各节点指定HDFS文件存储的位置(默认是/tmp)

Master节点: namenode

创建目录并赋予权限

# mkdir -p /usr/local/hadoop-2.7.0/tmp/dfs/name
# chmod -R 777 /usr/local/hadoop-2.7.0/tmp
# vi etc/hadoop/hdfs-site.xml
    <property>
        <name>dfs.namenode.name.dir</name>
        <value>file:///usr/local/hadoop-2.7.0/tmp/dfs/name</value>
    </property>

Slave节点:datanode

创建目录并赋予权限

# mkdir -p /usr/local/hadoop-2.7.0/tmp/dfs/data
# chmod -R 777 /usr/local/hadoop-2.7.0/tmp
# vi etc/hadoop/hdfs-site.xml
    <property>
        <name>dfs.datanode.data.dir</name>
        <value>file:///usr/local/hadoop-2.7.0/tmp/dfs/data</value>
    </property>

2.5.4 YARN设定

Master节点: resourcemanager

# vi etc/hadoop/yarn-site.xml
<configuration>
    <property>
        <name>yarn.resourcemanager.hostname</name>
        <value>test166</value>
    </property>
</configuration>

Slave节点: nodemanager

# vi etc/hadoop/yarn-site.xml
<configuration>
    <property>
        <name>yarn.resourcemanager.hostname</name>
        <value>test166</value>
    </property>
    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
    </property>
</configuration>

2.5.5 Master上启动job history server,Slave节点上指定

Slave节点:

# vi etc/hadoop/mapred-site.xml
    <property>
        <name>mapreduce.jobhistory.address</name>
        <value>test166:10020</value>
    </property>

2.5.6 格式化HDFS(Master,Slave)

# hadoop namenode -format

2.5.7 在Master上启动daemon,Slave上的服务会一起启动

启动HDFS

# sbin/start-dfs.sh

Hadoop系列之(二):Hadoop集群部署第1张

启动YARN

# sbin/start-yarn.sh

Hadoop系列之(二):Hadoop集群部署第2张

启动job history server

# sbin/mr-jobhistory-daemon.sh start historyserver

确认

Master节点:

# jps

Hadoop系列之(二):Hadoop集群部署第3张

Slave节点:

# jps

Hadoop系列之(二):Hadoop集群部署第4张

2.5.8 创建HDFS

# hdfs dfs -mkdir /user
# hdfs dfs -mkdir /user/test22

2.5.9 拷贝input文件到HDFS目录下

# hdfs dfs -put etc/hadoop /user/test22/input

查看

# hdfs dfs -ls /user/test22/input

2.5.10 执行hadoop job

# hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.0.jar grep /user/test22/input output 'dfs[a-z.]+'

确认执行结果

# hdfs dfs -cat output/*

Hadoop系列之(二):Hadoop集群部署第5张

3.

本次集群部署主要是为了测试验证,生产环境中的HA,安全等设定,接下来会进行介绍。

免责声明:文章转载自《Hadoop系列之(二):Hadoop集群部署》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇行者APP适配国外环境问题解决openxml(二) 添加页眉,页脚下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Flink on Yarn模式启动流程分析

此文已由作者岳猛授权网易云社区发布。 欢迎访问网易云社区,了解更多网易技术产品运营经验。 Flink On Yarn 架构 Paste_Image.png 前提条件首先需要配置YARN_CONF_DIR, HADOOP_CONF_DIR ,HADOOP_CONF_PATH其中一个用来确保Flink能够访问HDFS和Yarn的RM。 主要启动流程 1....

[大数据] hadoop高可用(HA)部署(未完)

一、HA部署架构   如上图所示,我们可以将其分为三个部分: 1.NN和DN组成Hadoop业务组件。浅绿色部分。 2.中间深蓝色部分,为Journal Node,其为一个集群,用于提供高可用的共享文件存储(元数据存储)。 3.蓝色部分为Zookeeper,提供自动NN切换。 在 hadoop全分布式安装 中,我们已经部署了一套全分布式的Hadoop集群,...

Hadoop配置项整理(hdfs-site.xml)

name value Description dfs.default.chunk.view.size 32768 namenode的http访问页面中针对每个文件的内容显示大小,通常无需设置。 dfs.datanode.du.reserved 1073741824 每块磁盘所保留的空间大小,需要设置一些,主要是给非hdfs文件使用,默认是不保留...

用Docker在一台笔记本电脑上搭建一个具有10个节点7种角色的Hadoop集群(上)-快速上手Docker

如果想在一台电脑上搭建一个多节点的Hadoop集群,传统的方式是使用多个虚拟机。但这种方式占用的资源比较多,一台笔记本能同时运行的虚拟机的数量是很有限的。这个时候我们可以使用Docker。Docker可以看做是一种轻量级的虚拟机,占用资源少,用起来和传统的虚拟机很像,使用的时候可以类比VMware或VirtualBox。本文不能让你精通Docker,但能让...

hadoop常见错误及解决办法整理

1:Shuffle Error: Exceeded MAX_FAILED_UNIQUE_FETCHES; bailing-out  Answer:程序里面需要打开多个文件,进行分析,系统一般默认数量是1024,(用ulimit -a可以看到)对于正常使用是够了,但是对于程序来讲,就太少了。修改办法:修改2个文件。       /etc/security...

Spark1.0.0 源码编译和部署包生成

问题导读:1、如何对Spark1.0.0源码编译?2、如何生成Spark1.0的部署包?3、如何获取包资源?Spark1.0.0的源码编译和部署包生成,其本质只有两种:Maven和SBT,只不过针对不同场景而已:Maven编译SBT编译IntelliJ IDEA编译(可以采用Maven或SBT插件编译),适用于开发人员部署包生成(内嵌Maven编译),适用...