hadoop的yarn和yarn zookeeperr是什么关系

2680人阅读
Hadoop(10)
1.修改Linux主机名,每台都得配置
vim /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=hadoop-server1
2.修改IP /etc/sysconfig/network-scripts/ifcfg-eth0
3.修改主机名和IP的映射关系
vim /etc/hosts
192.168.146.181 hadoop-server1
192.168.146.182 hadoop-server2
192.168.146.183 hadoop-server3
192.168.146.184 hadoop-server4
192.168.146.185 hadoop-server5
######注意######如果你们公司是租用的服务器或是使用的云主机(如华为用主机、阿里云主机等)
/etc/hosts里面要配置的是内网IP地址和主机名的映射关系
4.关闭防火墙&
#查看防火墙状态
service iptables status
#关闭防火墙
service iptables stop
#查看防火墙开机启动状态
chkconfig iptables --list
#关闭防火墙开机启动
chkconfig iptables off
前4步用root用户操作,操作完后重启机器
5.ssh免登陆hadoop用户操作
#生成ssh免登陆密钥
#进入到我的home目录
ssh-keygen -t rsa (四个回车)
执行完这个命令后,会生成两个文件id_rsa(私钥)、id_rsa.pub(公钥)
将公钥拷贝到要免密登陆的目标机器上
ssh-copy-id&hadoop-server2
6.安装JDK,配置环境变量等root用户操作
vim /etc/proflie
export JAVA_HOME=/usr/java/jdk1.7.0_65
export HADOOP_HOME=/itcast/hadoop-2.4.1
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
source /etc/profile
集群规划:
安装软件 运行进程
hadoop-server1 192.168.146.181:jdk、hadoop
namenode resourcemanage
DFSZKFailoverController(zkfc)
hadoop-server2 192.168.146.182:jdk、hadoop
namenode resourcemanage
DFSZKFailoverController(zkfc)
hadoop-server3 192.168.146.183:jdk、hadoop、zookeeper
datanode nodemanage
journalnode QuorumPeerMain
hadoop-server4 192.168.146.184:jdk、hadoop、zookeeper
datanode nodemanage
journalnode QuorumPeerMain
hadoop-server5 192.168.146.185:jdk、hadoop、zookeeper
datanode nodemanage
journalnode QuorumPeerMain
安装步骤:
1.安装配置zooekeeper集群(在hadoop-server3上)
tar -zxvf zookeeper-3.4.5.tar.gz -C /home/hadoop/app/
1.2修改配置
cd&/home/hadoop/app/zookeeper-3.4.5/conf/
cp zoo_sample.cfg zoo.cfg
vim zoo.cfg
修改:dataDir=/home/hadoop/app/zookeeper-3.4.5/data
在最后添加:
server.1=hadoop-server3:
server.2=hadoop-server4:
server.3=hadoop-server5:
然后创建一个tmp文件夹
mkdir&/home/hadoop/app/zookeeper-3.4.5/data
再创建一个空文件
touch&/home/hadoop/app/zookeeper-3.4.5/data/myid
最后向该文件写入ID
echo 1 &&/home/hadoop/app/zookeeper-3.4.5/data/myid
1.3将配置好的zookeeper拷贝到其他节点
scp -r&/home/hadoop/app/zookeeper-3.4.5/ weekend06:/home/hadoop/app/
scp -r&/home/hadoop/app/zookeeper-3.4.5/ weekend07:/home/hadoop/app/
注意:修改hadoop-server4、hadoop-server5对应/home/hadoop/app/zookeeper-3.4.5/data/myid内容
hadoop-server4:
echo 2 &&/home/hadoop/app/zookeeper-3.4.5/data/myid
hadoop-server5:
echo 3 &&/home/hadoop/app/zookeeper-3.4.5/data/myid
2.安装配置hadoop集群(在hadoop-server1上操作)
tar -zxvf hadoop-2.4.1.tar.gz -C /weekend/
2.2配置HDFS(hadoop2.0所有的配置文件都在$HADOOP_HOME/etc/hadoop目录下)
#将hadoop添加到环境变量中
vim /etc/profile
export JAVA_HOME=/hadoop/home/app/jdk1.7.0_55
export HADOOP_HOME=/home/hadoop/app/hadoop-2.4.1
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin
#hadoop2.0的配置文件全部在$HADOOP_HOME/etc/hadoop下
cd /home/hadoop/app/hadoop-2.4.1/etc/hadoop
2.2.1修改hadoo-env.sh
export JAVA_HOME=/home/hadoop/app/jdk1.7.0_55
2.2.2修改core-site.xml
&configuration&
&!-- 指定hdfs的nameservice为ns1 --&
&property&
&name&fs.defaultFS&/name&
&value&hdfs://ns1/&/value&
&/property&
&!-- 指定hadoop临时目录 --&
&property&
&name&hadoop.tmp.dir&/name&
&value&/home/hadoop/app/hadoop-2.4.1/tmp&/value&
&/property&
&!-- 指定zookeeper地址 --&
&property&
&name&ha.zookeeper.quorum&/name&
&value&hadoop-server3:2181,hadoop-server3:2181,hadoop-server3:2181&/value&
&/property&
&/configuration&
2.2.3修改hdfs-site.xml
&configuration&
&!--指定hdfs的nameservice为ns1,需要和core-site.xml中的保持一致 --&
&property&
&name&dfs.nameservices&/name&
&value&ns1&/value&
&/property&
&!-- ns1下面有两个NameNode,分别是nn1,nn2 --&
&property&
&name&dfs.ha.namenodes.ns1&/name&
&value&nn1,nn2&/value&
&/property&
&!-- nn1的RPC通信地址 --&
&property&
&name&dfs.namenode.rpc-address.ns1.nn1&/name&
&value&hadoop-server1:9000&/value&
&/property&
&!-- nn1的http通信地址 --&
&property&
&name&dfs.namenode.http-address.ns1.nn1&/name&
&value&hadoop-server1:50070&/value&
&/property&
&!-- nn2的RPC通信地址 --&
&property&
&name&dfs.namenode.rpc-address.ns1.nn2&/name&
&value&weekend02:9000&/value&
&/property&
&!-- nn2的http通信地址 --&
&property&
&name&dfs.namenode.http-address.ns1.nn2&/name&
&value&hadoop-server2:50070&/value&
&/property&
&!-- 指定NameNode的元数据在JournalNode上的存放位置 --&
&property&
&name&dfs.namenode.shared.edits.dir&/name&
&value&qjournal://hadoop-server3:8485;hadoop-server4:8485;hadoop-server5:8485/ns1&/value&
&/property&
&!-- 指定JournalNode在本地磁盘存放数据的位置 --&
&property&
&name&dfs.journalnode.edits.dir&/name&
&value&/home/hadoop/app/hadoop-2.4.1/journaldata&/value&
&/property&
&!-- 开启NameNode失败自动切换 --&
&property&
&name&dfs.ha.automatic-failover.enabled&/name&
&value&true&/value&
&/property&
&!-- 配置失败自动切换实现方式 --&
&property&
&name&dfs.client.failover.proxy.provider.ns1&/name&
&value&org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider&/value&
&/property&
&!-- 配置隔离机制方法,多个机制用换行分割,即每个机制暂用一行--&
&property&
&name&dfs.ha.fencing.methods&/name&
shell(/bin/true)
&/property&
&!-- 使用sshfence隔离机制时需要ssh免登陆 --&
&property&
&name&dfs.ha.fencing.ssh.private-key-files&/name&
&value&/home/hadoop/.ssh/id_rsa&/value&
&/property&
&!-- 配置sshfence隔离机制超时时间 --&
&property&
&name&dfs.ha.fencing.ssh.connect-timeout&/name&
&value&30000&/value&
&/property&
&/configuration&
2.2.4修改mapred-site.xml
&configuration&
&!-- 指定mr框架为yarn方式 --&
&property&
&name&mapreduce.framework.name&/name&
&value&yarn&/value&
&/property&
&/configuration&
2.2.5修改yarn-site.xml
&configuration&
&!-- 开启RM高可用 --&
&property&
&& &name&yarn.resourcemanager.ha.enabled&/name&
&& &value&true&/value&
&/property&
&!-- 指定RM的cluster id --&
&property&
&& &name&yarn.resourcemanager.cluster-id&/name&
&& &value&yrc&/value&
&/property&
&!-- 指定RM的名字 --&
&property&
&& &name&yarn.resourcemanager.ha.rm-ids&/name&
&& &value&rm1,rm2&/value&
&/property&
&!-- 分别指定RM的地址 --&
&property&
&& &name&yarn.resourcemanager.hostname.rm1&/name&
&& &value&hadoop-server1&/value&
&/property&
&property&
&& &name&yarn.resourcemanager.hostname.rm2&/name&
&& &value&hadoop-server2&/value&
&/property&
&!-- 指定zk集群地址 --&
&property&
&& &name&yarn.resourcemanager.zk-address&/name&
&&&&value&hadoop-server3:2181,hadoop-server4:2181,hadoop-server5:2181&/value&
&/property&
&property&
&& &name&yarn.nodemanager.aux-services&/name&
&& &value&mapreduce_shuffle&/value&
&/property&
&/configuration&
2.2.6修改slaves(slaves是指定子节点的位置)
hadoop-server3
hadoop-server4
hadoop-server5
2.2.7配置免密码登陆
#首先要配置hadoop-server1到hadoop-server2、hadoop-server3、hadoop-server4、hadoop-server5的免密码登陆
#在hadoop-server1上生产一对钥匙
ssh-keygen -t rsa
#将公钥拷贝到其他节点,包括自己
ssh-coyp-id&hadoop-server1
ssh-coyp-id&hadoop-server2
ssh-coyp-id&hadoop-server3
ssh-coyp-id&hadoop-server4
ssh-coyp-id&hadoop-server5
#注意:resourcemanager到nodemanager要配置免密登录
#注意:两个namenode之间要配置ssh免密码登陆,别忘了配置hadoop-server2到hadoop-server1的免登陆
在hadoop-server2上生产一对钥匙
ssh-keygen -t rsa
ssh-coyp-id -i&hadoop-server1
2.4将配置好的hadoop拷贝到其他节点
scp -r /home/hadoop/app/hadoop-2.4.1/ hadoop@hadoop-server2:/home/hadoop/app/
scp -r /home/hadoop/app/hadoop-2.4.1/ hadoop@hadoop-server3:/home/hadoop/app/
scp -r /home/hadoop/app/hadoop-2.4.1/ hadoop@hadoop-server4:/home/hadoop/app/
scp -r /home/hadoop/app/hadoop-2.4.1/ hadoop@hadoop-server5:/home/hadoop/app/
###注意:严格按照下面的步骤
2.5启动zookeeper集群(分别在hadoop-server3、hadoop-server4、hadoop-server5上启动zk)
cd /home/hadoop/app/zookeeper-3.4.5/bin/
./zkServer.sh start
#查看状态:一个leader,两个follower
./zkServer.sh status
2.6启动journalnode(分别在在hadoop-server3、hadoop-server4、hadoop-server5上执行)
cd /home/hadoop/app/hadoop-2.4.1
sbin/hadoop-daemon.sh start journalnode
#运行jps命令检验,hadoop-server3、hadoop-server4、hadoop-server5上多了JournalNode进程
2.7格式化HDFS
#在hadoop-server1上执行命令:
hdfs namenode -format
#格式化后会在根据core-site.xml中的hadoop.tmp.dir配置生成个文件,这里我配置的是/home/hadoop/app/hadoop-2.4.1/tmp,然后将/home/hadoop/app/hadoop-2.4.1/tmp拷贝到hadoop-server2的/home/hadoop/app/hadoop-2.4.1/下。
scp -r tmp/&hadoop-server2:/home/hadoop/app/hadoop-2.4.1/
##也可以这样,在hadoop-server2上执行命令:建议hdfs namenode -bootstrapStandby
2.8格式化ZKFC(在hadoop-server1上执行即可)
hdfs zkfc -formatZK
2.9启动HDFS(在hadoop-server1上执行)
sbin/start-dfs.sh
2.10启动YARN(#####注意#####:是在hadoop-server1上执行start-yarn.sh)
sbin/start-yarn.sh
在hadoop-server2上启动 yyarn-daemon.sh start rescourcemanager
到此,hadoop-2.4.1配置完毕,可以统计浏览器访问:
http://192.168.146.181:50070
NameNode 'hadoop-server1:9000' (active)
http://192.168.146.182:50070
NameNode 'hadoop-server2:9000' (standby)
验证HDFS HA
首先向hdfs上传一个文件
hadoop fs -put /etc/profile /profile
hadoop fs -ls /
然后再kill掉active的NameNode
kill -9 &pid of NN&
通过浏览器访问:http://192.168.146.182:50070
NameNode 'hadoop-server2:9000' (active)
这个时候hadoop-server2上的NameNode变成了active
在执行命令:
hadoop fs -ls /
-rw-r--r-- & 3 root supergroup & & & -24 15:36 /profile
刚才上传的文件依然存在!!!
手动启动那个挂掉的NameNode
sbin/hadoop-daemon.sh start namenode
通过浏览器访问:http://192.168.146.181:50070
NameNode 'hadoop-server1:9000' (standby)
验证YARN:
运行一下hadoop提供的demo中的WordCount程序:
hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.4.1.jar wordcount /profile /out
OK,大功告成!!!
测试集群工作状态的一些指令 :
bin/hdfs dfsadmin -report &查看hdfs的各节点状态信息
bin/hdfs haadmin -getServiceState nn1 &获取一个namenode节点的HA状态
sbin/hadoop-daemon.sh start namenode &单独启动一个namenode进程
./hadoop-daemon.sh start zkfc & 单独启动一个zkfc进程
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:131452次
积分:1586
积分:1586
排名:千里之外
原创:45篇
转载:21篇
评论:18条
(2)(1)(2)(1)(1)(1)(2)(5)(1)(1)(3)(1)(1)(2)(1)(3)(2)(1)(1)(4)(3)(2)(2)(3)(2)(1)(3)(1)(11)(2)主题帖子积分
注册会员, 积分 68, 距离下一级还需 132 积分
注册会员, 积分 68, 距离下一级还需 132 积分
学习,谢谢楼主分享
主题帖子积分
中级会员, 积分 398, 距离下一级还需 602 积分
中级会员, 积分 398, 距离下一级还需 602 积分
收藏啦,辛苦啦楼主
主题帖子积分
中级会员, 积分 840, 距离下一级还需 160 积分
中级会员, 积分 840, 距离下一级还需 160 积分
辛苦。楼主,学习了
主题帖子积分
注册会员, 积分 81, 距离下一级还需 119 积分
注册会员, 积分 81, 距离下一级还需 119 积分
好~~~~~~~~~~~~~~~
主题帖子积分
新手上路, 积分 26, 距离下一级还需 24 积分
新手上路, 积分 26, 距离下一级还需 24 积分
我用hive2.0 整合 hbase1.1.4或者hbase1.2.1都不行啊,只要执行需要mapreduce的sql就hiveserver2直接挂掉了,但是bin/hive,cli模式下就不会,不知道什么原因
主题帖子积分
中级会员, 积分 689, 距离下一级还需 311 积分
中级会员, 积分 689, 距离下一级还需 311 积分
zookeeper的东西,学习了!
主题帖子积分
注册会员, 积分 144, 距离下一级还需 56 积分
注册会员, 积分 144, 距离下一级还需 56 积分
学习,谢谢楼主分享
经常参与各类话题的讨论,发帖内容较有主见
经常帮助其他会员答疑
活跃且尽责职守的版主
为论坛做出突出贡献的会员
积极上进,爱好学习
站长推荐 /6
about云|新出视频,openstack零基础入门,解决你ping不通外网难题
云计算hadoop视频大全(新增 yarn、flume|storm、hadoop一套视频
视频资料大优惠
大数据零基础由入门到实战
阶段1:hadoop零基础入门基础篇
阶段2:hadoop2入门
阶段3:大数据非hadoop系列课程
阶段4:项目实战篇
阶段5:大数据高级系列应用课程
阶段6:工作实用系列教程
等待验证会员请验证邮箱
新手获取积分方法
Powered by}

我要回帖

更多关于 yarn和zookeeper 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信