beat365体育亚洲网页版-网上365体育买球波胆提现-365BETAPP官网

简约 · 精致 · 专注内容

Hadoop 集群部署

Hadoop 集群部署

Hadoop各个功能模块的理解

零. 概述

HDFS模块

HDFS负责大数据的存储,通过将大文件分块后进行分布式存储方式,突破了服务器硬盘大小的限制,解决了单台机器无法存储大文件的问题,HDFS是个相对独立的模块,可以为YARN提供服务,也可以为HBase等其他模块提供服务。

YARN模块

YARN是一个通用的资源协同和任务调度框架,是为了解决Hadoop1.x中MapReduce里NameNode负载太大和其他问题而创建的一个框架。YARN是个通用框架,不止可以运行MapReduce,还可以运行Spark、Storm等其他计算框架。

MapReduce模块

MapReduce是一个计算框架,它给出了一种数据处理的方式,即通过Map阶段、Reduce阶段来分布式地流式处理数据。它只适用于大数据的离线处理,对实时性要求很高的应用不适用。

Hadoop本地模式安装/Hadoop伪分布式模式安装/完全分布式安装

Hadoop本地模式安装,只适用与用于本地开发调试,或者快速安装体验Hadoop,这部分做简单的介绍。

Hadoop伪分布式模式安装,学习Hadoop一般是在伪分布式模式下进行。这种模式是在一台机器上各个进程上运行Hadoop的各个模块,伪分布式的意思是虽然各个模块是在各个进程上分开运行的,但是只是运行在一个操作系统上的,并不是真正的分布式。

完全分布式安装才是生产环境采用的模式,Hadoop运行在服务器集群上,生产环境一般都会做HA,以实现高可用。

一. 集群规划

代码语言:javascript复制 192.168.77.128

192.168.77.130

192.168.77.134二. 基础设置

1. 关闭防火墙

代码语言:javascript复制service iptables status #查看防火墙状态

service iptables start #立即开启防火墙,但是重启后失效。

service iptables stop #立即关闭防火墙,但是重启后失效。

chkconfig iptables on #开启防火墙,重启后生效。

chkconfig iptables off #关闭防火墙,重启后生效。 2. 修改主机名

代码语言:javascript复制vi /etc/sysconfig/network

hadoop000 1. hosts配置

代码语言:javascript复制vi /etc/hosts

192.168.77.128 hadoop000

192.168.77.130 hadoop001

192.168.77.134 hadoop002 2. 免密登陆

代码语言:javascript复制ssh-keygen -t rsa

ssh-copy-id -i ~/.ssh/id_rsa.pub hadoop000

ssh-copy-id -i ~/.ssh/id_rsa.pub hadoop001

ssh-copy-id -i ~/.ssh/id_rsa.pub hadoop002 3. jdk安装

代码语言:javascript复制tar -zxvf jdk-8u151-linux-x64.tar.gz

mv ./jdk1.8.0_151 /usr/local/jdk1.8

vi /etc/profile

JAVA_HOME=/usr/local/jdk1.8/

JAVA_BIN=/usr/local/jdk1.8/bin

JRE_HOME=/usr/local/jdk1.8/jre

PATH=$PATH:/usr/local/jdk1.8/bin:/usr/local/jdk1.8/jre/bin

CLASSPATH=/usr/local/jdk1.8/jre/lib:/usr/local/jdk1.8/lib:/usr/local/jdk1.8/jre/lib/charsets.jar

export PATH=$PATH:/usr/local/mysql/bin/

source /etc/profile

java -version 4. ntp安装

代码语言:javascript复制yum install -y ntp

ntpdate -u ntp.api.bz 5. 基础设置同步到其他节点

代码语言:javascript复制rsync -av /usr/local/jdk1.8 hadoop001:/usr/local

rsync -av /usr/local/jdk1.8 hadoop002:/usr/local

rsync -av /etc/profile hadoop001:/etc/profile

rsync -av /etc/profile hadoop002:/etc/profile 6. 禁用 selinux(optional)

代码语言:javascript复制vi /etc/sysconfig/selinux

SELINUX=disabled 7. 添加hadoop用户(optional)

代码语言:javascript复制useradd hadoop

passwd hadoop

三. 集群安装

1. hadoop下载解压

代码语言:javascript复制wget http://archive.cloudera.com/cdh5/cdh/5/hadoop-2.6.0-cdh5.7.0.tar.gz

tar -zxvf hadoop-2.6.0-cdh5.7.0.tar.gz -C /usr/local/ 2. hadoop 中hadoop-env.sh 配置java_home的配置

代码语言:javascript复制 vi etc/hadoop/hadoop-env.sh

JAVA_HOME=/usr/local/jdk1.8/ 3. hadoop_home配置

代码语言:javascript复制 vim ~/.bash_profile

export HADOOP_HOME=/usr/local/hadoop-2.6.0-cdh5.7.0/

export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH

source ~/.bash_profile 4. core-site.xml,hdfs-site.xml

代码语言:javascript复制vi core-site.xml

fs.default.name

hdfs://hadoop000:8020 # 指定默认的访问地址以及端口号

代码语言:javascript复制vi hdfs-site.xml

dfs.namenode.name.dir

/data/hadoop/app/tmp/dfs/name # namenode临时文件所存放的目录

dfs.datanode.data.dir

/data/hadoop/app/tmp/dfs/data # datanode临时文件所存放的目录

代码语言:javascript复制mkdir -p /data/hadoop/app/tmp/dfs/name

mkdir -p /data/hadoop/app/tmp/dfs/data 6. yarn-site.xml,mapred-site.xml

代码语言:javascript复制vi yarn-site.xml

yarn.nodemanager.aux-services

mapreduce_shuffle

yarn.resourcemanager.hostname

hadoop000

代码语言:javascript复制 cp mapred-site.xml.template mapred-site.xml代码语言:javascript复制vi mapred-site.xml

mapreduce.framework.name

yarn

7. slaves配置

代码语言:javascript复制vi slaves

hadoop000

hadoop001

hadoop002 8. 以上同步到其他节点

代码语言:javascript复制 rsync -av /usr/local/hadoop-2.6.0-cdh5.7.0/ hadoop001:/usr/local/hadoop-2.6.0-cdh5.7.0/

rsync -av /usr/local/hadoop-2.6.0-cdh5.7.0/ hadoop002:/usr/local/hadoop-2.6.0-cdh5.7.0/

rsync -av ~/.bash_profile hadoop001:~/.bash_profile

rsync -av ~/.bash_profile hadoop002:~/.bash_profile

source .bash_profile

mkdir -p /data/hadoop/app/tmp/dfs/name

mkdir -p /data/hadoop/app/tmp/dfs/data

source .bash_profile

mkdir -p /data/hadoop/app/tmp/dfs/name

mkdir -p /data/hadoop/app/tmp/dfs/data四. 集群运行

单服务启动和集群启动,俩者二选一

1. 集群启动

1. 在hadoop000上执行 namenode 格式化

代码语言:javascript复制hdfs namenode -format 2. 集群启动

代码语言:javascript复制start-all.sh

stop-all.sh #关闭 hdfs 启动:

代码语言:javascript复制namenode:

hadoop-daemon.sh start namenode

datanode:

hadoop-daemon.sh start datanode

SecondaryNameNode

hadoop-daemon.sh start secondarynamenode yarn 启动:

代码语言:javascript复制resourcemanager

yarn-daemon.sh start resourcemanager

nodemanager

yarn-daemon.sh start nodemanager 3. 查看进程

代码语言:javascript复制jps

start-dfs.sh

start-yarn.sh

yarn-daemon.sh start resourcemanager 2. 单服务启动

代码语言:javascript复制1. zk启动

./zkServer.sh start

2. jn启动

sbin/hadoop-daemons.sh start journalnode

3. zkfc格式化

hdfs zkfc -formatZK

4. namenode 格式化

hdfs namenode -format

5. namenode启动

hadoop-daemon.sh start namenode

5.1 启动standby namenode

hdfs namenode -bootstrapStandby #把NameNode的数据同步到hadoop02上

hadoop-daemon.sh start namenode #启动备用的namenode

6. datanode启动

hadoop-daemons.sh start datanode

7. yarn启动

start-yarn.sh

8. ZKFC启动

hadoop01:

hadoop-daemon.sh start zkfc

hadoop02

hadoop-daemon.sh start zkfc 8. yarn启动:

代码语言:javascript复制1. Resourcemanager启动

yarn-daemon.sh start resourcemanager

2. nodemanager启动

yarn-daemon.sh start nodemanager 9. 停止服务

代码语言:javascript复制1. sbin/hadoop-daemon.sh stop namenode

2. sbin/hadoop-daemon.sh stop datanode

3. sbin/yarn-daemon.sh stop resourcemanager

4. sbin/yarn-daemon.sh stop nodemanager代码语言:javascript复制yarn:

sbin/stop-yarn.sh

sbin/start-yarn.sh 3. hadoop访问:192.168.77.128:50070

4. yarn访问:192.168.77.128:8088

高可用:

六. 高可用需要配置zk

3. zk集群搭建

4. core-site.xml 补充配置 zk信息

七. 本地模式部署

1. 下载解压

2. /etc/profile配置java_home,

3. conf/hadoop-env.sh 配置java_home

4. 启动

五. hdfs命令

代码语言:javascript复制 1. hdfs dfs -ls /

2. hdfs dfs -mkdir /data

3. hdfs dfs -put ./test.sh /data

4. hdfs dfs -text /browserout/part-r-00000

5. hdfs dfs -cat /demo1/core-site.xml

6. hdfs dfs -get /demo1/core-site.xml

hadoop fs -get /user/trunk/test.txt . (复制到本地当前目录下)

hadoop fs -cat /user/trunk/test.txt

hadoop fs -tail /user/trunk/test.txt (查看最后1000字节)

hadoop fs -rm /user/trunk/test.txt

hadoop fs -rmdir /user/trunk

hadoop fs -help ls (查看ls命令的帮助文档) 4. jar包执行:

代码语言:javascript复制hadoop jar ./hadoop-mapreduce-examples-2.6.0-cdh5.7.0.jar pi 3 4

相关推荐

PDF编辑攻略:如何在pdf上加入图片?简单5招搞定(精选)
CMIS基本概念

CMIS基本概念

beat365体育亚洲网页版 09-14
进化或毁灭:诺基亚的陨落和苹果的崛起

进化或毁灭:诺基亚的陨落和苹果的崛起

beat365体育亚洲网页版 10-03
请安的解释及意思

请安的解释及意思

365BETAPP官网 10-29
礼物盒里面的灯串可以亮多久?

礼物盒里面的灯串可以亮多久?

beat365体育亚洲网页版 10-09
LOLmad是哪个赛区的

LOLmad是哪个赛区的

365BETAPP官网 07-24