首页 > 其他 > 详细

Ambari Agent Command分析

时间:2017-05-11 16:51:15      阅读:604      评论:0      收藏:0      [点我收藏+]

一、概述:

根据 Ambari Server 架构文章中的介绍,由于 Ambari Server 和 Ambari Agent 之间是通过 HTTP 短连接进行通信,所以 Server 无法把需要执行的 Command,直接推送给 Agent,而是需要把命令存储在 ActionQueue 中,

然后 Agent 通过定期发送 Heartbeat 请求,把 Command 拉过去执行,并通过下次的 Heartbeat 请求,返回执行结果。下面简单分析一下 Command 的处理过程:

二、Agent Command 类型

  • REGISTRATION_COMMAND:注册指令
  • STATUS_COMMAND:汇报状态
  • EXECUTION_COMMAND:执行任务
  • CANCEL_COMMAND:取消任务
  • ALERT_DEFINITION_COMMAND:更新 Alert 定义
  • ALERT_EXECUTION_COMMAND:立即执行一个 Alert

三、Request 处理逻辑

时机:用户触发了一个操作服务/组件的操作

1、计算依赖,生成 Command,并保存到数据库
2、定期从数据库加载 Command,并添加到 ActionQueue
3、心跳逻辑:
· 把 ActionQueue 中的所有 Command 下发给 Agent
· 根据 Agent 的汇报,处理 Request 的结果

技术分享

 

技术分享

 

技术分享

 

技术分享

 

Ambari Agent Command分析

原文:http://www.cnblogs.com/basenet855x/p/6841488.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!