centos7安装分布式hadoop

1 场景

1.1 目的

centos7环境下安装分布式hadoop。hadoop版本:2.7.1。

1.2 准备工作

(1)操作系统版本

centos7.3.1611

(2)服务器主从

192.168.1.11 master
192.168.1.12 slave1
192.168.1.13 slave2

主从部署,参见文章:https://www.jianshu.com/p/4c145367208b

(3)JDK版本

JDK版本:1.8

JDK1.8安装,参见文章:https://www.jianshu.com/p/0b9467edf04d

(4)创建相关目录

主节点和从节点,均需创建如下目录:

hadoop程序目录:

mkdir /usr/local/dsj

hadoop数据目录:

mkdir /home/hadoop/hadoop
mkdir /home/hadoop/hadoop/data
mkdir /home/hadoop/hadoop/name
mkdir /home/hadoop/hadoop/tmp

2 安装master

总体顺序是,先将master节点安装配置好,然后将对应的文件拷贝到从节点服务器(slave1/slave2)。

以下均在主节点服务器上操作。

2.1 下载解压

下载地址:

https://archive.apache.org/dist/hadoop/common/hadoop-2.7.1/hadoop-2.7.1.tar.gz

下载后,解压到目录/usr/local/dsj/hadoop-2.7.1(此目录为安装目录)

tar -zxvf hadoop-2.7.1.tar.gz -C /usr/local/dsj

2.2 配置环境变量

(1)打开配置文件

vi /etc/profile

(2)文件末尾增加配置

export HADOOP_HOME=/usr/local/dsj/hadoop-2.7.1
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

(2)让配置生效

source /etc/profile

2.3 hdfs配置

(1)更改核心配置文件

vi /usr/local/dsj/hadoop-2.7.1/etc/hadoop/core-site.xml

增加如下配置:

<!-- hdfs通信地址 -->
<property>
    <name>fs.default.name</name>
    <value>hdfs://master:9000</value>
</property>
<!-- hadoop运行时产生文件的存储路径 -->
<property>
    <name>hadoop.tmp.dir</name>
    <value>/home/hadoop/hadoop/tmp</value>
</property>

(2)修改hdfs配置文件

vi /usr/local/dsj/hadoop-2.7.1/etc/hadoop/hdfs-site.xml

添加如下内容:

<property>
     <name>dfs.name.dir</name>
     <value>/home/hadoop/hadoop/name</value>
     <description>namenode上存储hdfs名字空间元数据 </description>
</property>
<property>
    <name>dfs.data.dir</name>
    <value>/home/hadoop/hadoop/data</value>
    <description>datanode上数据块的物理存储位置</description>
</property>
<!-- 设置hdfs副本数量 -->
<property>
    <name>dfs.replication</name>
    <value>1</value>
</property>
<property>
    <name>dfs.http.address</name>
    <value>master:50070</value>
</property>

(3)修改hadoop-env.sh

vi /usr/local/dsj/hadoop-2.7.1/etc/hadoop/hadoop-env.sh

原配置:export JAVA_HOME=${JAVA_HOME}
更改为JDK绝对路径:

export JAVA_HOME=/usr/local/dsj/jdk1.8.0_121

2.4 yarn配置

(1)配置mapred-site.xml

复制配置文件:

cd /usr/local/dsj/hadoop-2.7.1/etc/hadoop
cp mapred-site.xml.template mapred-site.xml

打开配置文件:

vi /usr/local/dsj/hadoop-2.7.1/etc/hadoop/mapred-site.xml

文件中增加配置:

<!-- 通知框架MR使用YARN -->
<property>
    <name>mapreduce.framework.name</name>
    <value>yarn</value>
</property>

(2)配置yarn-site.xml

打开配置文件:

vi /usr/local/dsj/hadoop-2.7.1/etc/hadoop/yarn-site.xml

增加如下配置:

<!-- reducer取数据的方式是mapreduce_shuffle -->
<property>
    <name>yarn.nodemanager.aux-services</name>
    <value>mapreduce_shuffle</value>
</property>
<!--RM的hostname-->
<property>
    <name>yarn.resourcemanager.hostname</name>
    <value>master</value>
</property>

2.5 配置从节点

vi /usr/local/dsj/hadoop-2.7.1/etc/hadoop/slaves

更改配置如下:

slave1
slave2

2.6 拷贝主节点文件到从节点

(1)主节点拷贝hadoop文件到从节点

scp -r /usr/local/dsj/hadoop-2.7.1/ slave1:/usr/local/dsj/
scp -r /usr/local/dsj/hadoop-2.7.1/ slave2:/usr/local/dsj/

(2)主节点拷贝环境变量到从节点

scp /etc/profile slave1:/etc/profile
scp /etc/profile slave2:/etc/profile

3 配置slaver

以下均在从节点服务器上操作。

在slave1、slave2节点上执行如下操作,使从主节点拷贝到从节点上的环境变量生效:

source /etc/profile

4 格式化节点

master节点上执行操作,格式化节点:

/usr/local/dsj/hadoop-2.7.1/bin/hdfs namenode -format

5 测试

(1)启动hdfs

start-dfs.sh

(2)启动yarn

start-yarn.sh

6 优化

(1)core-site.xml增加配置

<!-- 流文件的缓冲区 128K(默认4K) -->
<property>
    <name>io.file.buffer.size</name>
    <value>131072</value>
</property>

(2)hdfs-site.xml增加配置

<!-- 缺省文件块大小128MB(默认64M)-->
<property>
    <name>dfs.block.size</name>
    <value>134217728</value>
</property>
<!-- NameNode 节点上面为处理datanode节点来来气的远程调用的服务线程数量(默认10) -->
<property>
    <name>dfs.namenode.handler.count</name>
    <value>64</value>
</property>

(3)mapred-site.xml增加配置

<!-- Map任务的中间结果是否进行压缩,减少网络带宽压力-->
<property>
    <name>mapreduce.map.output.compress</name>
    <value>true</value>
</property>
<!-- 压缩方式 -->
<property>
    <name>mapreduce.map.output.compress.codec</name>
    <value>org.apache.hadoop.io.compress.SnappyCodec</value>
</property>
<!-- map任务需要的内存大小-->
<property>
    <name>mapreduce.map.memory.mb</name>
    <value>2048</value>
</property>
<!-- map任务需要的虚拟机核数(默认1) -->
<property>
    <name>mapreduce.map.cpu.vcores</name>
    <value>1</value>
</property>
<!-- reduce需要的内存大小-->
<property>
    <name>mapreduce.reduce.memory.mb</name>
    <value>2048</value>
</property>
<!-- reduce需要的内存核数(默认1) -->
<property>
    <name>mapreduce.reduce.cpu.vcores</name>
    <value>1</value>
</property>
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,088评论 5 459
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,715评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,361评论 0 319
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,099评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 60,987评论 4 355
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,063评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,486评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,175评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,440评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,518评论 2 309
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,305评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,190评论 3 312
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,550评论 3 298
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,880评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,152评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,451评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,637评论 2 335