Cloudera Management Service角色介绍
Cloudera Management Service角色介绍
Cloudera Management Service使用一组角色将各种管理功能实现:
Activity Monitor
:收集有关MapReduce服务运行的活动的信息。默认情况下不添加此角色Host Monitor
:收集有关主机的运行状况和度量标准信息Service Monitor
:从YARN和Impala服务中收集有关服务和活动信息的健康和度量信息Event Server
:汇总相关的Hadoop事件并使它们可用于警报和搜索Alert Publisher
:为某些类型的事件生成并提供警报Reports Manager
:生成报告,以提供有关用户,用户组和目录的磁盘利用率,用户和YARN池以及HBase表和名称空间处理活动的历史视图
为了实现可伸缩性(例如,在大型部署中,将监视角色放在各自的主机上很有必要)和隔离,Cloudera Manager单独管理每个角色,而不是作为Cloudera Manager Server的一部分。
此外,对于某些版本的Cloudera Enterprise许可证,Cloudera Management Service为Cloudera Navigator提供了Navigator Audit Server和Navigator Metadata Server角色。
详细介绍
如上图所示,我将所有CDH服务都放在一个节点中,并且全部由一个CM Agent管理,这样可以减少每个组件之间的连接线,以方便阅读。
在深入介绍这个图之前,先解释一下图中各个组件的具体作用。
CM Server
它是Cloudera Manager的重要组成部分,它主要有以下作用:
- 将集群的运行状态保存到数据库
- 将每个组件的配置信息保存到数据库
- 提供Cloudera Manager API
- 提供Cloudera Manager Web UI
- 管理Cloudera Manager Agent进程的心跳
- 与各种Cloudera Management Services进行通信以提供以下功能:
- 生成告警信息
- 告警
- 显示图表
- 触发命令
- etc…
CM Agent
每个受Cloudera Manager管理的节点上都会有这个服务,它的主要作用是:
- 通过supervisord启动或停止进程
- 解压缩配置并在每个主机上部署
- 触发安装
- 监控主机
Service Monitor (SMON)
它的主要作用是:
- 收集有关服务的健康状况和指标信息,并在CM的Web UI上进行展示。
- 从YARN服务中收集活动信息,以便在CM的Web UI上显示YARN的作业列表。
- 从Impala服务中收集活动信息,以便在CM的Web UI上显示Impala的作业列表。
Host Monitor (HMON)
它的主要作用是:
- 收集有关主机的健康状况和指标信息,并在CM的Web UI上进行展示。
现在让我们回到之前那张图来看看服务之间具体如何通信以及工作的。
你可以看到在每个运行CDH组件的主机上都会安装CM agent,这些主机都会受Cloudera Manager管理。agent会跟踪主机上运行的所有进程比如NameNode,ResourceManager,JobHistory Server等。这是通过supervisord来实现的,supervisord是Cloudera Manager集成的第三方组件,讨论supervisord超过了本文的范围,具体参考:http://supervisord.org/introduction.html
默认每15秒CM agent会向CM server发送一次心跳,这样CM server就会一直知道这些主机上发生了什么。例如,在某些主机上触发的诸如启动,停止或重启服务之类的动作将作为心跳的一部分发送到CM服务器,CM会将这些信息记录更新到后端的数据库,同时会发送新的指令到agent以告诉其下一步要做什么。
CM server会将所有的数据都保存到数据库中,包括每个组件的配置,每个服务和主机的状态等。大多数CM/CDH用户都会使用MySQL,PostgreSQL或Oracle作为后端的数据库,因为这几个都是被广泛使用的关系型数据库。
CM agent还会定期将主机和服务状态发送到Host Monitor和Service Monitor,这样CM就可以记录健康状态并在其Web UI上显示。如果检测到任何异常状态,CM中会触发告警并通知用户。
还没有评论,来说两句吧...