yanr和kafka在整个hadoop中是一个怎样的角色?以及各个组件之间是否存在父子关系

请问下老师,
1、yanr和kafka在整个hadoop集群中是一个怎么的角色,对于整个集群来说起到一个什么作用?
2、知道yanr是作为资源分配的 它是怎么分配给hdfs资源的?
3、yanr、kafka和zookeeper之间有什么最用关系?是yanr和kafka受zookeeper控制吗?
4、kafka和hdfs有什么作用关系?
5、老师有一个整个集群的工作流程图吗 ,各个部件的作用关系的思维导图,有些地方模糊不清楚!

fish - Hadooper

赞同来自:

问题中是不是有打字错误?这里所指的yanr应该是Yarn对吧?   1. Yarn和kafka在整个hadoop集群中是一个怎么的角色,对于整个集群来说起到一个什么作用? Yarn是集群的资源管理系统,在Hadoop集群(确切的说是Hadoop上的任务)中起到资源(内存、CPU)分配的作用。任何一个分布式程序执行时都需要从系统申请资源,Yarn就是充当资源的协调者的角色。 Kafka是消息队列,它跟Hadoop不是紧耦合的关系,只不过在实际项目中经常会一起使用。Kafka是个消息队列,在由多种方案组成的数据处理系统中,数据的产生,处理,通常由不同的系统充当。比如,数据产生于web service,而数据的处理,需要在Hadoop或者Spark中进行,此时就需要一个工具,可以将需要处理的数据从源头搬移到处理的系统中,Kafka就是这么个数据搬运渠道的角色。   2. 知道yarn是作为资源分配的 它是怎么分配给hdfs资源的? Yarn只负责计算过程中的资源管理,不负责HDFS的资源。HDFS的资源主要是存储资源,由NameNode统一管理。 3. Yarn、kafka和zookeeper之间有什么最用关系?是Yarn和kafka受zookeeper控制吗? Yarn在最开始的实现时,服务节点中ResourceManager为单机模式,那个时候,不需要借助Zookeeper也能正常提供服务。后来随着应用的发展,对于服务的高可用性有了更多的要求,出现了所谓ResourceManagerHA的方案,这里的HA(High Availability),就出现了两个RM同时为集群提供服务的情况,当出现这种两个服务共同做一件事情的时候,就需要一个方案来解决两个服务(RM)之间信息同步以及工作协调的问题,此时ZooKeeper就是作为这个中间的协调机制,出现在方案中(可以把它在这里简单理解为分布式锁)。 至于Kafka,其中也是多Broker的结构,多个Broker之间有很多信息需要同步,比如选择Partition主备份、主Broker挂球识别等需求,也是多服务之间需要互相感知及通信,于是又用到了Zookeeper。   Zookeeper谁也控制不了,只不过是这些分布式服务需要用到分布式锁、同步等服务时,把它拿了过来。   4、kafka和hdfs有什么作用关系? HDFS是分布式存储,Kafka是个消息队列。 如果真要扯上关系,可以用上面关于消息产生、运输、处理的例子。消息可能产生于业务端,用Kafka运输,然后存到HDFS里面,供后面使用Hadoop MR或者Spark进行处理。   5、老师有一个整个集群的工作流程图吗 ,各个部件的作用关系的思维导图,有些地方模糊不清楚! 你看下面这个图是不是差不多能表达意思:
image.png
 

要回复问题请先登录注册